自動交易"指定欄位資料尚未更新:主力買賣超張數"

  •   80 
  • 最後發表   小李飛刀  2021 十二月 03
小李飛刀 發文於   2021/11/30

執行自動交易時, 出現錯誤如下

原因:執行時發生錯誤[(1404)商品:XXXX.TW 指定欄位尚未更新: 主力買賣超張數]

而且發生的不只一檔股票, 952檔上市普通股, 就有331檔有這樣的問題

但跑回測都不會有這樣的問題

我的策略會用到前天的主力買賣超張數以及10天的主力買賣超張數平均

我有將交易中心匯出檔勾選(包含)交易腳本 以及 XQ Log寄到你們客服信箱

請幫忙盡快解決

附加文件

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

Hello 小李飛刀,

 

小幫手這邊沒有看見您的郵件,需要麻煩您再提供一次。

請務必將 討論區文章連結 附在郵件裡,亦可在下方回文郵件標題,小幫手才能盡早處理。

感謝。

XQ小幫手 發文於   2021/12/03

Hello 小李飛刀,

 

小幫手詢問其他人後,今早收到轉寄過來您的郵件。

檢查您的腳本,看到您有使用 主力買賣超張數 欄位。

推測應該為此欄位盤後(下午四點半)才更新,所以發生當天開盤取用此欄位資料時,因為沒有資料導致錯誤。

而回測時因為資料都已更新,所以不會發生此狀況。

建議您可以:

1. 一律取用昨日值,這樣回測會比較符合現實狀況。

   像是修改為 getField("主力買賣超張數", "D")[2]>average(getField("主力買賣超張數", "D")[1],10) 這樣。

2. 用 GetFieldDate 判斷資料是否有更新,如果還未更新的話取用昨日的資訊。

   if getfielddate("主力買賣超張數", "D") <> getfielddate("Date", "D") then begin

       ...使用昨日資料作判斷...

   end else

       ...使用今日資料作判斷...

   end;

發表回覆
Close