ルックアヘッド・バイアス:わざと注入して値打ちを測った
執筆 chwoo · 仮想通貨トレード7年。2026年春から自動売買ボットを運用。 · · 更新
先読みバイアスとは、その時点ではまだ存在しなかった情報をバックテストが使ってしまうことです。バック テストが抱えうる最も危険な欠陥です。エラーを出さないからです。代わりに美しい資産曲線を出します。
どう起きるかを並べる代わりに、実際に注入しました。このサイトのエンジンはシグナルが出た足の 次の 足の始値で約定します。誠実な方式です。この記事のために、エンジンが知りえなかった価格で約定するように ローソク足データをわざと書き換え、それぞれの嘘がいくらの値打ちかを測りました。
それぞれのごまかしの値打ち
BTC 1時間足で戦略3つ、現実的なコスト(片道の手数料0.06%とスリッページ0.02%)、レバレッジ1倍、建玉比率 90%、2026年9月21日までのデータです。変えるのは想定する約定価格だけです。
| 戦略と約定の想定 | 取引数 | 勝率 | リターン | 最大DD |
|---|---|---|---|---|
| RSI 30 — 次の足の始値(誠実) | 699 | 38.3% | -79.2% | 85.2% |
| RSI 30 — シグナル足の終値 | 699 | 38.3% | -79.2% | 85.2% |
| RSI 30 — シグナル足の安値 | 628 | 60.8% | +13,596.4% | 15.9% |
| ボリンジャー — 次の足の始値(誠実) | 1,178 | 40.1% | -82.6% | 88.5% |
| ボリンジャー — シグナル足の終値 | 1,178 | 40.1% | -82.6% | 88.5% |
| ボリンジャー — シグナル足の安値 | 1,139 | 49.8% | +2,526.2% | 26.9% |
| MACD — 次の足の始値(誠実) | 2,573 | 32.4% | -70.2% | 92.3% |
| MACD — シグナル足の終値 | 2,573 | 32.4% | -70.3% | 92.3% |
| MACD — シグナル足の安値 | 2,573 | 43.0% | +657,482.9% | 26.3% |
約定をシグナル足の安値に移すと 3つの戦略すべてが損失から利益へ反転し、MACDは657,482.9%を出します。結果ではなくエラーメッセージとして読むべき数字です。これを信じて発表する 人はいません。大事なのはそれに付いてくるものです。
ドローダウンの列を見てください。誠実なMACDはドローダウンが92.3%なのに、ごまかした版は 26.3% です。勝率も32.4%から43.0%へ上がります。 先読みはリターンを膨らませるだけでなく、他のすべての統計を同時に健康そうに見せます。 だからレビューを通ってしまいます。ドローダウン26%・勝率43%の曲線は、バグには見えません。
誰もが警告するあの間違いは、ここではほぼ無害
ここからが意外なところです。各組の真ん中の行が、あの古典的な誤りです。ローソク足の終値で指標を計算して おきながら、その同じ終値で買ったと想定するものです。どのバックテストの入門記事もこれを警告します。 私たちの測定では、3つの戦略すべてで結果を 最大0.1ポイント しか変えませんでした。
これをはっきり言っておくのは、通用している助言が株式から輸入され、仮想通貨では検証されないまま繰り返されて いるからです。 終値か次の始値かは、あなたの仮想通貨バックテストが嘘をついている場所ではありません。 次の足で約定するのは依然として正しく、このサイトもそうしていますが、それだけを直してもバックテストは 誠実になりません。
被害が実際に大きくなる場所
同じRSIのルールに楽観的な約定をもう一度当て、時間足だけを4つに変えました。
| 時間足 | 誠実 | シグナル足の終値 | シグナル足の安値 | 膨らみ |
|---|---|---|---|---|
| 15分 | -91.9% | -92.1% | +172,130.8% | 172,222.7pt |
| 1時間 | -79.2% | -79.2% | +13,596.4% | 13,675.6pt |
| 4時間 | -41.9% | -41.9% | +1,988.3% | 2,030.2pt |
| 1日 | -13.1% | -13.1% | +78.0% | 91.1pt |
向きが直感と逆です。日足は15分足よりはるかに値幅が広いので、日足のごまかしのほうが値打ちがありそうです。 実際には 91.1ポイント対172,222.7ポイント です。
説明は足の大きさではなく複利です。1取引あたりの小さな偽の優位が、15分足戦略のはるかに多い取引数にわたって 繰り返されると、ばかげた総額へ掛け算されます。 先読みは、戦略が最も多く売買する場所でこそ最も危険です。 そしてそこは初心者が始める場所でもあります。
測定では消せない曖昧さ
きれいな答えのない場合がひとつあります。あるローソク足の高値が利確に届き、安値が損切りに届いたとき、 OHLCのデータではどちらが先だったか分かりません。バックテストは選ばなければならず、有利なほうを選ぶのは 名前が違うだけの先読みです。
このエンジンはそうした足を常に 損切り として判定します。悲観的な読み方です。平均すると結果が現実よりわずかに悪くなりますが、誤差はその向きに 出るほうを選びます。逆に判定する道具は、実際の約定が最も悪いボラティリティの高い足でこそ、より良い数字を 見せることになります。
バックテストでこれを確かめる方法
- 高い勝率と低いドローダウンが同居していたら疑うこと。 最初の表では、ごまかしがMACDのドローダウンを92.3%から26.3%へ下げながら勝率を上げました。その組み合わせ こそが目印です。
- どの足で約定するかを尋ねること。 答えはシグナルの次の足であるべきです。仮想通貨では聞かされていたほど重要ではありませんが、この問いに 答えられない道具には他の問題もあります。
- 同じ足で利確と損切りがぶつかったときどう処理するかを尋ねること。 答えが有利なほうだったり、答えがなかったりするなら、結果は不明な分だけ楽観的です。
- 高頻度の結果を最も疑うこと。 時間足の表は、取引が多い場所でバイアスが最も強く複利で効くことを示しています。
- 指標が確定した足だけを使っているか確認すること。 自分の過去の値を描き直すリペイントの指標は、このリストの他のすべての検査を通ってしまいます。
このサイトのエンジンは、独立に書かれたPythonの実装と取引ひとつひとつまで突き合わせて検証されています。 上の表の誠実な列が本当に誠実だと分かるのはそのためです。その交差検証は方法論のページに書いてあります。
参考資料
- Binance public market data (data.binance.vision) — The candle archive every number on this site is computed from.
- Binance klines endpoint — The raw response shows the open time, close time and close price a candle is only final at.