bug: GetSymbolInfo("可放空") 在自動交易回測時回傳錯誤的值

  •   978 
  • 最後發表   GaryChiang  2025 四月 28
GaryChiang 發文於   2023/06/01

 

if GetSymbolInfo("可放空") then plot1(1) else plot1(0);

如上指標, GetSymbolInfo("可放空"), 可以取得目前產品的"可放空"條件, 並回傳正確的數值.

if position=0 and time=090500 and GetSymbolInfo("可放空") then setposition(1);

if position=1 and time=100000 then setposition(0);

但, 如上"交易"程式, GetSymbolInfo("可放空"), 在回測時卻永遠回傳  false 的值, 造成回測時, 沒有任資料.

請修改一下!

  • 按讚來自於
  • mklpio2000
排序方式: 標準 | 最新
XQ小幫手 發文於   2023/06/06

Hello GaryChiang,

 

您可以參考 GetSymbolInfo 的說明,可放空只提供最新資料。

GaryChiang 發文於   2023/06/06

 小幫手, 你好!

通常交易程式增加個條件是為避免不可以放空的個股去做放空, 所以會增加這個條件在程式裏. 

說明裏的東西我也懂, 

但.....

你不覺得, 回測時要把這個條刪掉, 正式執行時再加上去....這件事, 本身是一個很白痴的設計嗎?

GetSymbolInfo 的資料只有當下的, 例如, "買賣現沖"也是只有當下的條件.

但這個在回測時, 它是直接無視這個條件, 全部回傳 true. (你可以試看看)

我就覺得這樣的設計, 我可以接受, 雖然, 不滿意.

但同樣去取得"可放空"資料回測時, 卻全部回傳 false, 造成回測, 和執行必需是不同的..

這樣, 如果是你, 你可以接受嗎?

二且, 二個參數處理方式不同, 又是為了什麼原因?

XQ小幫手 發文於   2023/06/07

Hello GaryChiang,

 

您可以使用 getinfo 來判斷腳本是執行在即時還是回測的狀況下。

買賣現沖在回測的時候是有歷史資料的,和可放空不同。

小幫手會將您的意見轉告相關人員。

GaryChiang 發文於   2023/06/07

那指標又是怎麼一回事?

value1 = iff(GetSymbolInfo("買賣現沖"), 1, -1);

plot1(value1);

山富最近處置, 處置之前是可以現股當沖的, 但指標顯示, 它一直都不行當沖

紅木, 前一陣子處置, 不能現股當沖, 最近可以當沖了, 但, 指標顯示它一直都可以!

XQ小幫手 發文於   2023/06/08

Hello GaryChiang,

 

GetSymbolInfo("買賣現沖") 支援的是回測,和指標不同。

回測是可以取得可否買賣現沖。(參考附圖)

而指標只能取得當下最新的資料,就像是 plot1(currenttime); 在過去的歷史資料會畫出掛上指標的那個時間,掛上之後的Bar所畫出的currentime才會隨著洗價而有所變動。

附加文件

GaryChiang 發文於   2023/06/09

所以呢????????????????????

指標不能取得歷史資料, 交易模組可以!

然後"買賣現沖"支援回測

"可放空"不能支援回測....

你知道, 你自己在回答什麼東西嗎?????????

使用者, 必需一個一個測, 才知道..

喔...這個可以, 喔...那個不行~

這個指標選股可以, 那個不行~

 

...... 

 

  • 按讚來自於
  • mklpio2000
XQ小幫手 發文於   2023/06/13

Hello GaryChiang,

 

可參考 GetSymbolInfo 裡的說明。

 

買賣現沖:"IsDayTrading"、"買賣現沖",支援台股,回傳布林值。只有在執行回測的時候有歷史資料。

可放空:"ShortSellStock",有無可放空。僅提供最新資料,盤前更新資料,回傳布林值。

 

僅提供最新資料就是不會有回測/歷史資料的意思。

 

小幫手有將情況告知相關人員,目前預計將 可放空 和 平可空 調整成與 警示股/注意股/買賣現沖/先賣先沖 相同,在回測時提供歷史資料。

未來相關人員會再規劃確認看能否調整成資料欄位的形式。

小傑 發文於   2025/04/19
XS小編 發文於   2025/04/23

Hello 小傑,

 

GetSymbolInfo 可放空 和 買賣現沖 欄位已有歷史資料。

若您使用時遇到沒有過去資料的狀況,麻煩提供相關資訊讓相關人員查詢。

MakeMoneyFromStock 發文於   2025/04/28

今天遇到了

6640

6962

6683

7722

2630

還有更多檔 的盤中判斷可放空都是欄位資料為空 造成程式邏輯錯誤 程式停擺, 可否請教到底該如何避免或語法怎麼寫才能避開?

或者如何有效判斷出能不能融券放空的替代方案?

這問題版面已經出現很多次反應了 希望XQ重視 謝謝

發表回覆
Close