← Backtest 学習センター

条件を固定した戦略検証

条件をそろえてバックテストを比較する

結果を見る前に市場、データ、ルール、コスト、サイズ、約定仮定を固定し、比較可能な実験にします。

要点

二つの実行が同じ問いに答えるのは、銘柄、提供元、時間足、期間、売買方向、エントリー、決済、初期資金、ポジション size、手数料、スリッページ、損切り、利確、確定足ルールが同じときだけです。予定外の違いがあれば、成績表を並べても同じ実験ではありません。

良い比較では、結果を見る前に宣言した変数を一つだけ変えます。たとえば同じBTCUSDT 1時間足EMA(9/21)にRSI(14)>50を加える比較です。ETHや別期間の実行を同じ順位表に混ぜません。

研究の背景

TradingViewは銘柄、期間、入力、資金、手数料、スリッページ、証拠金、ブローカーエミュレーターの仮定を表示します。どれも取引列を変えるためです。scikit-learnのTimeSeriesSplitは時間順序を保ち、検証の前にギャップを置けます。

指標は、ある戦略・データセット・約定設定の条件付き結果です。エクスポージャーやcandle数が違う実行の高い収益率は、規則が優れている証拠ではありません。最初にフィンガープリントを照合し、その後で成績を読みます。

Backtest アプリでの設定例

LFL-001を作ります。BTCUSDT、1h、2026年1月〜6月、EMA(9/21)、long、資金10,000 USD、size 2%、SL 2%、TP 4%、手数料 0.10%、スリッページ 5 bps、確定足シグナルです。実行を保存します。

LFL-002として複製し、RSI(14)>50だけを追加します。結果を開く前に変更理由を書きます。提供元、足数、日付境界、engine versionが変わった場合は、別のcomparison groupに分けます。

条件をそろえてバックテストを比較する — Backtest アプリでの設定例: 結果を見る前に市場、データ、ルール、コスト、サイズ、約定仮定を固定し、比較可能な実験にします。
LFL-002として複製し、RSI(14)>50だけを追加します。結果を開く前に変更理由を書きます。提供元、足数、日付境界、engine versionが変わった場合は、別のcomparison groupに分けます。

結果の読み方

まず足数、期間、方向、コスト、サイズ設定、決済方式、規則フィンガープリントが一致するか確認します。次に取引、エクスポージャー、純損益、プロフィットファクター、平均R、ドローダウン、連敗、最大取引への依存を一緒に読みます。

filterでドローダウンが下がってもsampleも減ることがあります。win 比率が上がってexpectancyが下がることもあります。取引-offを明示し、候補を見る前に合格/不合格条件を決めます。

よくある誤り

実践チェックリスト

  1. 反証可能な仮説とgroup IDを書く
  2. market、提供元、時間足、期間を固定する
  3. rules、size、コスト、損切り、利確を固定する
  4. 予定した変数を一つだけ変える
  5. 成績より先にフィンガープリントを確認する
  6. sample、ドローダウン、プロフィットファクター、Rを同時に読む
  7. 外れ値と失敗も保存する
  8. 後のホールドアウトで再確認する

リスクに関する注意

Like-for-like比較は研究上の混同を一つ減らすだけで、安全性や将来収益を保証しません。Backtestは教育・研究用であり、金融助言、ブローカー、取引所、約定 serviceではありません。スプレッド、ギャップ、流動性、部分約定、遅延、資金調達料、regime変化により実損失はシミュレーションを上回り得ます。

関連ガイド

結果を見る前に市場、データ、ルール、コスト、サイズ、約定仮定を固定し、比較可能な実験にします。

調査資料

iOS 版 Backtest Trading

iPhone で検証を続ける

同じ設定を再実行し、各シミュレーション取引と戦略の根拠をアプリに保存できます。

App Store でダウンロード