//数据格式
$data = [
[
"min" => "3.00"
"count" => 320
"max" => "93.00"
"avg" => "48.00"
"day" => "03-13"
],
[
"min" => "16.00"
"count" => 989
"max" => "78.00"
"avg" => "47.00"
"day" => "03-14"
],
....
];
$mc = 5;//计算每五天的移动平均值,这个数可以改的
$data = array_values($data);
//计算移动平均值
foreach ($data as $k =>&$v){
$k = $k;
if($k < $mc){
$v['macd'] = 0;
}else{
$v['macd'] = sprintf("%.2f",($sum/$mc));
$sum -= $data[$k-$mc]['avg'] ?? 0;
}
$sum += $v['avg'];
}
return data;
php实现macd(移动平均值)
最新推荐文章于 2026-07-19 10:53:06 发布
本文深入探讨了移动平均值算法的实现细节,通过具体的数据示例展示了如何在一系列数值中计算移动平均值,特别关注了算法在不同数据集上的应用及效果。文中详细解释了移动窗口大小对结果的影响,并提供了实际代码实现。
&spm=1001.2101.3001.5002&articleId=89213337&d=1&t=3&u=97d1e337193e4e7c802db5dfef1a67b7)
1519

被折叠的 条评论
为什么被折叠?



