我加入大盤大於均線(60)的濾網,請問為何商品會有500個失敗? 而我用大盤大於均線(20)的濾網,商品都可以成功回測,請問如何解決前面問題? 附圖有我的程式碼,謝謝
我加入大盤大於均線(60)的濾網,請問為何商品會有500個失敗?
- 184
- 最後發表 大E 2020 四月 15
XQ小幫手
發文於
2020/04/07
Hi 大E
您好,建議您提供回測報告檔案(*.BTReport),請點選回測左上方的儲存
或者提供一個測試用的策略雷達檔案給小幫手
小幫手會比較好確認您的問題喔。
目前小幫手先行使用以下語法去跑全部商品,不過目前沒有遇見相同的問題
if average(GetSymbolField("TSE.TW","收盤價"),60)<GetSymbolField("TSE.TW","收盤價") then ret=1;
如果您不方便上傳的話,請您將相關資料,並附上此討論串連結,最後 Mail 至 XQservice@XQ.com.tw,謝謝。
大E
發文於
2020/04/09


以上是我測試的結果 有1500個商品失敗,再麻煩幫我解答 謝謝
XQ小幫手
發文於
2020/04/10
Hi 大E
小幫手有模擬出您的狀況,目前正在向相關人員詢問狀況
請您稍作等待,若有查明問題會再告知您,謝謝^^
大E
發文於
2020/04/13
好的 謝謝
XQ小幫手
發文於
2020/04/13
Hi 大E
小幫手與相關人員共同測試了一段時間,結論如下
為了不超過系統負荷,系統是有預設執行回測超過五分鐘,後續會因為逾時無法繼續作業
您可以在回測報告的"失敗",點選查看錯誤訊息。
我們有幫您簡化了腳本,但是還是跑10年的還原日資料,上市櫃商品仍然不夠
要請您減少商品,亦或者是減少年數,以上說明,謝謝。
input:Ma_Length(60);
value1=average(close,Ma_Length);
value2=getsymbolfield("tse.tw","close");
value3=average(getsymbolfield("tse.tw","close"),60);
condition1 = close cross over value1;
condition2= value2>value3;
if condition1 and condition2 then
ret=1;
大E
發文於
2020/04/13
好的 我在嘗試看看 謝謝小幫手
大E
發文於
2020/04/13
你好 我十年改兩個5年回測,20150101-20200413這一個都正常只有一個失敗,而20100101-20151231這一個有很多個失敗97個失敗,請問這是什麼原因呢? 附件中有程式碼



XQ小幫手
發文於
2020/04/15
Hi 大E
您好,只要逾時超過五分鐘,就視為超過運算量因此暫停。
因此仍建議您再縮小範圍,謝謝。
8 評論