回測還是只交易一 次

  •   98 
  • 最後發表   花花草草  2024 六月 04
花花草草 發文於   2024/05/29

Input: Length(10,"天數");

 

Input: Multiplier(3,"ATR倍數"); 

 

var: v1(0), v2(0);

if currentBar = 1 then begin

 

end;

 

Var: Condition1Flag(close > v1);

 

Var: Condition2Flag(close < v2);

 

if Position <= 0 and filled <= 0 and Condition1Flag then begin

 

    SetPosition(1, MARKET);  // 以市價買進

 

end;

 

 

if Position >= 0 and filled >= 0 and Condition2Flag then begin

 

    SetPosition(-1, MARKET);  // 以市價賣出

 

end;

 

排序方式: 標準 | 最新
虎科大許教授 發文於   2024/05/29

送出委託之後,v1及v2要更新。

  • 按讚來自於
  • 0973555633
花花草草 發文於   2024/05/29
XS小編 發文於   2024/06/04

Hello 花花草草,

 

小編建議您先觀看網站上的教學區教學影片,裡面有XS語法的基礎和應用可以閱覽。

 

if currentBar = 1 then begin

 

end;

若中間沒有腳本運算的話,這一段沒有意義,可以刪除。

 

Var: Condition1Flag(close > v1);

這樣只會在宣告時運算一次,建議不要把條件判斷寫在宣告的部分。

可修改為:

Var: Condition1Flag(False);

Condition1Flag = close > v1;

這樣才會在每次運算時都判斷條件是否符合。

 

感謝 虎科大許教授 的熱心回覆。

發表回覆
Close