技術辞典

バックテストとは|EA検証で確認する期間・スプレッド・setファイルの基本

EAバックテストの結果の見方を表すアイキャッチ。PF、勝率、ドローダウン、取引履歴の確認を技術画面の背景で表現しています。
EAファンクラブ

バックテストは、過去の価格データと指定したテスト条件を使って、EAがどのように注文・決済し、どのような損益やドローダウンを記録したかを確認する検証作業です。

結果を見る時は、総損益だけでなく、検証期間、銘柄、時間足、EAバージョン、setファイル、スプレッドやコスト条件、PF、勝率、平均損益、ドローダウン、取引回数、取引履歴、ログを同じ一式として保存してください。

この記事ではP1478を受け先として、PF、勝率、取引履歴、バックテストレポートの既存記事内容を一つの確認順へまとめます。setファイルの詳細管理は別記事、ドローダウンの計算基準は専用記事へ役割を分けます。

バックテストは過去条件での挙動を確認する資料であり、将来の結果や実運用で同じ約定・損益になることを保証するものではありません。

この記事で確認すること

確認領域主な項目確認目的
検証条件EA版、銘柄、時間足、期間、モデル、データ、スプレッド、コスト、set比較条件を再現できるようにします。
損益Total Net Profit、Gross Profit、Gross Loss最終損益がどの利益・損失合計からできたか確認します。
PFGross ProfitとGross Lossの比1より上・同・下の算術的な意味を確認します。
勝率・平均損益利益回数、損失回数、平均利益、平均損失勝率だけで結果を読まないために確認します。
DD・資金曲線Balance / Equityの落ち込み途中の資金負担と発生区間を確認します。
履歴・ログorder / deal / position、決済、Magic、ログ集計値がどの取引から生じたか追跡します。

バックテストで分かること・分からないこと

バックテストから確認できるのは、指定した価格データ・EA・設定・テスター条件のもとで発生した過去の取引結果です。エントリー回数、決済、損益、PF、ドローダウン、履歴などを確認できますが、リアル運用の通信遅延、約定環境、将来相場、外部サービスの状態まで同じになることは保証されません。

資料確認しやすいこと別資料が必要なこと
テストレポート損益、PF、DD、取引回数、資金曲線発注前に見送った内部理由
取引履歴注文・約定・決済、価格、ロット、損益条件不成立で注文しなかった理由
Experts / TesterログEA内部の判定、発注結果、エラー、決済理由実口座の将来約定
Journal / 環境ログテスター・端末側のエラーや処理EA内部ロジックの詳細
setファイルEAの入力値価格データや実行環境そのもの

比較前に検証条件を固定する

PFやDDを比較する前に、結果の前提となる検証条件を固定します。同じEAでも、期間・銘柄・時間足・spread・setが変われば結果が変わるため、数値だけを並べて比較しないでください。

保存項目保存内容確認理由
EA名・バージョン実行ファイル名と版版差によるロジック・Inputs変更を区別します。
銘柄・時間足テスト対象銘柄仕様・判定周期を固定します。
期間開始日・終了日相場局面を記録します。
テストモデル / データ選択したモデル・データ条件再検証時の前提を残します。
初期資金テスト開始時の残高DD金額やロット影響の基準になります。
スプレッド・コストspread、手数料、swap等の条件取引コストを比較できるようにします。
setファイル入力設定一式同じ設定を再現します。

setファイルは設定を保存する重要な資料ですが、setだけでテスト条件全体は再現できません。銘柄、時間足、期間、EA版、データ、コスト条件も一緒に記録します。

レポート・履歴・ログの役割を分ける

バックテストレポートの集計値を見た後は、必要に応じて取引履歴とログへ降りて確認します。集計→個別取引→EA判断の順に追うと、大きな利益・損失・DDがどの取引から生じたか切り分けやすくなります。

確認順見る場所確認する内容
1テストレポート総損益、PF、DD、取引回数、資金曲線
2取引履歴大きな利益・損失の時刻、方向、ロット、価格、損益
3注文・約定情報order / deal / position、requestとfill、Magic
4EAログentry_reason、entry_skip、order result、close_reason等
5テスト条件EA版、set、銘柄、期間、spread等を再確認

損益とProfit Factorを読む

MetaTrader 5のテストレポートでは、Total Net Profit、Gross Profit、Gross Lossなどの集計値が表示されます。Profit Factor(PF)は、公式ヘルプでGross ProfitとGross Lossの比として定義され、値が1なら利益合計と損失合計が等しいことを示します。

項目意味確認ポイント
Total Net Profit全取引の最終的な損益結果単独で判断せず、DDや取引回数と合わせます。
Gross Profit利益取引の合計一部の大きな利益へ偏っていないか履歴で確認します。
Gross Loss損失取引の合計大きな損失・連続損失の有無を確認します。
Profit FactorGross Profit / Gross Lossの比分母・分子となる損益と取引数を合わせて確認します。

PFが1より上・同じ・下の時の意味

PFの状態算術的な意味注意
1より大きいテスト期間のGross ProfitがGross Lossを上回った将来の利益や安全性を保証する意味ではありません。
1Gross ProfitとGross Lossが等しい手数料・swap等の扱いもレポート項目で確認します。
1より小さいGross ProfitがGross Lossを下回った期間・条件・取引分布を確認します。

PFの値だけを『良い・悪い』の固定基準として使わず、DD、勝率、平均損益、取引回数、期間の偏りを一緒に確認してください。公式定義は MetaTrader 5 テストレポート で確認できます。

勝率・平均損益・取引回数を一緒に見る

勝率は利益で終わった取引の割合として確認しますが、勝率だけでは1回の利益幅・損失幅を表せません。高い勝率でも平均損失や最大損失が大きい場合があり、低い勝率でも平均利益が大きい場合があります。

項目確認する内容合わせて見る項目
勝率利益取引の割合平均利益・平均損失、PF、取引回数
平均利益利益取引1回あたりの平均利益最大利益、一部取引への依存
平均損失損失取引1回あたりの平均損失最大損失、DD
最大利益 / 最大損失1回の極端な損益資金曲線と該当履歴
取引回数結果の母数期間、BUY/SELL、ロジック別の偏り

取引回数が多いこと自体を品質の証明とはしません。特定期間・方向・時間帯・ロジックに集中していないかを分けて確認します。

ドローダウンと資金曲線を確認する

レポートの利益がプラスでも、途中の資金落ち込みが大きい場合があります。BalanceとEquityのDD、資金曲線、最大含み損、回復までの期間を確認してください。Absolute / Maximal / Relative Drawdownの定義はドローダウン専用記事へ役割を分けます。

確認対象見る内容切り分け
Balance DD決済済み損益に基づく落ち込み未決済含み損とは分けます。
Equity DD未決済損益を含む落ち込みナンピン・複数ポジションで重要です。
資金曲線急落・停滞・回復の流れ最大値だけでなく期間を確認します。
最大含み損保有中の損失Balanceだけでは見えない負担を確認します。

注文・約定・ポジション・決済の履歴を照合する

MT5ではorder(注文)、deal(約定)、position(保有ポジション)を分けて記録します。バックテストで大きな損益やDDが見つかったら、時刻、symbol、direction、volume、price、Magic、決済理由を履歴とログで追跡します。

記録確認すること用途
order発注要求、注文種別、価格、数量EAが何を要求したか確認します。
deal実際に成立した約定、価格、数量requestとfillの差を確認します。
position保有状態、symbol、volume等保有中の管理対象を確認します。
close / exit決済時刻、価格、損益、理由TP/SL/内部決済等を分けます。
Magic / Logic IDEAやロジックの識別複数EA・複数ロジックを切り分けます。

取引履歴だけで発注を見送った理由は分からないため、注文が少ない・途中から止まる・想定と違う時はExperts/Testerログのentry_skipやエラー記録も確認します。ログ項目名はEAごとに異なります。

ナンピンEA・GOLD・複数ロジックEAでは追加項目を確認する

対象追加で確認すること理由
ナンピンEA最大保有数、追加ロット、最大含み損、平均建値、basket決済最終損益だけでは保有中の負担が見えにくいためです。
GOLD / XAUUSDdigits、point、tick size/value、contract size、spread銘柄仕様と価格単位の違いを記録するためです。
複数ロジックEAMagic / Logic ID別の取引数・損益一部ロジックだけが結果を作っていないか確認します。
コピーEAsource/destinationの履歴、ロット変換、約定価格差コピー元とコピー先の条件差を分けるためです。

バックテストレポートを読む順番

順番確認項目確認内容
1検証条件EA版、銘柄、時間足、期間、モデル、spread、setを固定
2Total Net Profit / Gross Profit / Gross Loss全体損益と内訳を確認
3PF利益合計と損失合計の比を確認
4DD・資金曲線Balance / Equityの落ち込みと発生区間を確認
5勝率・平均損益・取引回数回数と金額のバランス、偏りを確認
6取引履歴大きな利益・損失、DD区間の取引を追跡
7EAログ発注理由・見送り理由・決済理由・エラーを照合
8実環境との差spread、約定、口座仕様、サーバー時間、外部連携を別検証

この順番は優劣を決める評価スコアではなく、結果の前提から原因へ順番に追うための確認手順です。

条件を保存し、別テストと比較できる形にする

同じ結果を再確認できるように、レポート単体ではなく、EA版・set・テスター設定・ログを同じバッチとして保存します。setファイルの命名・共有・機密情報の扱いは専用記事へ分けます。

保存資料最低限残す内容注意
レポート損益、PF、DD、取引回数、グラフ、履歴テスト条件が分かる名前で保存します。
setファイル使用したInputs認証情報や外部URL等の機密値がある場合は共有時に確認します。
テスター設定銘柄、足、期間、モデル、初期資金、コスト条件スクリーンショットやメモでも条件を残します。
ログExperts/Tester/Journal等問題がある時は対象時刻周辺を保存します。

バックテストとForward・実運用実績は別の証拠です。過去データ上のテスト結果を、Forwardや実運用の結果と同一視しないでください。

損益の内訳で一部の取引への依存を確認する

総損益が同じでも、少数の大きな利益に依存している結果と、多数の小さな利益を積み上げた結果では取引分布が異なります。Gross Profit / Gross Lossだけでなく、平均利益、平均損失、最大利益、最大損失を取引履歴と合わせて確認します。

損益項目確認すること追加確認
平均利益利益取引1回あたりの平均的な利益幅最大利益との差が極端でないか確認します。
平均損失損失取引1回あたりの平均的な損失幅最大損失や連続損失と合わせます。
最大利益1回の大きな利益全体損益が少数取引へ依存していないか確認します。
最大損失1回の大きな損失DD発生区間・SL・内部決済の履歴を確認します。
連続損益勝ち・負けの連続状態特定期間の偏りやロジック停止を確認します。

一部の極端な取引が全体結果を左右している場合は、その取引がどの時刻・条件・ロジックで発生したかを記録します。数値を除外して見栄えを整えるのではなく、結果を作った取引として残してください。

PFを比較する時は条件をそろえる

PFは同じ検証条件の中で損益構造を確認する指標です。EA AとEA B、set Aとset B、期間Aと期間Bを比較する場合は、比較対象以外の条件をできるだけそろえてください。

比較固定する条件変える条件
EA比較銘柄、時間足、期間、コスト条件、初期資金EA本体・必要なset
set比較EA本体、銘柄、時間足、期間、コスト条件setの対象パラメータ
期間比較EA、set、銘柄、時間足、コスト条件開始日・終了日
spread比較EA、set、銘柄、時間足、期間spread条件

PFが変化した時は、Gross ProfitとGross Lossのどちらが変わったか、取引回数やDDも同時に変わっていないかを確認します。PFだけを比較して原因を決めないでください。

取引回数の偏りを期間・方向・ロジック別に確認する

取引回数は単純な多い・少ないだけでなく、どの期間・方向・ロジックに分布しているかを見ます。全期間の回数が十分に見えても、特定月や特定方向へ集中している場合があります。

切り口確認すること見つかる可能性がある状態
月別・期間別月ごとの取引回数一部期間だけに集中、途中から停止
BUY / SELL別方向ごとの取引回数片方向だけが動作
時間帯別サーバー時間・セッションごとの回数時間フィルターへの偏り
ロジック別Magic / Logic IDごとの回数一部ロジックだけが稼働
銘柄別複数シンボルEAの回数特定銘柄だけが結果を作る

途中から取引が発生していない場合は、相場条件だけでなく、認証、時間条件、データ不足、注文エラー、フィルター条件などのログも確認します。

資金曲線から急落・停滞・回復を確認する

資金曲線は最終値だけでなく、途中の形を確認します。急落、長期停滞、一部期間だけの上昇、Equityの大幅低下などが見つかったら、該当時刻の取引履歴へ戻ります。

状態確認すること照合先
急落どの取引・決済で落ち込んだか最大損失、close reason、DD区間
長期停滞以前の高値へ戻るまでの期間取引回数、相場局面、フィルター
一部期間だけ上昇利益が特定局面へ集中していないか月別損益、取引履歴
Equityだけ大幅低下未決済含み損が拡大していないか保有ポジション、最大含み損
途中から横ばい取引が停止していないかログ、認証、時間条件

ナンピンEAでは保有中の状態をレポート外でも確認する

ナンピンEAやグリッドEAでは、最終的にバスケット決済されるとBalance上の損失が小さく見える一方、保有途中でEquityが大きく低下する場合があります。バックテストレポートのDDに加えて、最大ポジション数、追加ロット、平均建値、最大含み損を確認してください。

確認項目確認する内容理由
最大ポジション数同時保有した最大本数ポジション集中を確認します。
追加ロット各追加注文の数量ロット増加パターンを確認します。
平均建値バスケットの平均価格回復・決済位置を確認します。
最大含み損未決済中の最大損失Balanceだけでは見えにくい負担を確認します。
証拠金維持率DD区間の資金余力ロスカット条件への接近を確認します。

GOLD / XAUUSDでは銘柄仕様をテスト条件として残す

GOLD / XAUUSDでは、digits、point、tick size、tick value、contract size、spreadなどの銘柄仕様がブローカーによって異なる場合があります。別環境のテスト結果を比較する時は、同じシンボル名だけで同一条件と判断しないでください。

仕様確認する内容結果への影響例
digits / point価格表示桁とpoint値SL/TP・spread・距離設定の換算
tick size / tick value価格刻みと損益換算に関係する値約定価格・lot別損益
contract size契約サイズlot当たりの損益・必要証拠金
spreadテスト時の取引コスト短期売買の発注数・損益
取引時間取引可能時間・休止時間エントリー有無や保有時間

EAログとレポートを照合する

レポートは結果の集計、ログはEAがその結果へ至る過程の確認に使います。レポートで大きな損益やDDを見つけたら、その時刻周辺のログを確認します。

確認対象ログ項目例確認すること
エントリー理由entry_reason / signal / gateどの条件で注文候補になったか
発注見送りentry_skip / spread_block / time_blockなぜ注文しなかったか
注文結果order_send / retcode / fill_price要求と結果がどうなったか
決済理由close_reason / exit_reason / trail_updateTP/SL/内部決済等を切り分け
リスク制御risk_block / margin_level / floating_plDDや証拠金で停止していないか

ログ項目名はEAによって異なります。記事中の名称をそのまま実製品に存在する項目とみなさず、対象EAのmanualや実ログで確認してください。

相談・比較前に保存する資料

資料内容注意
バックテストレポート損益、PF、DD、取引回数、グラフ、履歴検証条件とセットで保存します。
setファイルInputs一式認証情報・URL等の機密値が含まれる場合は送付前に確認します。
テスター条件銘柄、足、期間、モデル、初期資金、spread等スクリーンショットまたはメモで残します。
Experts / TesterログEA内部の判定・注文・決済・エラー対象時刻周辺を切り出します。
比較メモ何を比較したいかEA差・set差・期間差など目的を一つにします。

実務チェック表

  • EA名とバージョンを記録した
  • 銘柄・時間足・期間・テストモデル・初期資金を記録した
  • スプレッド・手数料・swap等のコスト条件を確認した
  • setファイルを保存した
  • Total Net Profit、Gross Profit、Gross Lossを確認した
  • PFの分子・分母と取引回数を確認した
  • Balance / Equity DDと資金曲線を確認した
  • 勝率と平均利益・平均損失を合わせて確認した
  • 大きな損益・DD区間を取引履歴で追跡した
  • 必要に応じてEAログ・環境ログを照合した
  • ナンピン・GOLD・複数ロジック等の固有項目を確認した
  • バックテスト結果を将来保証として扱っていない

よくある質問

バックテストとは何ですか?

過去の価格データと指定条件を使い、EAの注文・決済・損益・資金推移などを確認する検証作業です。将来の結果を保証するものではありません。

PFとは何ですか?

Gross ProfitとGross Lossの比です。MetaTrader 5では1なら両者が等しいことを示します。値だけで判断せず、DDや取引回数も確認します。

PFが1より大きければ十分ですか?

1より大きいことはテスト期間のGross ProfitがGross Lossを上回ったという算術的な意味です。期間、取引数、DD、コスト条件などを確認しないまま品質や将来性を判断することはできません。

勝率が高ければ良いEAですか?

勝率だけでは平均利益・平均損失や最大損失を表しません。PF、DD、取引回数、損益分布と合わせて確認してください。

バックテストレポートだけ見れば十分ですか?

発注を見送った理由や内部判定はレポートだけでは分かりにくいため、問題調査では取引履歴とExperts/Testerログ等も確認します。

ドローダウンはどこで詳しく確認しますか?

Balance/Equity、Absolute/Maximal/Relativeの定義と比較方法はドローダウン専用記事へ分けています。

setファイルだけあれば同じテストを再現できますか?

setはEAの入力値を保存しますが、銘柄、時間足、期間、EA版、データ、スプレッドやコスト条件なども必要です。

ナンピンEAでは何を追加確認しますか?

最大保有数、追加ロット、最大含み損、平均建値、必要証拠金、Equity DD、basket決済の履歴を確認します。

バックテストとForwardテストは同じですか?

同じではありません。過去データ上のテストと、別期間・実時間のForwardや実運用実績は分けて記録します。

確認したい内容関連ページ
技術用語全体を確認するEA・MT5・MQL5 技術辞典
MT5 Strategy Testerの操作を確認するMT5バックテストのやり方
MT4 Strategy Testerの操作を確認するMT4 EAバックテストのやり方
検証条件・set・ログの実務確認自動売買EAのバックテストを見る前に確認すること
基本用語の入口へ戻るFX用語辞典
DDの計算基準を詳しく確認するドローダウンとは
setファイルの保存・比較を確認するsetファイルとは
EAログの基本を確認するEAログとは
Forwardと実運用実績を分けて確認するEAフォワードテスト完全ガイド

公式資料

公式資料はテスターの指標定義を確認するために参照します。EAFCのチェック表は、同じ条件・履歴・ログを整理するための実務手順です。

まとめ

バックテスト結果を読む時は、最初に検証条件を固定し、その上で損益、PF、DD、勝率・平均損益、取引回数、資金曲線、取引履歴、ログの順に確認します。

PFや勝率は1つの集計値です。数値だけを切り離さず、どの期間・EA版・set・銘柄・コスト条件から得られたかを一緒に保存してください。結果に疑問がある場合は、集計値から該当取引とログへ降りて原因を確認すると、比較や相談に使える検証記録になります。

お問い合わせはEAFC公式LINEへ

EAFCサイト内の記事、商品、導入前確認、設定確認、ログ確認、開発依頼前のご相談など、各種お問い合わせはEAFC公式LINEより受け付けています。

※投資助言、売買指示、利益保証、推奨ロット、推奨銘柄の案内は行っておりません。

口座番号、認証情報、Webhook URL、GAS URL、APIキーなどの機密情報は送信しないでください。

ABOUT ME
記事URLをコピーしました