篩選不到正確的股票

  •   260 
  • 最後發表   ozoc  2022 七月 05
ozoc 發文於   2022/06/14

我用此公式

Value3=average(close,60);

condition3=absvalue((CLOSE-Value3)/Value3)*100<=13
搜尋月資料找不出2022年初股價在月線圖季線附近的臻鼎-KY(4958)

再麻煩小編 謝謝


排序方式: 標準 | 最新
ozoc 發文於   2022/06/14

我的目的是我不想分三次搜尋股價在月線圖 季線  年線 半年線附近的股票  我想一次搜尋 可是會搜尋不到臻鼎-KY(4958)
我的整個腳本如下

SetTotalBar(300);

Value1=average(close,120);

condition1=absvalue((CLOSE-Value1)/Value1)*100<=13 ;

Value2=average(close,240);

condition2=absvalue((CLOSE-Value2)/Value2)*100<=13 ;

Value3=average(close,60);

condition3=absvalue((CLOSE-Value3)/Value3)*100<=13 ;

if  close<=300

and (condition1 or condition2 or condition3)

 

then ret=1;

搜尋結果 回測執行商品一直告訴我1014失敗 選股策略執行錯誤
但是分三次搜尋可以是哪裡有問題?
還有請教我想要搜尋出來的時候告訴我是用哪個條件腳本該怎麼寫?謝謝

XQ小幫手 發文於   2022/06/21

Hello ozoc,

 

小幫手這邊測試沒有發生您所說的狀況,推測可能是因為計算筆數太多,導致策略逾時。

建議您並不需要用到這麼長的 SetTotalBar,只要使用預設的10筆就可以正常運行。

選股系統預設就會取出所有資料,只有需要使用前期值的指標才需要更長的運算。

需注意若公司上市櫃不久,資料長度不足的話一樣會顯示錯誤。

另外,如果您想要看到是哪個condition符合的話,可以使用outputfield來輸出資訊。

舉例來說:

outputField1(condition1);

outputField2(condition2);

outputField3(condition3);

就會分別顯示條件是符合(1)或否(0)。

 

ozoc 發文於   2022/06/21

我試過了 但是月資料搜尋還是有問題


再麻煩小編 謝謝

附加文件

ozoc 發文於   2022/06/21

對了
我有寫一個股價在5.10.20日均線的  SetTotalBar設很長也都搜尋正常
條件比上面複雜也ok
我改成60.120.240就開始無法搜尋
我後來一條一條刪掉回測 才回測出來的

XQ小幫手 發文於   2022/06/24

Hello ozoc,

 

您上面提供的回測執行頻率是月,如果腳本是如同上述有計算到 average(close, 240) 的話,那麼必須要該股票有 240 個月的資料 (20年) 才能計算出來。

這樣的話錯誤原因很簡單,因為資料長度不夠。(參考附圖)

您可以用 GetFieldStartOffset 來確認該欄位的歷史資料長度。

附加文件

ozoc 發文於   2022/06/24

這系統應該自行排除的不該顯示的錯誤
而不是叫使用者自己辨識

XQ小幫手 發文於   2022/06/29

Hello ozoc,

 

能夠看到錯誤訊息,才能夠知道如何修改腳本成自己需要的樣子。

舉例來說,使用者知道了原因為資料讀取筆數不足,可以修改腳本,讓歷史資料長度不足的商品只計算較短的均線條件。

或許您可以解釋得更清楚,系統應該如何幫您處理這些錯誤,讓小幫手將建議轉告給相關人員作參考。

ozoc 發文於   2022/06/29

系統是設計給使用者使用的

月線圖因為上市櫃公司經營時間不夠長

篩不出股票是很正常的 

選股執行錯誤卻誤導我讓我這個使用者認為我程式語法有誤 不斷反覆檢查程式語法 

XQ小幫手 發文於   2022/07/05

Hello ozoc,

 

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

感謝。

發表回覆
Close