要約

市場に素晴らしいアイデアがあると思いますが、資金をリスクにさらさずにそれをテストする方法がわからないですか?取引アイデアをバックテストする方法を知ることは、良い体系的トレーダーの基本です。

バックテストの基本的な前提は、過去にうまくいったことが将来もうまくいく可能性があるということです。しかし、これを自分でどのように行うべきか、結果をどのように評価すべきかを見ていきましょう。シンプルなバックテストプロセスを進めていきましょう。

はじめに

バックテストは、自分自身のチャート作成と取引戦略を開発するための重要な要素の一つです。これは、過去に実際に行われた取引を歴史データに基づいて再構築することを含みます。バックテストの結果は、投資戦略が有効かどうかの一般的なアイデアを提供するはずです。

バックテストとは?

まず、バックテストについてもっと詳しく知りたい場合は、私たちの「バックテストとは?」の記事をお読みください。

要するに、バックテストの主な目的は、あなたの取引アイデアが有効かどうかを示すことです。過去の市場データを使用して、戦略がどのように機能したかを確認することから始めます。戦略に潜在能力があるように見えれば、実際の取引環境でも効果的である可能性があります。

バックテストの前に何をすべきか?

バックテストを開始する前に、あなたがどのようなトレーダーであるかを確認する必要があります。裁量トレーダーですか、それとも体系的トレーダーですか?

裁量取引は意思決定に基づいています — トレーダーはいつ入るべきか、いつ退出すべきかを自身の判断で決定します。これは比較的緩やかでオープンエンドな戦略であり、ほとんどの決定はトレーダーが現在の状況を評価に基づいて行います。そのため、裁量取引に関しては戦略が厳密に定義されていないため、バックテストの関連性は低くなります。

もちろん、裁量トレーダーであっても、バックテストやペーパートレードをまったく行わないということではありません。単に、結果が体系的な取引と比べて通常ほど信頼できない可能性があるという意味です。

体系的取引はバックテストにより適しています。体系的トレーダーは、入場と退出の正確なタイミングを定義し、指示する取引システムに依存します。体系的トレーダーは戦略のほとんどの側面をコントロールできますが、シグナルは完全に彼らのために決定されます。シンプルな体系的戦略を2つのシンプルなステップで考えることができます:

  1. AとBが同時に発生した場合、取引に入る。

  2. その後、Xが発生した場合、取引から退出します。

このアプローチを好むトレーダーもいます。感情的な決定を取引から排除し、取引システムが利益を上げるという合理的な保証を提供できます。もちろん、保証はありませんが。

そのため、ポジションに入るときや退出するときの非常に具体的なルールをシステムに持つことが重要です。よく定義されていない戦略は、一貫性のない結果をもたらします。予想通り、これはアルゴリズム取引でより人気のある取引スタイルです。

プロセスを自動化したい場合は、購入できるバックテストソフトウェアがあります — 自分のデータを入力すれば、ソフトウェアがバックテストを行います。しかし、この例では、手動バックテスト戦略を採用します。これは少し手間がかかりますが、完全に無料です。

取引戦略をバックテストする方法は?

このリンクを使用してGoogle Sheetsのスプレッドシートテンプレートを見つけることができます。これは、自分自身のテンプレートを作成するための出発点として使用できる基本的なテンプレートです。バックテストシートがどのような情報を含むかの一般的なアイデアを提供します。一部のトレーダーはExcelを使用したり、Pythonでコードを書いたりすることを好みます。厳密なルールはありません。必要なだけのデータを追加し、他の有用だと思われる情報を追加できます。

日付

市場

サイド

エントリー

ストップロス

テイクプロフィット

リスク

リワード

損益

12/08

BTCUSD

ロング

$18,000

$16,200

$21,600

10%

20%

3600

12/09

BTCUSD

ショート

$19,000

$20,900

$13,300

10%

30%

-1900


シンプルな取引戦略をバックテストしてみましょう:

  • ゴールデンクロスの後の最初のデイリークローズで1ビットコインを購入します。ゴールデンクロスとは、50日移動平均線が200日移動平均線を上回ることを指します。

  • デスカロスの後の最初のデイリークローズで1ビットコインを売却します。デスカロスとは、200日移動平均線が50日移動平均線を下回ることを指します。

ご覧の通り、私たちはこの戦略が有効な時間枠も定義しました。つまり、4時間チャートでゴールデンクロスが発生しても、それを取引シグナルとして考慮しません。

この例の期間は2019年の初めから始まります。しかし、より正確で信頼性のある結果を得たい場合は、ビットコインの価格動向の歴史をもっと遡ることができます。

さて、指定された期間にこのシステムが生成する取引シグナルを見てみましょう:

  • 約$5,400で購入

  • 約$9,200で売却

  • 約$9,600で購入

  • 約$6,700で売却

  • 約$9,000で購入

チャートに重ね合わせた私たちのシグナルは次のように見えます:

Golden cross-death cross strategy. Source: TradingView

私たちの最初の取引は約$3,800の利益を上げ、一方で2回目の取引は約$2,900の損失をもたらしました。これは、私たちの実現損益が現在$900であることを意味します。

私たちは現在もアクティブな取引を行っており、2020年12月時点で約$9,000の未実現利益があります。最初に定義した戦略を守るなら、次のデスカロスが発生したときにこれを閉じます。

バックテスト結果の評価

では、これらの結果は何を示していますか?私たちの戦略は合理的なリターンをもたらしたはずですが、これまでのところ特に目立ったものはありません。現在のオープン取引を実現すれば、実現損益を劇的に増加させることができますが、それではバックテストの目的が失われます。計画を守らなければ、結果も信頼できません。

これは体系的な戦略だとしても、文脈を考慮することも重要です。$9,600から$6,700の損失は、2020年3月のCOVID-19の崩壊時に発生しました。このようなブラックスワンイベントは、どんな取引システムにも大きな影響を与える可能性があります。これは、この損失が異常値なのか、戦略の副産物なのかを確認するために、さらに遡る価値がある別の理由です。

これはシンプルなバックテストプロセスの一例です。この戦略は、より多くのデータを使ってテストしたり、他のテクニカル指標を含めたりすることで、有望な可能性があるかもしれません。

でも、バックテスト結果が他に何を示すことができるのでしょうか?

  • ボラティリティ指標:最大の上昇とドローダウン。

  • エクスポージャー:戦略を実行するために、全ポートフォリオからどれだけの資本を割り当てる必要があるか。

  • 年率リターン:戦略の年間を通じたパーセンテージリターン。

  • 勝敗比:システム内の取引のうち、どれだけが勝ちに結びつく可能性があるか、どれだけが負けに結びつくか。

  • 平均約定価格:戦略を使用して満たされたエントリーとエグジットの平均価格。

なお、これらの例は網羅的なリストではないことを考慮してください。追跡したい指標は完全にあなた次第です。いずれにせよ、取引日誌に関連するセットアップの詳細を多く含めるほど、結果から学ぶ機会が増えます。一部のトレーダーはバックテストに非常に厳密であり、その結果に反映される可能性が高いです。

最後に考慮すべきことは最適化です。バックテストの記事を読んだことがあれば、バックテストとフォワードテスト(またはペーパートレード)の違いがわかるでしょう。

結論

私たちは取引戦略の手動バックテストを実行する基本的なプロセスを見てきました。しかし、過去のパフォーマンスは将来のパフォーマンスを保証しないことを忘れてはいけません。

市場環境は変化し、取引戦略を改善したい場合はその変化に適応する必要があります。また、データを盲目的に信頼しないように注意が必要です。結果を評価する際には常識が役立つ — とはいえ、しばしば見落とされがちなツールです。

さらなる読書

  • 初心者のための暗号通貨スウィングトレーディングガイド

  • アービトラージ取引とは?

  • 取引日誌とは何か、どのように使用するのか

  • 暗号通貨におけるスキャルピング取引とは?

  • 行動バイアスとは何か、どのように回避できるのか