閃靈交易代碼問題 [金字塔]
- 咨詢內容:
我想贏一次開倉,而不是虧開倉。
開多:BUY(開多條件 AND 真實系統下單開關=0 AND HOLDING=0,手數,MARKET);//把開關改為0了
開空:BUYSHORT(開空條件 AND 真實系統下單開關=0 AND HOLDING=0,手數,MARKET);//把開關改為0,可為什么交易不了呢。不改的話是有交易信號的。搞不明白。
閃靈的代碼采用RogarZ的,如下。
代碼:
//策略:閃靈交易者系統
//類型:
//版本:1.0
//修訂時間:2012.11.24
//DESIGNED BY ROGARZ
//weibo:http://weibo.com/rogarwahoo
//中間變量
INPUT:N1(9,1,100,1),SS(1,1,100);
VARIABLE:該筆盈虧:=0;模擬持倉:=0,模擬開倉價:=0,模擬平倉價:=0,真實系統下單開關:=0;
LC := REF(CLOSE,1);
RSI:=SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100;//RSI指標默認N1為9
9日收盤價指數平均:REF(EMA(CLOSE,9),1);
19日最高價收盤價平均:REF(EMA(HIGH,19),1);
20日高點:=REF(HHV(H,20),1);
20日低點:=REF(LLV(L,20),1);
手數:=SS;
//交易條件
開多條件:=9日收盤價指數平均>=19日最高價收盤價平均 AND REF(RSI,1)<70;
開空條件:=9日收盤價指數平均<19日最高價收盤價平均 AND REF(RSI,1)>30;
平多條件:=C<20日低點;
平空條件:=C>=20日高點;
//交易系統
//模擬交易模塊
IF 開多條件 AND 模擬持倉=0 THEN BEGIN
模擬開倉價:=CLOSE;//記錄開倉價
模擬持倉:=1;//模擬持倉為1
ENDIF 平多條件 AND 模擬持倉=1 THEN BEGIN
模擬平倉價:=CLOSE;//記錄平倉價
該筆盈虧:=模擬平倉價-模擬開倉價;//在模擬交易模塊中我們只需計算上一筆交易是賺還是虧,在這里我只計算盈虧最后的點數
模擬持倉:=0;//將全局變量*模擬持倉*初始化為0
IF 該筆盈虧>0 THEN BEGIN
真實系統下單開關:=0;//0代表模擬交易上一筆是賺錢的。
模擬開倉價:=0;//將全局變量*模擬開倉價*初始化為0
模擬平倉價:=0;//將全局變量*模擬開倉價*初始化為0
END
IF 該筆盈虧<=0 THEN BEGIN
真實系統下單開關:=1;//1代表模擬交易上一筆是虧錢的。
模擬開倉價:=0;//將全局變量*模擬開倉價*初始化為0
模擬平倉價:=0;//將全局變量*模擬平倉價*初始化為0
END
END
IF 開空條件 AND 模擬持倉=0 THEN BEGIN
模擬開倉價:=CLOSE;//記錄開倉價
模擬持倉:=-1;//模擬持倉為-1
ENDIF 平空條件 AND 模擬持倉=-1 THEN BEGIN
模擬平倉價:=CLOSE;//記錄平倉價
該筆盈虧:=模擬開倉價-模擬平倉價;//在模擬交易模塊中我們只需計算上一筆交易是賺還是虧,在這里我只計算盈虧最后的點數
模擬持倉:=0;//將全局變量*模擬持倉*初始化為0
IF 該筆盈虧>0 THEN BEGIN
真實系統下單開關:=0;//0代表模擬交易上一筆是賺錢的。
模擬開倉價:=0;//將全局變量*模擬開倉價*初始化為0
模擬平倉價:=0;//將全局變量*模擬開倉價*初始化為0
END
IF 該筆盈虧<=0 THEN BEGIN
真實系統下單開關:=1;//1代表模擬交易上一筆是虧錢的。
模擬開倉價:=0;//將全局變量*模擬開倉價*初始化為0
模擬平倉價:=0;//將全局變量*模擬開倉價*初始化為0
END
END
//真實下單模塊
平空:SELLSHORT(平空條件 AND HOLDING<0,手數,MARKET);
平多:SELL(平多條件 AND HOLDING>0,手數,MARKET);
開多:BUY(開多條件 AND 真實系統下單開關=1 AND HOLDING=0,手數,MARKET);
開空:BUYSHORT(開空條件 AND 真實系統下單開關=1 AND HOLDING=0,手數,MARKET); - 金字塔客服: RogarZ 前輩你來幫我看看吧。謝謝了
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 1145508240 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容