Vars: stop_loss(0);
iF 符合進場條件 then begin
setposition(部位,價格);
stop_loss=minlist(L,C[1]); // 進場日 K棒的低點 和 昨收取MIN ,即真實低點
end;
if postion=filled and position<>0 and C<stop_loss then setposition(0,market); // 日k下,之後盤中破真實低點 就出場
回測跑出來不太正確,不知道哪裡有問題
再請指點,感謝。
Vars: stop_loss(0);
iF 符合進場條件 then begin
setposition(部位,價格);
stop_loss=minlist(L,C[1]); // 進場日 K棒的低點 和 昨收取MIN ,即真實低點
end;
if postion=filled and position<>0 and C<stop_loss then setposition(0,market); // 日k下,之後盤中破真實低點 就出場
回測跑出來不太正確,不知道哪裡有問題
再請指點,感謝。
Vars: intraBarPersist stop_loss(0);
感謝教授。
我這樣寫跑出來都是尾盤才執行停損,能寫成盤中跌破就出場?
問題出在 stop_loss=minlist(L,C[1]);
日頻率之下,C不可能低於L。
Stop_loss 是進場的時候紀錄當天的低點。(尾盤進場)
這樣隔天開始,C盤中跌破stop_loss就出場,還是日頻率沒辦法這樣執行?
感謝
符合進場條件裡面,必須有position=0才行。沒看到完整進場條件(因為它在決定stop_loss),很難一窺全貌。
了解,感恩
Hello 石頭,
小編補充,建議您可以使用 print 把相關數值印出,會比較容易找出問題原因。
另外當同次運算中有複數個交易指令同時符合時,只會執行第一個。
故有可能是進場條件的 setposition 和 出場條件的 setposition 同時符合,導致系統只執行進場條件中的 setposition。
感謝 虎科大許教授 的熱心回覆。
7 評論