老师请讲(延迟交易) [开拓者 TB]
- 咨询内容:
老师您好,请教一下,我想实现的命令是:当初次条件成立时,记录下当前的时间,然后在隔N分钟后判断如果条件依然成立再发出指令,如果N分钟后条件不成立,就不发单,全局变量不太会用,请老师给出较详细的完整代码,谢谢老师。
- TB技术人员:
If(Conditionand GetGlobalVar(18)<900)
{ pdcsj=Q_LastTime*1000000;
SetGlobalVar(18,pdcsj); }
If(Condition And Q_LastTime*1000000-GetGlobalVar(18)>120 And Q_LastTime>0.090001 )
{ Sell(lots,Q_BidPrice+1*MinMove);
}
120秒 2分钟后再交易 - TB客服:
请问为什么是18,而且要<900,pdcsj是自己命的名吧,我是否可以自己改。谢谢老师。
- 网友回复:
以下代码会把午休时间和小结时间算入,如果不想把小结时间算入,建议在一分钟周期上使用nthcon函数进行判断延迟
- Params
- Numeric n(5);
- Vars
- NumericSeries ma1;
- NumericSeries ma2;
-
- NumericSeries aa;
- Begin
- ma1=AverageFC(Close,15);
- ma2=AverageFC(Close,20);
-
- If(CrossOver(ma2,ma1))
- {
- aa=Time*10000;
- }Else
- aa=aa[1];
- If(aa!=0 && Time*10000-aa>=n && ma2>ma1)
- {
- Buy(1,Close);
- }
- Commentary("aa="+Text(aa));
- End
- Params
- 网友回复:
If(Conditionand GetGlobalVar(0)<900)
{ pdcsj=Q_LastTime*1000000;
SetGlobalVar(0,pdcsj); }
If(Condition And Q_LastTime*1000000-GetGlobalVar(0)>120 And Q_LastTime>0.090001 )
{ Sell(lots,Q_BidPrice+1*MinMove);
}
pdcsj 是平多仓时间
- 上一篇:请教高手与管理员
- 下一篇:所有的公式都无法编译,请指标是怎么回事?
相关文章
-
没有相关内容