AHPRとGHPRとは?計算式と2つの差
AHPR(平均保有期間リターン)とGHPR(幾何平均保有期間リターン)は、1件の取引のリターンを、その取引の前にあった資金に対する割合で表し、その平均をとったものです。AHPRは算術平均、GHPRは幾何平均です。同じ取引を測りながら答える問いは異なり、2つの開きは、結果がどれだけばらついていたかを表します。
仕組み
決済済みの取引には、それぞれ保有期間リターン(HPR)があります。その取引の純損益を、取引に使えた資金で割った値です。
HPRᵢ = (利益 + スワップ + 手数料)ᵢ / 取引 i の前の資金
AHPR = ( Σ HPRᵢ / N ) × 100
GHPR = ( [ Π (1 + HPRᵢ) ] ^ (1/N) − 1 ) × 100
コストは分子に入っています。手数料とスワップは、HPRにする前にすべての取引に織り込まれているため、どちらの数字もコスト控除後です。
元手について、大事な点が1つあります。ShowMyTradesの実装では、計算上の資金の初期値を口座の全期間の入金総額とし、そこから各取引の純損益を加えて更新していきます。分割で入金した口座では、初期の取引がまだ入っていないお金に対して測られるため、両方の数字が0のほうへ引き寄せられます。入金が1回だけの口座なら、元手は式のとおりに振る舞います。
GHPRがAHPRを上回ることはありません。これはトレードの性質ではなく、算数の話です。正の数の幾何平均は算術平均以下で、両者が等しくなるのはすべての数が同じときだけです。その差は、おおよそリターンの分散の半分になります。
GHPR ≈ AHPR − σ² / 2
2件の取引で考えてみます。+50%のあとに−50%なら、AHPRはちょうど0%ですが、口座は出発点の0.75倍になっています。GHPRは√(1.50 × 0.50) − 1 = −13.4%で、これを2回複利で重ねると、ぴったり0.75になります。算術平均は誰も受け取っていない結果を表し、幾何平均は残高をそのまま再現します。
なぜ重要か
算術平均は、使えるお金にはなりません。取引件数のぶんだけ累乗して、口座が実際にたどった結果を返すのは幾何平均だけです。だからGHPRが掲げるべき数字で、AHPRはそれを測る物差しです。2つの開きが大きいのは、ボラティリティ・ドラッグ(ボラティリティ税)、つまり分散が残高に届く前に複利から奪っていく分の表れです。
この非対称性は、分布の裾で過酷になります。資金をすべて失う取引が1件あれば、積の係数の1つが0になり、0を含む積は0です。それまでの1,000件の取引がどれほど良くても、GHPRは−100%になります。これは、勝率よりポジションサイジングを重視すべき理由を、掛け算で言い直したものです。AHPRが健全でも、ときおり全額をリスクにさらすほどの標準偏差がある手法は、幾何的な期待値がマイナスになります。
AHPRも飾りではありません。1トレードあたりの期待値を、pipsや金額ではなく資金に対する割合で言い直したもので、口座の規模が違っても比べられます。2つをセットで読めば、平均的な取引がいくら稼ぎ、ばらつきのあとにそのうちどれだけが残ったかがわかります。
実データから見えること
以下の数字はShowMyTradesで公開されている口座のもので、トレーダー全体のものではありません。公開口座の中央値を見ると、決済済み取引は171件、時間加重収益率は+3.2%です。そのリターンをその件数の取引に均等に割り振ると、1件あたりの幾何リターンはおよそ+0.018%で、パネルでは+0.02%に丸められます。これは実測の中央値ではなくあくまで例示ですが、この種の数字の等身大の水準であり、ほとんどの実際の口座で物足りなく見える理由でもあります。
同じ口座群では、スワップと手数料を差し引いたプロフィットファクターの中央値が1.28、勝率の中央値が68.8%です。そのため、見栄えのよい勝率の横にほとんど0のGHPRが並んでいても、矛盾はありません。大事なのは符号、AHPRとの開き、そしてそれを生んだ取引の件数です。
ShowMyTradesで確認できる場所
どちらも、公開されているすべての口座ページの詳細統計モジュールに、AHPR、GHPRという表示で並んでいます。場所はパフォーマンス指標の列のいちばん下で、プロフィットファクター、標準偏差、シャープレシオ、Zスコア(確率)、期待値の下です。どちらも符号つきのパーセンテージで小数点以下2桁まで表示され、0以上なら緑、0未満なら赤になります。
このモジュールには、表、曜日別、時間帯別、保有時間の4つの表示があります。AHPRとGHPRがあるのは表の表示で、ほかの3つは、2つを隔てている分散をどの取引が生んだのかを示します。どちらの値も、ブラウザー上ではなく、口座の同期時にShowMyTradesの統計サービスが計算します。
よくある誤解
- 「AHPRは平均だから、こちらが正直な数字」:誰も実際には受け取っていない平均です。結果にばらつきがあるかぎり、複利での増え方を、おおよそ分散の半分だけ大きく見せてしまいます。
- 「月次や年次のリターンだ」:1トレードあたりの数字です。同じ+0.02%でも、20件と2,000件ではまったく意味が違います。同じモジュールの取引の列にある総取引数と並べて読んでください。
- 「GHPRがほぼ0なら、そのシステムは機能していない」:通常の1トレードあたりのリスクなら、どちらの数字も小さく、パネルは小数点以下2桁に丸めます。数百件の取引で1件あたり+0.02%を示している口座は、収益率が2桁(10%以上)に達しています。
- 「AHPRがプラスでGHPRがマイナスなのはバグだ」:損益の振れ幅が大きいことの表れです。リターンの平均が0を上回っていても、複利では下へ向かうことがあります。このペアが教えてくれる最も役に立つことが、まさにそれです。
人に見せるつもりの記録のなかで、1トレードあたりの数字がどう位置づけられるかは、トレード成績を記録・分析する完全ガイドを参照してください。
関連用語
Zスコア (Z-Score)
トレードのZスコアは、勝ち負けの連なり方を偶然と比べる指標です。ShowMyTradesのZスコア(確率)の計算方法と、171件ではサンプルが少ない理由を解説します。
期待値 (Expectancy)
期待値は1トレードあたりの平均損益で、(勝率 × 平均利益)−(負け率 × 平均損失)で求めます。計算式と計算例、公開口座のデータを紹介します。
ポジションサイジング (Position Sizing)
ポジションサイジングは、ストップまでの距離とpips価値を使って、リスクの割合をロット数に変換する考え方です。計算式、代表的な3つの方法、サイズを誤ったときの代償を解説します。
標準偏差 (Standard Deviation)
標準偏差は、1回の取引の結果が平均的な取引からどれだけ離れるかを表します。コスト差し引き後で計算するShowMyTradesの計算式と、数千の口座での読み方を解説します。