[求助]自编ema的问题 (文华财经WH8赢智V8.2)

投资者咨询:[求助]自编ema的问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-7-9 10:15

想用循环来写ema,代码如下,可是图上永远加载不出来nma的值

 

VARIABLE:NUM:0;
NMA:=IF(BARPOS<N+1,C,0);
IF NUM < N THEN
NMA:REF(C,NUM)*(N-NUM)+REF(NMA,1);
NUM:=NUM+1;
NMA;

技术人员回复
日期:2018-7-9 10:29

可以尝试这样修改一下:

 


VARIABLE:NUM:0;
N:=10;
NMA:IF(BARPOS<N+1,C,0);
IF NUM < N &&DAYBARPOS>1 THEN BEGIN
NMA:REF(C,NUM)*(N-NUM)+REF(NMA,1);
NUM:=NUM+1;
END
BB:NUM;
AA:NMA;

投资者咨询:[求助]自编ema的问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-7-9 10:15

 

图片点击可在新窗口打开查看

还是这样哦

技术人员回复
日期:2018-7-9 10:43

 与您编写有关,IF条件是NUM小于N

 

或者您具体是需要实现什么样的思路呢?

投资者咨询:[求助]自编ema的问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-7-9 10:15

 我就是想用循环写一个ema,想文华自带的dkx指标一样,只不过我想让N能自己定义。在此基础上再做其他运算,所以不能直接调用EMA等函数

 

A:=(3*C+L+O+H)/6;//3倍收盘价与最高价、最低价、开盘价之和的均值。
B:(20*A+19*REF(A,1)+18*REF(A,2)+17*REF(A,3)+16*REF(A,4)+15*REF(A,5)+14*REF(A,6)+13*REF(A,7)+12*REF(A,8)+11*REF(A,9)+10*REF(A,10)+9*REF(A,11)+8*REF(A,12)+7*REF(A,13)+6*REF(A,14)+5*REF(A,15)+4*REF(A,16)+3*REF(A,17)+2*REF(A,18)+REF(A,20))/210;
//对A值做加权均值计算。

技术人员回复
日期:2018-7-9 11:24

 不明白您的思路,您可以提供一下具体的均线的算法公式

 

我们帮您分析编写

 

 

投资者咨询:[求助]自编ema的问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-7-9 10:15

 您能帮我把这个dkx指标写成用if循环的吗?这个周期是20固定的,我想能编辑周期。

能实现这个功能的话我后面都能自己写了。多谢多谢

技术人员回复
日期:2018-7-9 11:41

 dkx算法可以使用EMA2替代,支持直接修改周期参数的:

 

A:=(3*C+L+O+H)/6;//3倍收盘价与最高价、最低价、开盘价之和的均值。
EMA2(A,20);

投资者咨询:[求助]自编ema的问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-7-9 10:15
 我想再做其他运算,所以不想直接调用EMA2等函数。。。
技术人员回复
日期:2018-7-9 13:34

因为模型编写需要具体的算法 

 

核实一下,具体需要什么样的运算呢?

 

以5楼提供的DKX指标为例,本身不涉及引用自身的写法,不需要使用全局变量的,只能一个一个写

 

A:=(3*C+L+O+H)/6;
DK:(N*ABS+(N-1)*REF(A,1)+(N-2)*A ....)/(20+19+.....);