------自己改寫的雙軌道交易系統 ,為神馬回測是0呢 [金字塔]
- 咨詢內容:
不是數據導入的問題 ,因為 其余的系統策略回測沒有問題
代碼如下 ,測試編譯沒有問題
//該模型為簡單示范模型,用戶需根據自己交易經驗,修改完善后再實際應用!!!
//策略:DUAL THRUST
//簡介:Dual Thrust與R-Breaker一樣,曾長期排名 Future Trust雜志最賺錢的策略。
//類型:日內
//周期:
//使用市場:
//詳情介紹網址:http://www.weistock.com/bbs/dispbbs.asp?boardid=10&Id=30283
//修訂時間:2012.11.1
//DESIGNED BY ROGARZ
//中間變量
INPUT:N(16,1,30,1),K1(0.4,0.1,1,0.1),K2(0.8,0.1,1,0.1),NMIN(6,1,10,1),SS(100,100,1000,100);
//INPUT:P1(3,1,5,1),P2(80,10,100,10);{計算最大回撤止損};
VARIABLE:P2=80;
variable:MAXPROFIT:=0;
variable:PROFIT:=0;
variable:DOWNPROFIT:=0;
variable: EX=0;
CYC:=BARSLAST(DATE<>REF(DATE,1))+1;
LHIGH:=CALLSTOCK(STKLABEL,VTHIGH,6,-1);
LLOW:=CALLSTOCK(STKLABEL,VTLOW,6,-1);
LCLOSE:=CALLSTOCK(STKLABEL,VTCLOSE,6,-1);
TOPEN:=VALUEWHEN(CYC=1,OPEN);
HH:=HHV(LHIGH,N);//N日HIGH的最高價
HC:=HHV(LCLOSE,N);//N日CLOSE的最高價
LC:=LLV(LCLOSE,N);//N日CLOSE的最低價
LL:=LLV(LLOW,N);//N日LOW的最低價
MOVING:=MAX(HH-LL,HC-LL);//RANGE
T1:=TIME>=090200 AND TIME<=145000+NMIN*100;
T2:=TIME>=145000+NMIN*100 AND TIME<=150000;
HOLDER:=SS;
幅度:=0;
UP:TOPEN+K1*MOVING;
DOWN:TOPEN-K2*MOVING;
BUYCON:=C>UP AND HOLDING=0 ;
BUYSHORTCON:=C<DOWN AND HOLDING=0 ;
虧跳:=10;
盈跳:=200;
{
多頭浮虧10跳止損條件: (ENTERPRICE-C)>5*MINDIFF();
空頭浮虧10跳止損條件: (C-ENTERPRICE)>5*MINDIFF();
}
//移動動態止損部分
///每天的 開盤的時候 持倉為0 開倉為0
IF TIME =090100 THEN BEGIN
EXTGBDATASET('B',0);//A 代表是否有倉位 b代表是否開過倉位
EXTGBDATASET('A',0);
END
///
//持有空倉的情況
IF HOLDING=0 THEN BEGIN
IF T1 THEN BEGIN
IF BUYCON THEN BEGIN
BUY( EXTGBDATA('B')=0 AND EXTGBDATA('A')=0,HOLDER,MARKET);
EXTGBDATASET('A',1);
EXTGBDATASET('B',1);
END
IF BUYSHORTCON THEN BEGIN
BUYSHORT( EXTGBDATA('B')=0 AND EXTGBDATA('A')=0,HOLDER,MARKET);
EXTGBDATASET('A',-1);
EXTGBDATASET('B',1);
END
END
END
IF HOLDING>0 THEN BEGIN
IF T1 THEN BEGIN
//最高價格 浮虧10跳 止盈操作
//浮虧10跳 止損
IF ( AVGENTERPRICE()-DYNAINFO( 7)>10*MINDIFF) THEN BEGIN
SELL(1,HOLDER,MARKET);
EXTGBDATASET('A',0);
EXTGBDATASET('B',1);
END
//
END
IF T2 THEN BEGIN
SELL(1,HOLDER,MARKET);
EXTGBDATASET('A',0);
EXTGBDATASET('B',0);
END
END
IF HOLDING<0 THEN BEGIN
IF T1 THEN BEGIN
IF ( DYNAINFO( 7)-AVGENTERPRICE()>10*MINDIFF) THEN BEGIN
SELLSHORT(1,HOLDER,MARKET);
EXTGBDATASET('A',0);
EXTGBDATASET('B',1);
END
END
IF T2 THEN BEGIN
SELLSHORT(1,HOLDER,MARKET);
EXTGBDATASET('A',0);
EXTGBDATASET('B',0);
END
END
//交易系統
{
開多:BUY(開多條件 AND T1 AND CYC>1,手數,MARKET);
開空:BUYSHORT(開空條件 AND T1 AND CYC>1,手數,MARKET);
收盤平多:SELL(T2,手數,MARKET);
收盤平空:SELLSHORT(T2,手數,MARKET);
}
當前持倉:HOLDING,COLORGRAY,LINETHICK0;
當前資產:ASSET,NOAXIS,COLORGRAY;//輸出當前資產,但不影響坐標最高最低值
[此貼子已經被作者于2016-11-1 17:13:58編輯過] - 金字塔客服:
你說的回測是0,指的是什么?沒有成交明細?
- 用戶回復:
是的 都是0
- 網友回復:
1.在這個品種k線圖上,右鍵數據,看下是否存在測試時段的數據2.強策略加載到圖表中,看下是否有信號出現
- 網友回復:
已經好了
其實是extgbdata
不能應用到
圖標交易的問題
謝謝各位
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 511411198 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容