我使用盤後回測筆數有40幾筆 然後把它用到自動交易中心然後再寫跟盤後選股的進場出場邏輯一樣,都是選到股票隔天開盤第一盤買進,但是交易筆數卻大大減少,以下是我的程式碼,請幫我看一下是哪邊有問題
SetTotalBar(30); // 預留足夠資料
Vars:
entrySignalDay(0), // 紀錄觸發日
entryDay(0), // 實際建倉日
myEntryPrice(0), // 進場價格(避開保留字)
barSinceEntry(0), // 持有天數
floatReturn(0.0); // 報酬率(百分比)
// ===== 每天都記錄訊號日(代表這檔股票今天被選到了)=====
If entrySignalDay = 0 then
entrySignalDay = Date;
// ===== 隔日開盤價買進 =====
If Filled = 0 and Date > entrySignalDay then begin
SetPosition(1, Open); // 用隔日開盤價進場
entryDay = Date;
myEntryPrice = Open;
barSinceEntry = 0;
entrySignalDay = 0; // 重置觸發日
end;
// ===== 出場條件(每日收盤檢查)=====
If Filled = 1 then begin
barSinceEntry += 1;
// 計算報酬率(百分比)
If myEntryPrice > 0 then
floatReturn = (C - myEntryPrice) / myEntryPrice * 100
Else
floatReturn = 0;
// 停利
If floatReturn >= 65 then
SetPosition(0, C);
// 停損
If floatReturn <= -10 then
SetPosition(0, C);
// 最長持有
If barSinceEntry >= 365 then
SetPosition(0, C);
end;
3 評論