交易中心下單腳本只加了一行condition=.....,回測筆數少了九成

  •   368 
  • 最後發表   菜鳥  2024 十一月 20
菜鳥 發文於   2024/11/12

小編你好~

我的交易中心下單腳本,加了一個條件結果差了十倍,

我逐筆排除發現原因在於一行: condition9=.....,回測筆數就少了九成

腳本簡化後如下,將其中的雙斜線拿掉,結果從22414比變成1662比,差了2萬多筆....麻煩告知原因及處理方式,謝謝!

input:profitex(1000,"獲利多少出場%"),lostex(15,"虧損多少出場%");

input:time1(090000,"最早進場時間"),time2(090000,"最早出場時間"),hh(18,"TSE均線");

var:day_count(0);

var:intraBarPersist dayentry(0);

 

if date<>date[1] and (currenttime=090000 or currenttime=133000) then dayentry=0; 

condition1= close <> getField("漲停價") ;

condition3= SymbolName <>"XXX"  ; 

 

//condition9= GetSymbolField("TSE.TW","收盤價","60")>average(GetSymbolField("TSE.TW","收盤價","60"),hh); 

if date<>date[1] and position=0 and currenttime>=time1 and dayentry=0 and condition1

then begin

setposition(1,AddSpread(Close,+2));

day_count = 0; 

end;    

 

//-----出場區----

if  filled[1]>0 and filled>0 and close <> getField("跌停價", "D") and currenttime>=time2 and

    ( close>=filledAvgPrice*(1+profitex*0.01) or close<=filledAvgPrice*(1-lostex*0.01) )

then begin

dayentry=1;

setposition(0,AddSpread(Close,-10));

end;

排序方式: 標準 | 最新
菜鳥 發文於   2024/11/12

附上腳本及回測結果

https://drive.google.com/file/d/12YdCU_vpz2ULeU1uX8OV_KhKYydZARSw/view?usp=drive_link

https://drive.google.com/file/d/1Uw8CzazzOjgBRpWD-Uz1CCFIjtjVyV8J/view?usp=drive_link

附加文件

虎科大許教授 發文於   2024/11/12

加了均線條件限制,交易次數減少是很正常的。由於你提供的程式碼,進場與出場都沒有condition9的條件限制,它應該與進出場無關,加不加,結果應該一樣。

菜鳥 發文於   2024/11/13

許教授您好!

我也是認為結果應該一樣的~

剛再看了一次報告,原來減少的那90%是因為 condition9造成1630檔股票回測失敗,失敗原因是"60分鐘頻率資料不足",但是我如果將範圍改成指定選股,那麼那些失敗的股票就都可以回測成功了....還請大師指教!!

感謝~!

菜鳥 發文於   2024/11/13

小編你好!

我發現從2019/11/14開始測只有4個失敗,開始日期往前調,每隔一天失敗的檔數就多一些! 自2019/9/1開始測的話,失敗檔數就多達1630檔~

對於 condition9要取的數據( GetSymbolField("TSE.TW","收盤價","60")>average(GetSymbolField("TSE.TW","收盤價","60"),hh);)

XQ 是不是 在2019/11/14之前是不提供資料的??

XS小編 發文於   2024/11/20

Hello 菜鳥,

 

回測時 XQ 伺服器提供的分鐘頻率歷史資料長度約為5年左右。

故就您的狀況來看應該是此原因沒錯。

小編會請相關人員確認看是否為此原因,若不是的話再補充。

發表回覆
Close