バックテスト
バックテストとは、過去の価格に取引ルールを適用し、手数料を差し引いた結果を確認することです。定義、用途、よくあるミスを解説します。
定義
過去の価格に取引ルールを適用し、どのような結果になったかを確認します。できれば手数料とスリッページを反映し、コインをそのまま保有した場合と比較します。
バックテストとは、過去の価格に取引ルールを適用し、どの取引が行われ、各取引にいくらかかり、口座残高がどう変化したかを確認することです。コストを差し引いたうえで、そのルールが過去に機能したかどうかはわかりますが、今後も機能するかどうかはわかりません。
例
「24時間以内にBTCが5%下落したら$50分を購入し、購入価格から4%上昇したら売却、6%下落したら損切り」というルールを、Binanceの90日分の価格データでテストします。各注文に0.1%の手数料と0.05%のスリッページを適用します。テストでは、9回の取引、手数料控除後の期間中の結果、その間の最大下落幅に加え、BTCを単純に保有した場合の同じ数値も表示します。これは説明用の例であり、実際の結果ではありません。
重要な理由
バックテストは、よくないアイデアを見極める最も低コストな方法です。手数料を差し引いたうえで過去2年間に損失を出したルールは、実際のお金を投じる候補として適切とは言いにくいでしょう。ただし、テスト結果は実態より良く見えることがあります。手数料を除外する、単一期間だけでテストする、過去に合うよう数値を調整するといった方法では、結果が実態より良く見えてしまいます。
TradeCorgiでの活用方法
ルールを確定すると、すべての戦略がバックテストされます。テストには必ず、利用する取引所のティアに応じた手数料、スリッページ、最小注文数量を含めます。結果と同じ規模での最大下落も表示し、コインを保有し続けた場合と比較します。対象となる過去の期間はプランによって異なります。Sandboxは90日間、Copilotは2年間、Autopilotは4年間、Proは取引所の全履歴です。バックテストの後に利用できるのはペーパートレードであり、いきなり実際の取引が始まることはありません。