バックテストとは、システムトレーダーならよく目にするであろう言葉です。
これは、過去のテクニカルデータ(ヒストリカルデータ)を使って、システムトレードの戦略(ストラテジー)や、その他なんらかの投資ルールが、どのようなパフォーマンスを出すか、シミュレーションして検証することを言います。
バックテストは、システムトレードだけで重要とされる手法ではありません。むしろ、なんらかのルール、あるいは経験則にもとづいて投資を行っている投資家全てに役立つものと言えるでしょう。
目次
バックテストとは – 実際の相場データで検証
株式や日経225先物、オプション、FXなど、投資や投機を続けるうえで、なんらかのルールに基づいて売買を行っている投資家は多いはずです。
ここでいうルールというのは、株価の上下といったシンプルなものから、移動平均線を用いたゴールデンクロスやデッドクロス、ほかの指数や先行指標を用いたルール、あるいは月や季節のアノマリーに沿ったルールまで、様々なものが当てはまります。
そうしたルールが、本当に相場で通用するものかどうかを検証できる方法が、バックテストです。
バックテストの方法
バックテストとは、過去の株価データなどを使って、自分のたてた取引ルールがどのような損益になるかをシミュレーションし、結果を検証してみることをいいます。
バックテストの方法は、大きく分けると二つあります。チャート目視で検証する方法と、プログラムを利用する方法です。
チャート目視でバックテスト
投資を始めたばかりの投資家の多くは、長期チャートとにらめっこをして、自分の考えた取引ルールがどういう結果になりそうか、検証を試みたことがあるのではないでしょうか。
取引ルールがしっかり決めてさえあれば、これも立派なバックテストと言えます。人力バックテストと言ってもいいかもしれません。
パソコンやスマホでチャートさえ見られれば、どこでも、誰でも、すぐに取りかかることができるのが、この人力バックテストのメリットかもしれません。しかも、これによって相場観や株価の動き、取引や損益のイメージが鍛えられ、投資家として成長することもできます。
デメリットとしては、正確にやろうとすると短期間ぶんの相場しかテストできないこと、長期テストしようとするととてつもない時間がかかること、そして、どうしても主観が入ってしまうことでしょう。
とくに、客観的ルールだけではなく主観も入ってしまうという点は、十分注意すべきでしょう。
例えば、過去の下落相場で自分がうまく切り抜けられる、などと、自分の投資能力を過信してしまった場合などは、実際に下落相場が来たとき、シミュレーションと全く違う行動を取って大損を出してしまうこともあります。
プログラムを用いたバックテスト
もう一つ、大きく分けるなら、プログラムを利用したバックテストということになるでしょう。
こちらの手法で代表的なのは、バックテスト専用のツールを使った方法でしょう。こうしたツールには、有料のものも無料のものもあり、また機能もそれぞれ異なっています。
こうしたツールを用いるメリットは、まずなにより、時間を大幅に節約できることでしょう。人力バックテストだと、ひとつのルールの検証に数週間から数ヶ月かかるケースも珍しくありませんが、ツールを使えば、(設定さえ済めば)まさに一瞬で、何十年分でもバックテスト結果がわかります。
また、バックテスト用ツールは、それぞれに検証項目が設けられており、自分で検証ポイントを考えて羅列する必要がないのは、大きなメリットでしょう。ドローダウン、取引回数、プロフィットファクターなど、重要指標がほぼ網羅されていることが多く、きわめて客観的で正確性の高いデータを手に入れることができるでしょう。
プログラムと人力の中間? – エクセル方式
このプログラム方式と、さきほどの人力バックテスト方式の、ちょうど中間に位置するようなバックテストもあります。エクセルなど表計算ソフトを用いたバックテストです。
こちらは、検証したいテクニカルデータと、自分の投資ルールを数式化できるエクセル知識がある人なら、比較的かんたんにバックテストを済ませることができるでしょう。
といっても、ルールが複雑だったり、様々な指標をはじき出したりしたい場合は、エクセルで太刀打ちするのは難しいかもしれません。おそらく、専用プログラムを用いた方法の方が圧倒的に有利でしょう。
それほどルールが複雑でなく、また検証したい指標も損益やエクイティカーブ(資産増減)といったシンプルなものに限る場合は、気軽にバックテストできてしまう、という点が、大きな長所といえます。
たとえば、銘柄を限った積立投資や定額長期投資のルールを検証したい、といったケースでは、この方法が合っているかもしれません。
スポンサーリンク
バックテストとシステムトレード
バックテストが最も重要になるケースは、システムトレードを行うとき、もしくはトレーディングシステムの比較検討を行うときでしょう。
バックテストは全ての根拠となる
システムトレード関連のサービスやツール、トレーディングシステムなどでは、プロフィットファクター(→こちらに解説があります)の情報などとあわせて、バックテスト結果が開示されています。
その理由は、バックテストが、プロフィットファクターや期待される損益、トレーディングシステムの信頼性・安定性など、全ての根拠になるものだからです。
言ってみれば、プロフィットファクターがどんなに優れていても、バックテストが十分されていなければ、そのトレーディングシステム(あるいはシステムトレードのルール・ストラテジー)は信用すべきではない、ということになります。
バックテストを見るときのポイント
バックテストデータを見るときは、下記の点に気をつけましょう。
1. バックテスト期間
2. 大暴落相場を含んでいるか
3. 取引頻度
1. バックテスト期間
バックテスト期間は、長ければ長いほどいい、と言ってよいでしょう。
例えば、プロフィットファクターがきわめて高いトレーディングシステムがあったとします。しかし、バックテスト期間が直近1ヶ月しかされていなかったとしたら、どうでしょう?
こんなケースでは、相場環境が変わる(トレンドの変化や調整、時代ごとの投資方法の変化など)と、とたんに利益を出せなくなったりします。
一方、例えば直近10年間の株価データを使ってバックテストがされていれば、安心感は飛躍的に高まります。たとえば2018年から10年間なら、2008年のサブプライム・ローン世界金融危機以降、2015年ころのチャイナ・ショック暴落や、2017年の堅調相場など、様々なトレンドでの検証が行われていることになり、データの信頼性が高いと言えるでしょう。
2. 大暴落相場を含んでいるか
とくに、今述べたような大暴落相場でもバックテストが行われているかどうかは、重要なポイントです。
比較的チャートが規則的に動くレンジ相場で通用するストラテジーと、大暴落のときに通用するストラテジーは、必ずしも同じではありません。両方の相場でも通用するトレーディングシステムやストラテジーを導入するためには、レンジ相場でも暴落相場でもバックテストがなされているか、注意する必要があります。
3. 取引頻度
例えば、過去10年のバックテストがなされていても、年に10回しか取引が行われていないようであれば、データの信憑性は低いと言わざるを得ません。というのも、統計的データとして見るには、データ量(取引回数)が少すぎるからです。
このため、バックテスト期間や、テスト期間に含まれている相場トレンドだけではなく、取引頻度にも注意しましょう。母数となるデータ(=バックテストにおける取引回数)が、最低でも200かそれ以上でないと、データをうのみにするのは避けるべきでしょう。
また、当然ですが、取引頻度が、自分の投資スタイルと合っているかも、注意してみたほうがよいでしょう。バックテストでよい理論勝率になっていても、自分がそのとおりに売買できないようであれば、期待通りの勝率は出にくくなります。
スポンサーリンク
利益最大化のために
バックテストは、システムトレーダーには馴染み深い言葉と言えますが、経験の浅い個人投資家など、あまり馴染みのない人もいるかもしれません。
しかし、システムトレーダーのみならず、一般的な個人投資家であっても、ときにバックテストが強力な助けとなります。というのも、ほとんどの投資家は、一定のじぶんなりのルール(経験則)に従って売買取引を行うようになるからです。
そのルールを数式、システム、あるいは明文化し、本当にそのやり方で利益が出るのか、どこかのパラメータを調整することで利益をより大きくできないか、そうしたことを容易に検証し、目に見える形にしてくれるのが、バックテストの最大の強みと言えるでしょう。