我使用Binance中的以下类获得类似的MACD和Signal值:
我从以下位置获得了此代码:
https://github.com/hurdad/doo-forex/blob/master/protected/class/Technical%20Indicators/MACD.php
如何修改类以得出准确的值?
答案 0 :(得分:0)
答案 1 :(得分:-2)
/ * *指数移动平均线(EMA) * * EPA的开始带有第一个数据点。 *之后的每一天: * EMAtoday =α⋅xtoday+(1-α)EMA昨天 * *哪里 *α:代表权重降低程度的系数,介于0和1之间的恒定平滑因子。 * * @参数数组$ numbers * @param int $ n EPA的长度 * @返回指数移动平均值的数组 * /
function exponentialMovingAverage( $numbers, $n)
{
$m = count($numbers);
$α = 2 / ($n + 1);
$EMA = [];
// Start off by seeding with the first data point
$EMA[] = $numbers[0];
// Each day after: EMAtoday = α⋅xtoday + (1-α)EMAyesterday
for ($i = 1; $i < $m; $i++) {
$EMA[] = ($α * $numbers[$i]) + ((1 - $α) * $EMA[$i - 1]);
}
return $EMA;}