台指波段程式單問題

  •   219 
  • 最後發表   股海茫茫  2023 二月 13
股海茫茫 發文於   2023/02/08

台指60分K程式單觸發進出場條件會在收K後才觸發進出場,遇到收盤會造成無法確實執行,如果使用洗價模式,會有假訊號的情況(盤中有達到條件,收K條件不符合),有辦法撰寫程式碼指定在特定時間洗價嗎,例如早盤13:45收盤,程式設定在收盤前十分鐘13:35才會洗價,如此一來收盤這根K棒如果有訊號就不會漏掉交易訊號

排序方式: 標準 | 最新
XQ小幫手 發文於   2023/02/08

Hello 股海茫茫,

 

由於您最後收盤前要在Bar結束前運算下單,所以策略需要勾選逐筆洗價才可以。

最接近的方式應該是逐筆洗價平時用上一根Bar的運算結果,在13:35以後才改為當根Bar的運算結果。

舉例來說:

condition1 = 進場條件;

 

if position = 0 and filled = 0 and ((condition1[1] and currenttime <= 133500) or (condition1 and currenttime > 133500)) then setposition(1, market);

 

股海茫茫 發文於   2023/02/09

謝謝小編的回覆,想再多請教一下,如果要加入要接入夜盤收盤前10分鐘(早上04:50)一起判斷怎麼撰寫會比較好呢

XQ小幫手 發文於   2023/02/09

Hello 股海茫茫,

 

小幫手不太確定您的問題是什麼,不過策略是要有洗價才會運算,所以若那段時間沒有交易的話,策略不會運算。

至於要用夜盤前收盤10分鐘當作條件,您可以用 currenttime 當作條件:

condition1 = 045000 < currenttime and currenttime < 050000;

這樣條件就只會在 04:50 ~ 05:00 這段時間內符合。

股海茫茫 發文於   2023/02/10

謝謝小編的回覆,不好意思我表達的不是很清楚,

我的意思是如同第一則回覆說的

一般的k棒收k才觸發訊號,而收盤那根k棒的最後十分鐘才觸發洗價(如早盤的13:35跟夜盤的04:50)把早夜班的收盤都納入考量,該如何撰寫比較好

XQ小幫手 發文於   2023/02/13

 Hello 股海茫茫,

 

您只要用前後時間做限制即可。

舉例來說:

condition1 = 133500 < currenttime and currenttime < 134500;

condition2 = 045000 < currenttime and currenttime < 050000;

這樣condition1 就是在 13:35 ~ 13:45 之間符合,condition2 是在 04:50 ~ 05:00 之間符合。

藉此來決定進出場條件是要用上一根Bar的還是當下的Bar來判斷。

發表回覆
Close