まとめ

マーケットについて素晴らしいアイデアはあるものの、実際のお金を失うことなくそれを実践する方法がわからないと思いませんか?取引戦略をバックテストする方法を知ることは、優れたシステマティックトレーダーにとって不可欠な能力です。

バックテストの背後にある前提は、過去に機能したものは将来も機能する可能性があるということです。しかし、バックテストはどのように実行し、結果をどのように評価するのでしょうか?簡単なバックテストのプロセスを見てみましょう。

導入

バックテストは、独自のチャートおよび取引戦略を開発するための重要な要素の 1 つです。履歴データに基づくシステムを使用して、過去に発生した可能性のあるトランザクションを再構築します。バックテストの結果から、投資戦略が機能しているかどうかの大まかなアイデアが得られます。

バックテストとは何ですか?

まず、バックテストとは何かについて詳しく知りたい場合は、「バックテストとは何ですか?」の記事をご覧ください。 》

つまり、バックテストの主な目的は、あなたのトレードアイデアが機能するかどうかを示すことです。まずは過去の市場データを使用して、戦略のパフォーマンスを確認します。この戦略に可能性があるように見える場合は、実際の取引環境でも機能する可能性があります。

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

バックテストを開始する前に、自分がどのようなタイプのトレーダーであるかを判断する必要があります。あなたは裁量トレーダーですか、それともシステマティックトレーダーですか?

裁量取引は意思決定に基づいており、トレーダーは自分の判断でポジションをいつオープンおよびクローズするかを決定します。これは比較的緩やかで制限のない戦略であり、ほとんどの決定はトレーダーの当面の状況の評価に依存します。したがって、裁量取引ではこの戦略が厳密に定義されていないため、バックテストはそれほど重要ではありません。

もちろん、これは、裁量トレーダーであればバックテストや模擬取引をまったく使用してはいけないという意味ではありません。これは単純に、テスト結果がシステマティックトレーダーによって得られた結果よりも信頼性が低いことを意味します。

システムトレードはバックテストに適しています。システマティックトレーダーは、ポジションをいつオープンまたはクローズするかを定義して通知する取引システムに依存しています。システマティックトレーダーは戦略のほとんどの側面を制御しますが、ポジションのオープンとクローズのタイミングは完全に戦略によって決定されます。単純なシステム戦略は次の 2 つのステップとして考えることができます。

  1. AとBが同時に発生するとトランザクションが成立します。

  2. X が発生したら、トランザクションを終了します。

一部のトレーダーはこの方法を好みます。これにより、取引における感情的な意思決定が排除され、取引システムの収益性に対する合理的な保証が提供されます。もちろん、絶対的な保証はありません。

そのため、いつポジションをオープンまたはクローズするかについて、システムに特定のルールを設定することが重要です。戦略が明確に定義されていない場合、結果には一貫性がありません。ご想像のとおり、この取引スタイルはアルゴリズム取引の中でより人気があります。

プロセスを自動化したい場合は、バックテスト ソフトウェアを購入できます。独自のデータを入力するだけで、システムがバックテストを実行します。ただし、この例では、手動のバックテスト戦略を紹介します。少し手間がかかりますが、完全に無料です。

取引戦略をバックテストするにはどうすればよいですか?

このリンクから Google スプレッドシートのテンプレートを見つけることができます。この基本テンプレートに基づいて独自のテンプレートを作成できます。バックテスト スプレッドシートにどのような情報が含まれているかを知ることができます。トレーダーの中には 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ドルで購入

シグナルをチャートに重ねると次のようになります。

黄金交叉 - 死亡交叉策略。来源:TradingView

最初の取引では約 3,800 ドルの利益が得られますが、2 回目の取引では 2,900 ドルの損失が生じます。これは、実現損益が 900 ドルであることを意味します。

トレードも積極的に行っており、2020年12月時点で約9,000ドルの含み益があります。もし私たちが当初の戦略に固執していたら、次のデスクロスでポジションを閉じていたでしょう。

バックテスト結果を評価する

では、これらの結果は何を示しているのでしょうか?私たちの戦略は相応の利益をもたらすはずですが、これまでのところ目立ったパフォーマンスはありません。現在のオープントレードを実行することで実現損益を大幅に増やすことができますが、これではバックテストの目的が損なわれます。計画を守らなければ、結果は信頼できません。

たとえこれが単なる体系的な戦略であっても、その時代の特定の状況を考慮する必要があります。 9600ドルから6700ドルの不採算取引は、コロナウイルスのパンデミックによって引き起こされた2020年3月の暴落時に発生した。このようなブラックスワンの出来事は、あらゆる取引システムに大きな影響を与える可能性があります。このため、この損失が異常なのか、それとも戦略の単なる副作用なのかを理解するには、さらに過去を遡る必要があります。

これは、単純なバックテスト プロセスの例です。戻ってより多くのデータでテストしたり、他のテクニカル指標を組み込んだりすると、より強力なシグナルが得られ、戦略がより有望なものになる可能性があります。

しかし、バックテストの結果から他に何がわかるでしょうか?

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

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

  • 年間収益率: 1 年間にわたるこの戦略の収益率。

  • 利益と損失: システム内で利益が得られる可能性がある取引の数と、損失になる可能性が高い取引の数。

  • 平均取引価格: ストラテジーで実行した開始ポジションと終了ポジションの平均価格。

知っておいていただきたいのは、上記の例はバックテストの力を説明するのに十分ではないということです。どの指標を追跡するかは完全にあなた次第です。いずれにしても、セットアップについてトレーディングジャーナルに詳細を記録すればするほど、得られた結果から学ぶ機会が増えます。トレーダーの中にはバックテストを非常に厳格に行う人もおり、それが結果に反映される可能性があります。

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

結論

取引戦略の手動バックテストの基本プロセスを見てきました。ただし、過去のパフォーマンスは将来のパフォーマンスを示すものではないことを覚えておくことが重要です。

市場の状況は急速に変化しているため、トレーディング戦略を改善するには、これらの変化に適応する必要があります。データを盲目的に信頼することはできないことも覚えておく必要があります。常識は見落とされがちですが、結果を評価するときに非常に役立つツールでもあります。

参考文献

  • 仮想通貨スイングトレードの初心者ガイド

  • 裁定取引とは何ですか?

  • トレーディングジャーナルとは何か、そしてその使い方

  • 仮想通貨の短期取引とは何ですか?

  • 行動バイアスとは何ですか?行動バイアスを回避するにはどうすればよいでしょうか?