執行頻率

  •   47 
  • 最後發表   fgh  2025 七月 08
fgh 發文於   2025/07/03

想請教一下 為什麼我在警示中執行以下腳本 日頻率沒問題

但是我想要每分鐘都自動執行一次 所以把他調成分頻率 不過卻一直錯誤

value1 = average(getfield("收盤價", "D"), 5);

value2 = average(getfield("收盤價", "D"), 10);

value3 = average(getfield("收盤價", "D"), 20);

value4 = average(getfield("收盤價", "D"), 60);

 

Condition1 = value1*0.99<= closeD(0) and closeD(0) <= value1*1.01;

condition2 = value1 >= value2 and value2 >= value3 and value3 >= value4;

condition3 = average(getfield("成交量", "D"), 5) >= 500;

condition4 = value1 >= value1[1];

 

If condition1 and condition2 and condition3 and condition4 then ret=1;

排序方式: 標準 | 最新
虎科大許教授 發文於   2025/07/03

什麼錯誤?

fgh 發文於   2025/07/03

感謝回覆

我原本是條5000筆讀取資料 

幾乎有三分之一的標的 顯示部分商品可能缺資料 或是資料有問題造成失敗

不過剛剛發現如果我調整成2025/3/1(或更早日期) 就不會有錯誤了 但是執行效能變得非常慢 

是因為我用了60日均線 所以在分K執行上要讀取更多資料嗎 

不知道有沒有更優化的方法 謝謝

 

虎科大許教授 發文於   2025/07/03

我用你的程式測試上市櫃1875檔商品,1分鐘頻率,不設定讀取資料筆數,測試期間:20250301-20250702,速度蠻快的,沒有你說的問題。

XS小編 發文於   2025/07/08

Hello fgh,

 

小編補充,average函數在計算時不需要前期值,因此要設定長度的不是資料讀取筆數而是資料引用筆數。

詳細的差異可參考 SetTotalBar資料讀取範圍與腳本執行的關係

就以您上面的腳本來說,setbackbar(60) 設定60筆資料引用筆數即可。

 

若還是有問題的話,麻煩提供XQ Log 和 策略雷達匯出檔包含警示腳本 讓相關人員確認。

您可以透過XQ內的設定 => 問題回報方式來上傳提供,並附上討論區問題連結。

感謝。

發表回覆
Close