バックテストのプロフィットファクターを、どこまで信じてよいか
バックテスト結果を見るとき、プロフィットファクター(PF)は最初に目に入る数字のひとつです。PF 2.0、PF 5.0、ときには PF 7.8 のような値も見かけます。
数字が大きいほど良い成績に見えます。ただ、その数字をどこまで信じてよいかは、PF 単体では決まりません。
PF は分母が小さいと簡単に大きくなる
PF は総利益を総損失で割った比率です。
総利益 78 万円、総損失 10 万円なら PF は 7.8 です。
ここで、まだ表に出ていなかった 30 万円の損失が 1 回追加されたとします。
PF = 78 ÷ (10 + 30) = 1.95
7.8 が 1.95 になりました。ロジックは何も変わっていません。総損失がまだ小さい段階の PF は、1 回の負けで大きく動きます。
これは PF が間違った指標だという話ではありません。比率という形の性質です。だからこそ、PF を見るときは分母がどれくらいの経験の上に成り立っているかを一緒に見る必要があります。
同じ PF でも取引回数で意味が変わる
30 回の取引で出た PF 3.0 と、1,000 回の取引で出た PF 1.6 では、後者のほうが判断材料として安定しています。
取引回数が少ないうちは、まだ大きな損失に遭遇していないだけ、という可能性が残ります。バックテスト期間が長くても取引回数が少ない場合は、実質のサンプル数を確認したいところです。
最適化の試行数も PF を押し上げる
パラメータを変えながら何十通り、何百通りとバックテストを回し、最も成績が良かった設定を採用する。EA 開発では普通の手順です。
ただし「最も良かったものを選ぶ」という操作自体が、成績を押し上げます。たくさん試せば、過去データの偶然の癖に合う設定は必ず見つかるからです。
実際に移動平均クロスで 89 通りを試し、学習期間で最良だった設定をそのまま検証期間に当てた例では、シャープレシオが 1.295 から 0.242 へ下がりました。性能の 8 割が消えた計算になります。相場が急変したわけでも、ロジックを変えたわけでもありません。「最良を選んだ」ことだけが原因です。
PF も同じ力を受けます。高い PF を見たときは、それが何通り試した中の数字なのかを確認する価値があります。
PF と一緒に見たい 6 項目
PF を読むために、最低限そろえたい情報を整理すると次のようになります。
- 取引回数 — PF の安定性を決める母数
- 総利益と総損失 — PF の分子と分母
- 平均利益と平均損失 — 勝率との関係を見る
- 最大損失(1 回あたり) — 1 回の負けで PF がどこまで下がるか
- 最大ドローダウン — 含み損込みで計算されているか
- 検証期間とフォワード成績 — 過去だけでなく、その後も続いているか
このうち何項目が確認できるかで、PF という 1 つの数字の読み方は変わります。すべて埋まらないこともありますが、どこが埋まらなかったかを把握しておくこと自体が判断材料になります。
数字を否定するのではなく、分解する
高い PF が出ているEAを避けるべき、という話ではありません。確認すべきなのは、その数字がどういう条件で出たかです。
取引回数が十分で、損失も一定回数経験していて、フォワードでも傾向が続いていて、最適化の試行数も開示されている。そこまで揃った PF 2.0 は、条件不明の PF 7.8 より読みやすい数字です。
筆者について
上記の確認手順を、記入式のチェック表と販売者への質問テンプレート(6 問)にまとめた無料の PDF を GogoJungle で配布しています。
- EA販売ページ 5分チェックリスト【無料】(0円・A5・8ページ)
PF を取引回数・損失感度・bootstrap・フォワード成績と合わせて読む手順は、有料版で体系的に扱っています。
いずれも筆者が作成した PDF 教材です。特定の EA・商品の購入可否を示すものではなく、本文中の数値例はすべて説明のために作成した架空の例です。最終的な投資判断はご自身の責任で行ってください。