老師請講(延遲交易) [開拓者 TB]
作者:
開拓者 TB 來源:
cxh99.com 發(fā)布時間:2012年05月28日 點擊數:
【
收藏到本網的會員中心】
- 咨詢內容:
老師您好,請教一下,我想實現的命令是:當初次條件成立時,記錄下當前的時間,然后在隔N分鐘后判斷如果條件依然成立再發(fā)出指令,如果N分鐘后條件不成立,就不發(fā)單,全局變量不太會用,請老師給出較詳細的完整代碼,謝謝老師。
- 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
復制代碼
- 網友回復:
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 是平多倉時間 |