全局變量怎樣控制連續發單?
作者:開拓者 TB 來源:cxh99.com 發布時間:2016年04月07日
- 咨詢內容:
//------------------------------------------------------------------------
// 簡稱: 1spgpA0118b1to2kx
// 名稱:
// 類別: 公式應用
// 類型: 用戶應用
// 輸出:
//------------------------------------------------------------------------
Params
Numeric offSet(1); // 委托價格偏移,為了保證成交
Numeric BeforeMins(5); // 收盤前幾分鐘開始操作
Vars
Numeric HasSendOrderk1(0);//開倉1標志,初始值為0
Numeric HasSendOrderp11(0);//平倉1標志,初始值為0
Numeric HasSendOrderp12(0);//平倉2標志,初始值為0
Begin
bcon2=Time>=0.0902&&Time<=0.1456
;
If(date<20161230 )
{
{
If(BarStatus == 0)
{
HasSendOrderp11 = 0;
SetGlobalVar(11,HasSendOrderp11);
}Else
{
HasSendOrderp11 = GetGlobalVar(11);
}
If
( bcon1 &&
BarStatus == 2 &&
HasSendOrderk1 == 0&&
A_BuyPosition==0 )
{
A_SendOrder(Enum_Buy,Enum_Entry,2,Q_AskPrice+MinMove*PriceScale*2);
HasSendOrderk1 = 1;
SetGlobalVar(1,HasSendOrderk1);
}
If
(A_BuyPosition > 0&&
BarStatus == 2 &&
HasSendOrderp11 == 0&&
Q_BidPrice>=A_BuyAvgPrice+MinMove*PriceScale*2) //首次平多單
{
A_SendOrder(Enum_Sell,Enum_Exit,1,Q_BidPrice-MinMove*PriceScale*2);
HasSendOrderp11 = 1;
SetGlobalVar(11,HasSendOrderp11);
}
If
(A_BuyPosition > 0&&
BarStatus == 2 &&
HasSendOrderp12 == 0&&
Q_BidPrice>=A_BuyAvgPrice+MinMove*PriceScale*5) //二次平多單
{
A_SendOrder(Enum_Sell,Enum_Exit,1,Q_BidPrice-MinMove*PriceScale*2);
HasSendOrderp12 = 1;
SetGlobalVar(12,HasSendOrderp12);
HasSendOrderk1 = 0;
SetGlobalVar(1,HasSendOrderk1);
}
}
}
End
首次平倉仍然是連續發單,應該怎樣寫?請教老師
- TB技術人員:
TB公式指南以及F1聯機幫助的策略進階里的都有模板的,可以先參考一下。