老師請講(延遲交易) [開拓者 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 是平多倉時間
- 上一篇:請教高手與管理員
- 下一篇:所有的公式都無法編譯,請指標是怎么回事?
相關文章
-
沒有相關內容