```
def calc_shor_ema(prices):。
ema = []。
ema.apped(prices[0])。
for i i rage(1, le(prices)):。
ema.apped((2 / 13) prices[i] + (11 / 13) ema[-1])。
reur ema。
```
计算长期移动平均线
长期移动平均线通常使用26天的数据来计算:。
```
def calc_log_ema(prices):。
ema = []。
ema.apped(prices[0])。
for i i rage(1, le(prices)):。
ema.apped((2 / 27) prices[i] + (25 / 27) ema[-1])。
reur ema。
```
计算DIF线
DIF线是短期移动平均线和长期移动平均线之间的差异:。
```
def calc_dif(prices):。
shor_ema = calc_shor_ema(prices)。
log_ema = calc_log_ema(prices)。
dif = []。
for i i rage(le(prices)):。
dif.apped(shor_ema[i] - log_ema[i])。
reur dif。
```
计算DEA线
DEA线是DIF线的9日移动平均线:。
```
def calc_dea(prices):。
dif = calc_dif(prices)。
dea = []。
dea.apped(dif[0])。
for i i rage(1, le(prices)):。
dea.apped((2 / 10) dif[i] + (8 / 10) dea[-1])。
reur dea。
```
计算MACD线
MACD线是DIF线和DEA线之间的差异:。
```
def calc_macd(prices):。
dif = calc_dif(prices)。
dea = calc_dea(prices)。
macd = []。
for i i rage(le(prices)):。
macd.apped((dif[i] - dea[i]) 2)。
reur macd。
```
以上就是MACD指标公式的源代码。在使用时,只需输入股票价格的历史数据即可计算出MACD指标的值。
。标签
MACD指标、公式、源代码、短期移动平均线、长期移动平均线、DIF线、DEA线、MACD线、股票价格、历史数据。。