我在回測時發現 Average(GetField( "收盤價","5"), 9)>Average(GetField("收盤價","5"), 9)[1]
每分鐘都可能會交易 但是 執行時 都會等5分 收完 才會觸發 交易 請問這方面是否能 有其他的做法 可以讓執行時
讓程式再用主頻1分K執行知道每分鐘 5分K9均之價格
再麻煩小編告知
我在回測時發現 Average(GetField( "收盤價","5"), 9)>Average(GetField("收盤價","5"), 9)[1]
每分鐘都可能會交易 但是 執行時 都會等5分 收完 才會觸發 交易 請問這方面是否能 有其他的做法 可以讓執行時
讓程式再用主頻1分K執行知道每分鐘 5分K9均之價格
再麻煩小編告知
Hello LAST trader,
您可以在腳本中加入print函數,這樣的話您就可以實際觀測到該隻腳本是每一分鐘運算一次。
另外小幫手建議您先改為使用以下語法:
value1 = GetField( "收盤價","5"), 9);
value1 > value1[1]
因為直接使用 Average(GetField("收盤價","5"), 9)[1] 的話運算出來的數值有異,目前小幫手正在與工程師確認問題原因。
感謝。
有使用print 觀察每分鐘的數值變化 確實與回測不同 還有一個問題就是
Average(GetField( "收盤價","5"), 9)>Average(GetField("收盤價","5"), 9)[1]
在逐筆交易中 上述程式碼 的 大於 反而沒有動作 1分k在回測上 與這類似的程式碼 實際測PRINT 皆不同
Hello LAST trader,
您提到的問題主要是源自於 Average(GetField( "收盤價","5"), 9)>Average(GetField("收盤價","5"), 9)[1] 這段腳本。
小幫手已請工程師協助確認問題原因。
建議您可以先改用以下的方式來取前期值:
value1 = Average(GetField( "收盤價","5"), 9);
if value1 > value1[1] then ret = 1;
print(date, time, value1, value1[1]);
這種方法小幫手測試過1分鐘和1分鐘逐筆沒有問題,您也可以實際測試看看。
3 評論