バックテスト基礎

MT5バックテストで手数料を入れ忘れるとPFが盛れる理由

バックテストのPFは1.5。でもリアルで回したらPFが1.0を切った。

原因の一つが「手数料の入れ忘れ」。ECN口座・Raw Spread口座の手数料をテスターに入れていなければ、PFは実運用より高く出る。

結論

手数料の入れ忘れは、バックテストで起きやすい「静かなミス」の一つ。

往復7 USD相当の手数料は1ロットあたり約0.7pips相当。月100回の取引なら月70pips分の利益が消える。入れ忘れるとPFが0.2〜0.5ほど高く出て、PF1.3のEAが手数料込みで1.0を下回ることも普通にある。

なぜEA運用で重要か

MT5テスターはデフォルトで手数料0として計算する場合がある。手数料がスプレッドに含まれる口座なら問題ないが、ECN系では別途入力しないと正しい結果にならない。

バックテストはコスト込みのシミュレーションでなければ判断材料にならない。手数料は毎回の取引にかかるため、取引回数が多いEAほど影響が大きい。

仕組み・条件

手数料がPFに与える影響

PF=総利益 ÷ 総損失。手数料は勝ち負け問わず全取引にかかるため、分子が小さく分母が大きくなり、PFが下がる。

具体例

項目手数料なし手数料あり(往復7 USD/ロット)
総利益10,000 USD9,650 USD
総損失7,000 USD7,350 USD
PF1.431.31

取引200回でPFが0.12下がる例。月500回のスキャルピングEAなら差はさらに大きい。

バックテストやリアル運用で壊れるポイント

どう確認するか

  1. テスト結果の「Commission」欄が0になっていないか確認する
  2. テスターの設定で手数料を正しく入力する
  3. 手数料なし/ありの両方でテストし、PFの差を確認する
  4. 口座手数料が変わっていないか定期的に公式で確認する
  5. EA内部で手数料込みの損益計算を持たせるとより確実

自分の検証スタンス

PFは手数料込みでしか見ない。手数料なしのPFは参考値であって判断材料にはしない。

「手数料を入れてもPF1.3を超えるか」——これが最初のフィルターになっている。

参照した公式情報

免責

本記事は個人の検証メモであり、投資助言ではありません。バックテストの結果は将来の成績を保証するものではありません。