MICD(异同离差动力指数)

MICD 异同离差动力指数
如果股票价格能始终向上攀升则该指数就能不断向上发展;反之如果股票价格始终在向下,则该指数始终保持在 0 线的下方。

计算方法:
MI: 今收 - 昨收;
AMI:MI 的 N1 日指数移动平均;
DIF: 昨日 AMI 的 N2 日移动平均 - 昨日 AMI 的 N3 日移动平均;
MICD:DIF 的 10 日指数移动平均

指标参数:

y1

MI1输出列,$ 表示把字段名转化成字符串

y2

AMI输出列

y3

DIF输出列

y4

MICD1输出列

x

数据列,如收盘

n1

周期 1,如 3

n2

周期 2,如 10

n3

周期 3,如 20


函数代码:


A

B

1

func MICD(A,$y1,$y2,$y3,$y4,$x,n1,n2,n3)

=A.run(${x} - ${x} [-1]:${y1},(${y1}+(n1-1)*${y2}[-1])/n1:${y2},avg(${y2}[-n2:-1])-avg(${y2}[-n3:-1]):${y3},(${y3}+9*${y4}[-1])/10:${y4})

将函数保存在 indicator.splx 中。

举例:

调用脚本计算浦发银行 2024 年的 MICD 指标,n1、n2、n3 分别取 3、10、20。


A

B


5

=call@f("indicator.splx")

登记脚本中的函数

6

计算出源数据

7

=A6.derive(:MI1,:AMI,:DIF,:MICD1)

增加要返回的指标字段

8

=MICD(A7,MI1,AMI,DIF,MICD1, 收盘,3,10,20)

调用函数计算指标

运行效果:

..