[求助]關于止盈止損單的開倉手數問題。 [金字塔]
- 咨詢內容:
此主題相關圖片如下:qq圖片20140318094929.jpg
如圖,兩線交叉成型做單,平空與開多條件同,平多與開空條件同。根據軟件例子編的止盈止損策略,加上了限制開倉手數。VARIABLE:kdss=0,kkss=0;發現貌似開多(平多),與開空(平空)各只開一次,然后沒交易了,跟設想的每個波段交易一次想法不同。錯誤在哪里?及如何改呢?
A1:stkindi('','ND',0,22,45);A2:=stkindi('','XD',0,17,0);
BUY1:=A1>A2;SELL1:=A1<A2;
ZSDS:=3; {止損點數}//以下變量用于移動止盈,,移動止盈只能保證你盡可能穩健盈利,卻不能保證盈利最大化,如果不想使用,可是將總開關設置為0VARIABLE:YDZY=1; {移動止盈總開關,1為開,0為關}VARIABLE:HIGHPRICE=0,LOWPRICE=0; {保存開倉后的最高價、最低價}VARIABLE:DHCDS=3,KHCDS=3; {多、空單回撤點數}VARIABLE:DYLDS=7,KYLDS=7; {多、空單盈利點數,當盈利點數達到這個標準后,如果回撤達到上面的參數值就平倉}VARIABLE:Z3B1:=1; {賺3保1開關}VARIABLE:kdss=0,kkss=0;{開多開空次數}
//持有空單IF HOLDING<0 THEN BEGIN IF BUY1 THEN BEGIN //平空單 空平:SELLSHORT(1,0,MARKET),ORDERQUEUE; END //止損 IF C-ENTERPRICE>=ZSDS THEN BEGIN 空損:SELLSHORT(1,0,MARKET),ORDERQUEUE; END //移動止盈 IF YDZY=1 THEN BEGIN //每周期判斷是否創新低 IF L<LOWPRICE THEN BEGIN LOWPRICE:=L; END //如果盈利超過10點之后回撤達到3點,就平倉,保住盈利 IF ENTERPRICE-LOWPRICE>=KYLDS THEN BEGIN IF L-LOWPRICE>=KHCDS THEN BEGIN //回撤超過3點 空贏:SELLSHORT(1,0,MARKET); END END END //賺3保1 IF Z3B1=1 THEN BEGIN IF ENTERPRICE-LOWPRICE>=3 THEN BEGIN IF ENTERPRICE-L<=1.2 THEN BEGIN 空保:SELLSHORT(1,0,MARKET); END END ENDEND
//開多單
IF HOLDING>=0 AND TIME<143000 AND kdss=0 THEN BEGIN IF BUY1 THEN BEGIN 多開:BUY(1,1,MARKET); HIGHPRICE:=ENTERPRICE; //將開倉價保存到最高價 kdss:=1; END END //持有多單IF HOLDING>0 THEN BEGIN IF SELL1 THEN BEGIN {平多單} 多平:SELL(1,0,MARKET),ORDERQUEUE; END //多單管理 //止損 IF ENTERPRICE-C>=ZSDS THEN BEGIN 多損:SELL(1,0,MARKET),ORDERQUEUE; END //移動止盈 IF YDZY=1 THEN BEGIN //每周期判斷是否創新高 IF H>HIGHPRICE THEN BEGIN HIGHPRICE:=H; END //如果盈利超過10點之后回撤達到3點,就平倉,保住盈利 IF HIGHPRICE-ENTERPRICE>=DYLDS THEN BEGIN IF HIGHPRICE-H>=DHCDS THEN BEGIN //回撤超過3點 多贏:SELL(1,0,MARKET); END END END //賺3保1 IF Z3B1=1 THEN BEGIN IF HIGHPRICE-ENTERPRICE>=3 THEN BEGIN IF H-ENTERPRICE<=1.2 THEN BEGIN 多保:SELL(1,0,MARKET); END END ENDEND//開空單IF HOLDING>=0 AND TIME<143000 AND kkss=0 THEN BEGIN IF SELL1 THEN BEGIN 空開:BUYSHORT(1,1,MARKET); LOWPRICE:=ENTERPRICE; kkss:=1; END END
- 金字塔客服:
在平倉語句里面把你的kdss和kkss都重新賦值為0,你開倉后就一直是1不變動了
- 用戶回復:
各段開平止損止盈倉語句都加上了賦值,現在有新一段波段,但沒任何信號了。
此主題相關圖片如下:qq圖片20140318110944.jpg
A1:stkindi('','ND',0,22,45);A2:=stkindi('','XD',0,17,0);
BUY1:=ND>XD and kdss=0;SELL1:=ND<XD and kkss=0;
//空單管理
//持有空單IF HOLDING<0 AND kkss=0 THEN BEGIN IF BUY1 THEN BEGIN //平空單 空平:SELLSHORT(1,0,MARKET),ORDERQUEUE; kkss:=1; END //止損 IF C-ENTERPRICE>=ZSDS AND kkss=0 THEN BEGIN 空損:SELLSHORT(1,0,MARKET),ORDERQUEUE; kkss:=1; END //移動止盈 IF YDZY=1 THEN BEGIN //每周期判斷是否創新低 IF L<LOWPRICE THEN BEGIN LOWPRICE:=L; END //賺3保1 IF Z3B1=1 THEN BEGIN IF ENTERPRICE-LOWPRICE>=3 AND kkss=0 THEN BEGIN IF ENTERPRICE-L<=1.2 THEN BEGIN 空保:SELLSHORT(1,0,MARKET); kkss:=1; END END ENDEND
//如果盈利超過10點之后回撤達到3點,就平倉,保住盈利 IF ENTERPRICE-LOWPRICE>=KYLDS AND kkss=0 THEN BEGIN IF L-LOWPRICE>=KHCDS THEN BEGIN //回撤超過3點 空贏1:SELLSHORT(1,0,MARKET); kkss:=1; END END END
[此貼子已經被作者于2014/3/18 11:11:27編輯過] - 網友回復:
。。。平倉賦值為0啊,你開倉賦值為1,平倉也賦值為1,這個能有信號?
- 網友回復:
都賦值為1,有信號了,但也太多了吧。
此主題相關圖片如下:qq圖片20140318113452.jpg
此主題相關圖片如下:qq圖片20140318113805.jpg
而且,有些本身處于開空條件運行中了,但為什么在不確定的位置中又有新開空倉呢?按理在之前剛達成空條件時已經空一手了的。
此主題相關圖片如下:qq圖片20140318113531.jpg
如何解決? [此貼子已經被作者于2014/3/18 12:02:38編輯過]
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 1145508240 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容