KD1:DYNAINFO( 25)>DYNAINFO( 31)*2;
这个作为买入条件,就是不执行,怎么回事
1.你输出下这2个函数的值,看下计算结果。
2.需要注意的是:这2个函数是动态函数,返回值只有当前最新值。历史K上这2个函数值会和当前最新的值保持一致。 如果最新K是不满足,整个历史K上这个条件都会是否。
我是实盘测量,这个值可以显示,但是数值不断动的
KD1:DYNAINFO( 25)>DYNAINFO( 31)*2;
kk1:DYNAINFO( 31)>DYNAINFO( 25)*2;
pd2:ENTERPRICE+2*MINDIFF;
pk2:ENTERPRICE-2*MINDIFF;
KD:= kd1; //开多条件
PD:= c>=pd2 ; //平多条件
开多:BUY(KD AND HOLDING=0,1,DYNAINFO( 34)); //开多信号
平多:SELL(PD,1,ENTERPRICE+2*MINDIFF);
你代码还有别的地方的错误
buy函数和sell函数的第三个参数是错的。
开多:BUY(KD AND HOLDING=0,1,limit,DYNAINFO( 34));
平多:SELL(PD,1,limit,ENTERPRICE+2*MINDIFF);
限价参数是这样设置的。
但是如果这样写,因为是动态的值,发现有时开仓信号消失了,
结果没有平仓指令。
怎么办
你的这个需求要用后台实现。图表是基于历史数据计算虚拟持仓,而你用动态行情函数参与计算会直接干扰图表的计算结果。出现信号闪烁很正常