XS程式出場後下一根K棒又觸發,但指令沒有執行

  •   205 
  • 最後發表   幽靈股堡  2023 十一月 30
幽靈股堡 發文於   2023/11/11

針對SAR的指標做進場出場判斷,簡單的指令如下,但是卻有發現當前一根K棒出場了

但下一根K棒(如圖藍色箭頭)馬上有觸發了close crosses above sarValue但她卻沒有執行買進指令

K棒

我有開啟逐筆洗價,請問是逐筆洗價的問題嗎??謝謝

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

Hello 幽靈股堡,

 

小幫手建議您可以將相關數值印出檢查,會比較容易找出問題原因。

需注意若同時有複數個setposition符合的話只會執行第一個運算到的。

就截圖來看,您箭頭標示的那根Bar剛洗價時會觸發 cross below (前一根Bar收盤價大於sarValue,且當下收盤價小於 sarValue),但應該不會觸發 cross above (前一根Bar收盤價沒有小於 sarValue)。

不知您是否有誤解 cross above / cross below 的運作方式。

 

如果還是有問題的話,麻煩提供資訊讓相關人員確認。

若是運作在即時的策略地化,請提供自動交易策略匯出檔勾選(包含)交易腳本、XQ Log 並告知有問題的商品和發生問題的日期時間。

若是回測的話請提供 交易腳本、回測的設定 (截圖或回測報告皆可) 並告知有問題的商品和發生問題的日期時間。

 

Log資料夾(預設路徑:C:\SysJust\XQLite\LOG)直接壓縮後提供即可。

您可以直接將檔案上傳,如果檔案過大的話也可以保存到雲端後將連結Mail至客服信箱 XQservice@XQ.com.tw 且務必附上 討論文章連結網址(小幫手才能盡早處理)。

感謝。

幽靈股堡 發文於   2023/11/28

你好,我了解你說的這段話的意思了

就截圖來看,您箭頭標示的那根Bar剛洗價時會觸發 cross below (前一根Bar收盤價大於sarValue,且當下收盤價小於 sarValue),但應該不會觸發 cross above (前一根Bar收盤價沒有小於 sarValue)。

那假設我要不管"但應該不會觸發 cross above (前一根Bar收盤價沒有小於 sarValue)。" 這個狀況,只要K棒穿越sarValue,就觸發成交(不管前一根bar收盤價沒有小於sarValue)。那我該怎麼改寫呢??

 

謝謝

 

XQ小幫手 發文於   2023/11/30

Hello 幽靈股堡,

 

假設您要的是 SAR 介於開盤價與收盤價間的話,可以自行撰寫條件,像是:

if close > sarValue and sarValue > open and position = 0 and filled = 0 then setposition(1, market);  //只有紅棒的狀況會符合

如果要更放寬的話,也可以使用 low 和 high 來替代 open 和 close,可是這就會變成只要 sarValue 位於K棒上的任何一點都會符合。

發表回覆
Close