我想在策略雷達回測的時候,限制"每一檔"一天只能執行一次交易
目前在回測頁面中,只有"最大同時進場數",無法滿足上述需求
另外也有試著用Script控制次數,但測試結果出來是"所有標的總共只能執行X次交易"
不知道是否有甚麼語法,或是操作方式可以解決這個需求,再麻煩你們了,感謝!
我想在策略雷達回測的時候,限制"每一檔"一天只能執行一次交易
目前在回測頁面中,只有"最大同時進場數",無法滿足上述需求
另外也有試著用Script控制次數,但測試結果出來是"所有標的總共只能執行X次交易"
不知道是否有甚麼語法,或是操作方式可以解決這個需求,再麻煩你們了,感謝!
Hello 傳聖,
小幫手不太確定您在腳本中是如何限制一天交易一次的,不過小幫手會這樣作:
var: intrabarpersist _date(0);
condition1 = 觸發條件;
if condition1 and _date <> date then begin
ret = 1;
_date = date;
end;
這樣_date就會在每次進場時更新成當日的日期,確保當日不會重複進場。
需注意若有使用逐筆洗價的話,要使用 intrabarpersist 這樣變數的值才會在每次洗價中保存。
您好 :
首先感謝您的回覆,不過您的寫法應該是和我說的"一天只執行一次交易"的寫法是一樣的
但是我希望的是"每一檔"一天只執行一次交易,也就是說一天如果有100檔符合篩選條件的話,是會執行100次而不是一次
後來我是用陣列紀錄+迴圈強制寫入來解決這個問題,我只是想知道有沒有更簡單可以解決的方式,因為這寫法是土法煉鋼,效能有點差,感謝您
For i = 1 to 100
Begin
if StrArray[i] = "" then
begin
StrArray[i] = Symbol;
ReOrderChk = false;
break;
end
else if StrArray[i] = Symbol then
begin
ReOrderChk = true;
break;
end;
End;
if ReOrderChk = false then
ret = 1;
3 評論