この数値は何を表すか

バックテストの成績が良いことと、そのEAに本物の優位性があることは別です。

何度もパラメータを試せば、実力がゼロでも「良く見える組み合わせ」は必ず見つかります。 100通り試して一番良かった1つを見せられても、それが実力なのか偶然なのかは、 その成績だけを見ても分かりません。

本物のエッジ確率は、何度も試したことを差し引いてもなお、その成績が偶然では 説明できないと言える確率です。高いほど、まぐれである可能性が小さいことを意味します。

なぜ公開するのか

この問題は、2014年に発表された論文 Pseudo-Mathematics and Financial Charlatanism(Bailey, Borwein, López de Prado, Zhu)が 提起したものです。同論文は、何通り試したかを報告しないバックテストでは、 過剰最適化のリスクを評価しようがないと指摘しています。

同じ2014年、当社が使っている指標の原典(Bailey & López de Prado, The Deflated Sharpe Ratio)は、さらに直截にこう書いています。 「探索の規模を統制していないバックテストは、報告された成績がどれほど優秀であっても 無価値である」。

発表から10年以上たった今も、EA の売買では「何通り試したか」はほとんど示されていません。

当社は全てのEAでこの数値を公開します。 良い数字のときだけ出すことはしません。

どう算出しているか

Deflated Sharpe Ratio(DSR) を使っています(本物のエッジ確率 = DSR)。 原典から変えているのは1点だけです(「設定間のばらつきの決め方」の節)。

DSR は素のシャープレシオから、次の4つを割り引いた指標です。

# 割り引くもの なぜ必要か
1 試行回数(何通り試したか) 何度も試せば、実力がゼロでも「一番良かった1つ」の成績は上がる
2 設定間のばらつき(実力がゼロでも、偶然だけで設定どうしの成績がどれだけ散らばるか) 偶然の散らばりが大きいほど、まぐれで飛び抜けた1つが出やすい
3 損益分布の偏り(歪度・尖度) 「小さく何度も勝って、たまに大きく負ける」形は、素のシャープを過大に見せる
4 標本の長さ 取引数が少ないほど、成績はブレる

この4つは一緒に効きます。「試行回数さえ見ておけばよい」ではありません。

当社が申告する値は、1 の試行回数だけです。 2 は各設定の取引数から計算で決まるため、 当社が数値を選ぶ余地がありません(次節)。 試行回数を少なく申告すれば本物のエッジ確率は良く見えるので、その中身を公開します。

実効試行数(N)の数え方

N は「最適化のグリッド点数」ではありません。 成績を見て比べたものは、すべて試行です。

数える対象 説明
パラメータ探索の点数 最適化で実際に評価した組み合わせの数
試した時間足の本数 M30 / H1 / H4 / H8 … と比べたなら、その本数
比べた銘柄の組み合わせ 「この銘柄を入れる/外す」で成績を見比べたなら、それも選択
土台にした過去のEAの探索履歴 最も見落とされる項目。 前作の探索結果を引き継いで作ったなら、その探索も自分の試行です
その他の人手による判断 除外ルール・期間の切り方など、成績を見て決めたもの

⚠️ 「今回試したのは時間足5本だけ」と数えるのは過小申告です。 前作から引き継いだ探索が30通りあったなら、それも N に入ります。

設定間のばらつきの決め方

本物のエッジ確率が比べる相手は「実力がゼロの設定を何通りも試したとき、偶然だけで 出る一番良い成績」(まぐれで出る最高点)です。その高さを決めるのが、 偶然だけで設定どうしの成績がどれだけ散らばるかです。

当社はこれを、各設定の取引数から計算します。 実力がゼロなら、成績の散らばりは 取引数が少ないほど大きくなります。その大きさは統計の公式で決まり、 当社が値を選ぶ余地はありません。

原典の手順との違い(当社が変えた1点): 原典は、このばらつきを「試した設定の成績が、実際にどれだけ違っていたか」で測ります。 これは試した設定どうしの実力が同程度であることを前提にしています(原典は同じ「戦略クラス」の 設定を想定しています)。実際には出来の悪い設定も試すので、 出来の悪い設定を試したことが「まぐれで出る最高点」を押し上げてしまいます。 「まぐれで出る最高点」は実力ゼロを仮定した量なので、当社は偶然による散らばりだけを使います。

  • 原典の手順で計算した値も、比較のために併記します(下記の EA 別の実測値)
  • 原典の手順では、成績の悪かった設定を集計から外すと数値が良くなる余地がありました。 当社の方法では、どの設定を集計に入れても、偶然の散らばりは変わりません

数え方を変えると、どれくらい動くか

試行回数の数え方には幅があります。 そこで、0.5倍〜4倍に振ったときに数値がどう動くかも、 EAごとに公開します(下記)。

振っても結論が変わらないなら、その数値は数え方に依存していません。 逆に、試行回数を振ると結論が変わる場合は「判定できていない」と明記します。

測定の条件

項目 条件
ティックモデル 全ティック(M1足から生成)または実ティック
ロット 固定ロット(複利で測ると後期の取引に加重がかかり、1取引あたりの成績が歪むため)
コスト スプレッドとスワップを控除した後の値
パラメータ 出荷する値そのもの(見栄えの良い別の値では測りません)
期間 EAごとに製品ページへ明記します(パラメータ決定に使った期間と、使っていない検証期間を分けて表示)

EA別の実測値

ゴトー日&リバース(USDJPY)

項目 値
本物のエッジ確率 97.3%
実効試行数 N 51(内訳は下表)
まぐれで出る最高点の決め方 取引数を測った 35 通りの設定の取引数から計算(取引数を測っていない 16 通りには、測った中で最も少ない 1,064 取引を当てる)
パラメータを決めた期間 2016年1月〜2026年9月
決定に使っていない検証期間 2012年1月〜2015年12月

N の内訳(合計 51)

数えたもの 数 備考
最適化で評価した組み合わせ 0 このEAは最適化を行っていません(最適化できる連続的なパラメータを持たないため)
開発の途中で成績を比べた設定 49 最初の設計と、土台にした先行EA・同じ考え方から生まれた案で比べた 25、その後に生まれた案 2、このEAの改善(買う時刻・決済の時刻など)で比べた 22
検証手順の設計選択 2 最適化を行わない選択 / 確率の計算に使う期間を、設定を選んだ期間全体にした選択

数えるのは、新たに測定を行った試行です。判定基準の見直しなど、新たな測定を伴わない変更は N に数えません。

数え方を変えたときの動き

振る対象 ×0.5 ×1(採用値) ×2 ×4
試行回数 N 99.1% 97.3% 92.1% 85.1%

判定できていません。 試行回数を 2倍に数えると、当社の合格ラインを下回ります。 数え方しだいで結論が変わるため、このEAについて「まぐれではない」とは言い切れていません。

比較: 原典の手順で計算した値

項目 値
本物のエッジ確率(原典の手順) 0.6%
設定間のばらつき(取引数を測った 35 通りの成績の実際の散らばり) 0.0747
ばらつきを ×0.5 / ×1 / ×2 / ×4 に振ると 82.6% / 0.6% / 0.0% / 0.0%

この EA では、原典の手順のほうがはるかに低く出ます。比べた設定の中に、成績の大きく違う設定 (別の通貨ペアや別の時間帯で売買する設定)が含まれており、その実力の差が設定間のばらつきを大きくして、 「まぐれで出る最高点」を押し上げるためです(下の「この指標の限界」5)。

この指標の限界

公開する以上、弱いところも書きます。

  1. 試行回数 N は当社の申告値です。 第三者が検証する手段はありません。 だから内訳・数え方・感度を出しています(設定間のばらつきは各設定の取引数から計算で決まります)
  2. 比較対象がありません。 他社が同じ数値を公開していないため、「この数字が業界的に 良いのか悪いのか」を判断する材料が今はありません。当社が先に出すことで作ろうとしています
  3. この指標は「まぐれでない可能性」しか測りません。 将来の利益を示すものではありません。 相場が変われば、優位性そのものが失われることがあります
  4. 算出コードは過去に4回、値が動いています(うち3回は実装の不備でした)。 同じ事故を繰り返さないため、算出コードには回帰テストを置き、 入力の食い違いを検出したら計算を止めるようにしています
  5. 設定間のばらつきの決め方は、原典の手順から変えています。 原典の手順で計算した値も併記しますが、 二つの値は大きく食い違うことがあります。 設定どうしの実力差が大きい場合は原典の手順のほうが低く、 設定どうしが同じ取引を多く共有している場合は当社の方法のほうが低く出ます(当社の方法は、設定どうしを独立とみなすためです)
  6. 一般に、相場の優位性は時間とともに薄れていく傾向があります。 同じ動きを利用する参加者が増えたり、 相場の構造が変わったりするためです。この指標は過去のデータについて「まぐれでない可能性」を測るもので、 選んだ後に優位性がどれだけ薄れるかは含んでいません。 当社は検証期間の前半と後半を比べる別の検査で 薄れ方を確かめていますが、将来も同じ程度に保たれる保証はありません

併せてご覧ください

各製品ページには、この数値のほかに次の2つを必ず記載しています。

  • 停止ライン — 口座のドローダウンがこの値を超えたら停止してください、という基準
  • 推奨ロット — 上記の停止ラインが機能する前提となるロット

本物のエッジ確率が低い=買ってはいけない、ではありません。 不確実性が大きいという意味なので、推奨ロットを守り、停止ラインで止める前提で ご判断いただくための数値です。