#GET函数问题 (文华财经随身行iPhone   5.7.1)

投资者咨询:#GET函数问题 (文华财经随身行iPhone   5.7.1)
来源:文华财经  日期:2019-4-8 14:03
在算法程序里使用#GET函数引用周线数据,在运行过程中偶尔会有错误数据出来,是什么原因?
技术人员回复
日期:2019-4-8 14:10

 #GET是引用模组数据,您是建立了一个周线周期的模组,然后引用该模组的数据,数据不对?

 

您是如何对比认为数据不对的?请配合截图具体说明一下

投资者咨询:#GET函数问题 (文华财经随身行iPhone   5.7.1)
来源:文华财经  日期:2019-4-8 14:03
是的,我周线模组的数据今天一开盘有个数据就是1,另一个是0,可在算法程序运行过程中偶尔会有是1的变成0,0的变成1,是偶尔,像是数据有闪烁一样,查了很久查不出来
技术人员回复
日期:2019-4-8 14:28
复制一下您的模组模型源码,说明下您引用的哪个变量,我们分析一下
投资者咨询:#GET函数问题 (文华财经随身行iPhone   5.7.1)
来源:文华财经  日期:2019-4-8 14:03
K:=BARSLAST(DATE<>REF(DATE,1))+1;
HH1:=HHV(H,K);
HH2:=REF(REF(HHV(H,K),K),K);
AA:=IF(HH1>HH2,HH1-HH2,0);
LL1:=LLV(L,K);
LL2:=REF(REF(LLV(L,K),K),K);
BB:=IF(LL1 Z..SUM(AA,5)/(SUM(AA,5)+SUM(BB,5))*100;//Z值
Z_Y:=REF(Z,1); //昨日Z值
Z_YY:=REF(Z,2); //前日Z值
Z_UP:=IF(Z_Y<=Z_YY && Z>Z_Y || Z>Z_Y,1,0); //Z值转向上
Z_DOWN:=IF(Z_Y>=Z_YY && Z
投资者咨询:#GET函数问题 (文华财经随身行iPhone   5.7.1)
来源:文华财经  日期:2019-4-8 14:03
W_B:=IF(REF(Z_DOWN,2)=1 && REF(Z_UP,1)=1
|| REF(Z,3)=REF(Z,2) && REF(Z_UP,1)=1
,1,0);

W_S:=IF(REF(Z_UP,2)=1 && REF(Z_DOWN,1)=1
|| REF(Z,3)=REF(Z,2) && REF(Z_DOWN,1)=1
,1,0);

W_B_F:IF(W_B=1,1,IF(W_S=1,0,W_B_F)); //用于与算法程序接口
W_S_F:IF(W_S=1,1,IF(W_B=1,0,W_S_F)); //用于与算法程序接口

投资者咨询:#GET函数问题 (文华财经随身行iPhone   5.7.1)
来源:文华财经  日期:2019-4-8 14:03
W_B_F=#Get("周线趋势通道数据","W_B_F",0); //周线趋势通道趋势数据,来自于周线趋势模型输出
W_S_F=#Get("周线趋势通道数据","W_S_F",0); //周线趋势通道趋势数据,来自于周线趋势模型输出,运行周线趋势通道数据模型
技术人员回复
日期:2019-4-8 14:44
 

分析下了一源码,当W_BW_S都为0的时候,取自身值 ,这样可能会是空值

 

可以考虑改为取上一周期的自身值:

 

K:=BARSLAST(DATE<>REF(DATE,1))+1;
HH1:=HHV(H,K);//今天最高价
HH2:=REF(REF(HHV(H,K),K),K);//前天最高价
AA:=IF(HH1>HH2,HH1-HH2,0);
LL1:=LLV(L,K);
LL2:=REF(REF(LLV(L,K),K),K);
BB:=IF(LL1<LL2,LL2-LL1,0);
Z:=SUM(AA,5)/(SUM(AA,5)+SUM(BB,5))*100;//Z值
Z_Y:=REF(Z,1); //昨日Z值
Z_YY:=REF(Z,2); //前日Z值
Z_UP:=IF(Z_Y<=Z_YY && Z>Z_Y || Z>Z_Y,1,0); //Z值转向上
Z_DOWN:=IF(Z_Y>=Z_YY && Z<Z_Y || Z<Z_Y,1,0); //Z值转向下

W_B:IF(REF(Z_DOWN,2)=1 && REF(Z_UP,1)=1
|| REF(Z,3)=REF(Z,2) && REF(Z_UP,1)=1
,1,0);

W_S:IF(REF(Z_UP,2)=1 && REF(Z_DOWN,1)=1
|| REF(Z,3)=REF(Z,2) && REF(Z_DOWN,1)=1
,1,0);

W_B_F:IF(W_B=1,1,IF(W_S=1,0,REF(W_B_F,1))); //用于与算法程序接口
W_S_F:IF(W_S=1,1,IF(W_B=1,0,REF(W_S_F,1))); //用于与算法程序接口