backte.st

バックテストの先読みバイアスと約定タイミング

持っていないはずの情報を使うとバックテストが水増しされる仕組み、次の始値で約定することが重要な理由、遅延エントリーチェックでわかること。

先読みバイアス(ルックアヘッド・バイアス)は、判断の時点では手に入らなかったはずの情報をバックテストが使ってしまうときに起きます。役に立たないルールを素晴らしく見せることがあり、意外なほど簡単にうっかり入り込みます。

よくある入り込み方

Backte.st での対策

エンジンは 確定した足 のシグナルだけを読み、注文は 次の始値 で約定させます。月曜の終値で発生したルールは火曜の始値で約定します。これは現実的に得られる最初の価格です。

これは一部のバックテストツールより厳格なので、その分結果が悪く見えることがあります。それは意図的なものです。

遅延エントリーチェック

正直な約定でも、戦略が正確なタイミングに大きく依存していることがあります。遅延エントリー チェックは、すべての注文を 1本遅らせて、シグナル後2本目の始値で約定させます。

よく似た落とし穴:生存

先読みバイアスは、いつ それを知っていたかの問題です。近い親戚が、どの 市場がこの先も存在するかを知っていたという問題です。今日の勝者を選んで昨日のデータで戦略をテストすることは 生存者バイアス です。

チェックリスト

  1. ルールが使うデータはすべて、判断の時点で知ることができたか?
  2. 約定はシグナルの後、実際に得られる価格で行われているか?
  3. 1本の遅れがあっても結果は生き残るか?

ラボ で好きな戦略を実行し、遅延エントリーのリターンと基本の結果を比べてください。

ラボで試す

コード不要で指標から戦略を組み立て、いくつかの市場で実行して、このチェックを自分のルールで確かめましょう。無料で、ブラウザ内で動きます。

ラボを開く