如何使用PHP计算MACD?

时间:2019-01-22 18:50:35

标签: php binance

我使用Binance中的以下类获得类似的MACD和Signal值:

我从以下位置获得了此代码:

https://github.com/hurdad/doo-forex/blob/master/protected/class/Technical%20Indicators/MACD.php

如何修改类以得出准确的值?

2 个答案:

答案 0 :(得分:0)

您可以使用php-trader lib,请注意,它仅用作CLI。

但这是相当简单的数学运算

  

MACD = EMA26-EMA12

enter image description here

enter image description here

答案 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;}