投資のプロフィットファクター(PF)とは?計算式と注意点

投資・トレード

はじめに

FX自動売買やEA(Expert Advisor。MT4/MT5などで使われる自動売買プログラム)の販売ページを見ていると、PFという数字が出てくることがあります。

PFはプロフィットファクター(Profit Factor)の略で、バックテスト成績を説明するときによく使われる指標です。先に直感だけいうと、PFは「どれだけ勝ったか」ではなく、負けた金額に対して、どれくらい勝ったかを見る指標です。

例えば、PF 1.2よりPF 2.0の方が良さそうに見えます。PF 5.0のような数字が出ていると、かなり優秀なシステムに見えるかもしれません。ただし、PFは便利な指標ですが、それだけで自動売買の良し悪しを判断するのは避けたいところです。

この記事では、次の3点を見ていきます。

  • プロフィットファクター(PF)の基本的な意味と計算式
  • PFが高く見えるときの注意点
  • FX自動売買やEAの販売ページで確認したいこと

プロフィットファクターの考え方

まず、2つのシステムを想像します。

  • 100万円勝って、90万円負けたシステム
  • 50万円勝って、10万円負けたシステム

利益の合計だけを見ると、前者の方が大きく見えます。しかし、負けた金額もかなり大きいです。

一方で後者は、利益の合計は小さいものの、損失に対して効率よく利益を出しています。

この「損失に対して、どれくらい利益を出したか」を見る指標がプロフィットファクターです。

式はシンプルです。

\(\displaystyle \mathrm{PF} = \frac{G}{L}\)

ここで、\(G\) は総利益、\(L\) は総損失を表します。

総利益は、勝ちトレードで得た利益の合計です。

総損失は、負けトレードで出た損失の合計です。通常は、損失額をプラスの値として扱います。

例えば、勝ちトレードの合計利益が20万円、負けトレードの合計損失が10万円だった場合、PFは以下のようになります。

\(\displaystyle \mathrm{PF} = \frac{20}{10} = 2.0\)

これは、損失10万円に対して利益20万円が出ている、つまり損失額の2倍の利益が出ているという意味です。

ここで大事なのは、PFは利益の大きさそのものではなく、利益と損失の比率を見ているという点です。

簡単な計算例

いくつか例を見てみます。

総利益総損失PF読み方
120万円100万円1.2利益は出ているが余裕は小さい
200万円100万円2.0損失の2倍の利益が出ている
500万円100万円5.0かなり高いPFに見える

PFが1.0を超えていれば、総利益が総損失を上回っています。PFが1.0未満なら、総損失の方が大きいので、そのバックテストでは利益が出ていないことになります。

この意味では、PFはとても分かりやすい指標です。ただ、分かりやすいからこそ、数字だけを見て判断してしまいやすい面もあります。

この表で大事なのは、PFの高さそのものではなく、その数字がどれくらいの取引回数・検証期間から出てきたのかです。

PFが高ければ良いのか

PFは高いほど良さそうに見えます。

しかし、PFが高いからといって、その自動売買が必ず良いとは限りません。

例えば、次の2つを考えます。

取引回数総利益総損失PF
20回50万円10万円5.0
500回200万円100万円2.0

この表だけを見ると、PF 5.0の方が優秀に見えます。

しかし、取引回数が20回しかない場合、その結果は偶然の影響を強く受けているかもしれません。

一方で、PF 2.0でも取引回数が500回あるなら、検証材料としてはそちらの方が安定して見られる場合があります。

つまり、PFは取引回数や検証期間とセットで見る必要があります。

ここがPFの落とし穴です。PFは比率なので、取引回数が少ないと、たまたま損失が少なかっただけでも高く見えることがあります。

PF 2.0なら良いシステムと言えるのか

PF 2.0は、一見するとかなり良い数字に見えます。損失1に対して利益2を出している、という意味だからです。

ただし、PF 2.0なら安全、PF 1.5なら危険、というように単純には判断できません。

同じPF 2.0でも、次のような条件によって意味が変わります。

  • 取引回数が20回なのか、500回なのか
  • 検証期間が数か月なのか、数年なのか
  • 最大ドローダウンがどれくらいあるのか
  • 最適化で何通りの条件を試したのか
  • フォワードテストや実運用でも似た傾向があるのか

つまり、PFは水準だけでなく、その数字が出た背景とセットで見る必要があります。

勝率との関係

PFを見るときは、勝率との関係も重要です。

直感的には、勝率が高いほど良いシステムに見えます。しかし、PFは勝率とは別の見方をします。

勝率が高いシステムでも、1回あたりの負けが大きければPFは低くなります。

逆に、勝率が低くても、勝つときの利益が大きければPFは高くなることがあります。

簡単な例を考えます。

勝率平均利益平均損失読み方
90%1,000円20,000円勝率は高いが、大きな負けに弱い
40%10,000円3,000円勝率は低いが、勝つときの利益が大きい

このように、勝率だけを見ても分かりませんし、PFだけを見ても分かりません。勝率、平均利益、平均損失、最大ドローダウン、取引回数を合わせて見たいところです。

勝率は「何回勝ったか」、PFは「金額としてどれだけ勝ち越したか」を見ています。似ているようで、見ているものが違います。

高すぎるPFに注意する

PFが高いこと自体は悪いことではありません。

ただし、バックテストで極端に高いPFが出ている場合は、その数字がどうやって出てきたのかを確認した方がよいです。

特にFX自動売買では、パラメータを変えながら何度もバックテストできます。

多くの条件を試して、その中で一番PFが高かったものだけを販売ページに載せると、かなり良く見える数字が出ることがあります。

この場合、PFが高い理由は「ルールが本当に優秀だから」ではなく、「過去データに一番うまく合った条件を選んだから」かもしれません。

このような状態を過剰最適化と呼びます。

販売ページで確認したいこと

FX自動売買やEAの販売ページでPFを見るときは、次の点を確認するとよいと思います。

  • 取引回数は十分にあるか
  • バックテスト期間はどれくらいか
  • 最大ドローダウンはどれくらいか
  • 勝率と平均損益はどうなっているか
  • 最適化で何通りの条件を試したのか
  • フォワードテストや実運用の成績はあるか

PFは便利ですが、単独で判断する指標ではありません。特に、PFがかなり高い場合は、取引回数、期間、試行回数を合わせて確認した方がよいです。

関連記事

まとめ

プロフィットファクターは、総利益を総損失で割った指標です。

直感的には「損失1に対して、どれくらい利益を出したか」を表します。

PFが1.0を超えていれば、総利益が総損失を上回っています。PFが高いほど利益効率は良さそうに見えますが、それだけで自動売買の良し悪しを判断するのは避けたいところです。

取引回数、検証期間、最大ドローダウン、勝率、試行回数と合わせて見る必要があります。

FX自動売買やEAのバックテストを見る場合は、PFだけでなく、シャープレシオや過剰最適化の可能性も合わせて確認する必要があります。

次に読む記事

詳しく確認したい方へ

筆者が作成したPDF教材として、GogoJungleで以下を販売しています。

コメント

タイトルとURLをコピーしました