FXシステムトレード講座
システムトレードとは?
システムトレードとは、株や為替などで相場の取引を一定のルールに基づいて機械的に取引することです。 システムトレードと聞くと何やら難しいもののような気がすると思いますが、ルールが決まっていて、 そのルールを守って取引しているなら、それはシステムトレードになります。
例えば、ルールが決まっているのならば、テクニカル分析だけでなく、 ファンダメンタル分析を主としている場合でも、システムトレードになります。 逆に一定のルールを持たずに、その場その場で臨機応変に対応する取引を裁量取引と言います。 どちらの方が良いかは、それぞれメリット、デメリットがありますので一概には言えませんが、 感情を上手くコントロール出来ない人はシステムトレードの方が向いていると思います。
例を挙げると、毎日レートを見ては一喜一憂する、損切りがなかなか出来ない、 小さくコツコツ儲けて大きく損を出す、損失を出し続けていても いつか一発逆転出来ると根拠も無く言っている人などです。
投資の鉄則は損小利大なのですが、人間というのは感情によって、 この鉄則を守るのが困難なように出来ています。システムトレードのメリットは色々とあるのですが、 この感情のコントロールをサポートしてくれるところが、実はシステムトレードの一番の利点です。 システムトレードでは、ルールさえ決めておけば、レートが上がろうと下がろうとルール通りに決済するので、 レートに一喜一憂することも無く、取引によるストレスも少ないです。
しかし、いくら一定のルールに基づいて機械的に取引すると言っても売買サインが出たときに実際に売買するのは人間です。 相場の状況によっては自分のルールが信じられずに売買を行うのを躊躇することがあると思います。 それを解決してくれるのが、完全自動売買です。
完全自動売買とは?
システムトレードの最大の利点は、感情のコントロールをサポートしてくれるところです。 人間というのは、どれだけ優秀な売買ルールを持っていても、実際に自分のお金が減ったり増えたりしているのを見ると、 欲と恐怖によって感情のコントロールが出来なくなり、非効率な行動をしてしまいます。 それならば、出来るだけ感情が入る余地をなくしてしまえば良いという結論に達します。 それが、完全自動売買です。
完全自動売買とは、仕掛けや手仕舞いまで完全に自動にして、本人がその場にいなくても パソコンを起動しているだけで取引が出来るようにすることです。 売買ルールをプログラムして、後は仕掛けから手仕舞いまでを全てパソコンに行ってもらいます。 一度完全自動売買のシステムを作ってしまえば、パソコンの電源を入れてツールを起動しておくだけで、 あとは寝てようが外に行ってようが何をしていても勝手に取引してくれますので、 かなり時間の節約になります。システムトレーダーがシステムの製作以外でやることは、 毎日どれだけ取引したか、損益はどうだったのかを見るだけです。
これは時間が節約できるのもそうですが、パソコンの前にいないことによって 値動きに一喜一憂しなくてもよくなるので、ストレスがかなり減ります。 そしてこれが完全自動売買の一番の利点ですが、パソコンの前にいませんので、 どのような相場でも自分のシステムのルールが信じられず躊躇するということがありません。 システムはどのような相場でも、システムの売買ルールを忠実に実行します。
売買の決断をする必要がなくなりますので、ストレスが激減しますし、 売買ルールを忠実に実行していますので、これで最終的に損失を出した場合は、 その売買ルールが間違っていたことになりますので、失敗した時の理由がすぐに分かります。
バックテストとは?
株や為替などの相場の取引を行っている人は、何かしらルールを持っていると思います。 例えば、移動平均線のクロス、ローソク足の酒田五法、フィボナッチ係数など人によって手法は千差万別だと思います。 その手法が本当に使えるかどうかを確かめるために皆さんはどのように検証しましたか? 私は、裁量取引をしていた頃は実際にチャートと照らし合わせて見て確かめていました。 物凄く面倒だったのを覚えています。しかもこの方法だと短期間しか調べることしか出来ません。
もっと簡単に、しかも長期間の検証を出来たら良いのにと思っていました。 それを可能なのがバックテストです。バックテストとは、ツールを利用して、 その売買ルールが過去の相場で通用したかどうかを調べることです。 ツールを使用すれば、数年間分のチャートの検証も数秒で終了します。
実際にバックテストをしてみれば分かるのですが、 今現在儲かっているシステムでも長期的に見れば、たまたまそのシステムが現在の相場に マッチしていただけで、長い期間ではかなりの損失を出していたことなどよくあります。 過去の相場で儲かったからと言って、現在の相場でも確実に儲かるわけではありません。
それでも過去のデータから最大のドローダウン(一番酷いときでどれだけ資産が減ったか)、 期待値(どれだけ投資したら幾ら儲かるという確率)などが分かり、未来の損益を予想しやすくなります。 システムトレーダーはまずこのバックテストをして、リスクが小さくてリターンが大きいシステムを開発します。 そして、デモトレード(架空口座での取引)を行ってから、やっと実際の取引を行います。 デモトレードの段階でバックテストでは優秀なシステムでも 実際の相場では使えなかったシステムというのは沢山あるものです。
それでも儲かるかどうかまったく分からないシステムよりも、 儲かる確率が高いシステムを試した方が実際に儲かるシステムも出来やすいです。 このように、バックテストとは現在使っているシステムを検証するためにも、 そして、これから儲かるシステムを作るためにも欠かせない重要な機能です。
ドローダウンとは?
ドローダウンとは、一時的に最大資産から落ち込んだ場合の下落率を表します。 簡単に言うと、口座に入っている資産からどれぐらいの損失が出たか、ということです。 例えば、資産がその時点で100万あり、ドローダウンが10%の場合は一時的に 資産が90万まで落ち込んだということになります。
ドローダウンの中でも一番重要なのは、最大ドローダウンです。最大ドローダウンは、 ドローダウンの中でも一番大きい下落率のものです。バックテストで過去の相場を検証した結果、 その時点で口座に入っている資産を元に下落率の割合が一番高かったものです。 この最大ドローダウンは、そのシステムの資金管理をする上で欠かせません。 例えば、1年間で資産が数倍にも増えるシステムが在ったとします。
物凄く優秀なシステムのように感じますが、最大ドローダウンが50%以上あった場合は、 おそらく実際の運用では使えないでしょう。最大ドローダウンというのはこれから更新するものです。 バックテストの結果最大ドローダウンが50%だった場合、実際には2倍ぐらい ドローダウンがあるかもしれないと用心しておくのが無難です。 50%の2倍は100%なので、もし最大ドローダウンが更新されたら破滅する可能性がありますね。
そして、もし最大ドローダウンが更新されなくても実際の運用ではこのシステムは使えないと思います。 実際にそのシステムが儲かるシステムでも、50%のドローダウンに耐えられる人はそうはいません。 大抵の人は最終的にドローダウンの恐怖に負けて、そのシステムを使うことを途中で止めてしまうと思います。 理想的なシステムは、精神的にほとんど負担をかけずに日々淡々と利益を出して行くシステムです。 最大ドローダウンは10%以下が理想的です。最大ドローダウンが高くなると、 システム的にもリスクが高くなりますし、精神的にも耐え難くなります。
先程も書きましたが、実際はバックテスト以上に最大ドローダウンが広がるのは頻繁にありますので、 リスク管理は余裕を持って行うのが良いと思います。
プロフィットファクターとは?
プロフィットファクター(PF)とは、総利益が総損失の何倍かを示すデータです。 別の言い方をすると、期待値のようなものです。計算式は下記のようになります。
プロフィットファクター = 総利益 / 総損失
例えば、総利益が200万、総損失が100万なら、プロフィットファクターは2.0になります。 総トレードで負け越していれば1.0以下、勝ち越していれば1.0以上になります。 このプロフィットファクターは、システムの優劣を判別する上でドローダウンと同じほど大切なものです。 例えば、総利益が100万、総損失が50万のAシステムと総利益が10万、総損失が4万のBシステムがあった場合、 どちらのシステムの方が良いシステムだと思いますか?
本当はドローダウンも検討しなければならないのですが、プロフィットファクターだけで見た場合 Bシステムの方が優秀です。何故なら、レバレッジを10倍にすれば、純利益が10万×10で100万になり Aシステムと同じになり、純損失が4万×10で40万になり、Aシステムの50万より純損失が少なくなります。 このように、システムを評価する上で純利益はあまり重要な要素ではありません。 レバレッジを増やすことで、いくらでも純利益は増やせるからです。
しかし、実際にそんなことをしたら純損失も増えて、リスクも増加します。 ですので、実際にシステムを評価するときは純利益よりもリクスリターン両方が含まれている プロフィットファクターを重要視します。次に、プロフィットファクターの見方です。 プロフィットファクターは、1.0より大きい数値になるほど、良いシステムになります。 1.0以下のシステムはトレードをすればするほど、資金が減っていきますから論外です。
理想は2.0以上のシステムです。勿論、高ければ高いほど良いのですが、 あまりに高すぎるとカーブフィッティング(過度の最適化)している可能性がありますので、 3.0以上ある場合はある程度疑ってみた方が良いと思います。
カーブフィッティングとは?
カーブフィッティングとは、システムを過去の相場にぴったり合うように過剰に最適化することです。 過去の相場に合うようにシステムを作るので、バックテストの成績は優秀になります。 しかし、実際の取引で使うと過去と未来は同じではありませんので、大抵の場合、バックテスト通りに行きません。
例えば、ドル円が115円から120円の間を往復しているだけの期間があったとします。 115円で買って、120円で決済してドテンで売り、115円になったら決済して ドテンで買いというルールのシステムを作った場合、この期間だけでは物凄く優秀な成績のシステムが出来ます。
勿論、このシステムはこの横ばいの期間が終われば、役に立たないシステムになります。 流石にここまで極端なカーブフィッティングをしている人はいないと思いますが、 似たようなことをしている人はたくさんいると思います。
例えば、移動平均の期間をより利益を上げる期間に変更する、MACDのパラメーターを色々と変えてみる、 単体のルールではダマシによく引っかかるからフィルター(売買ルールの限定条件)を追加してみる、 RSIの買いの条件を40%以下から20%以下にしてみる等です。 ある程度、テクニカル指標を使っている人ならば思い当たる節があると思います。
このように少しでもバックテストで利益を上げようとパラメーターを最適化して行って、 行き過ぎるとカーブフィッティングになります。 カーブフィッティングされたシステムは、過去の相場にぴったり合うように作られているので、 未来の相場では役に立たないことが多いです。「システムはシンプルな方が良い」とよく言われますが、 あまり複雑になるとカーブフィッティングする可能性が高いので、このように言われる一因になっています。
しかし、過去の相場に合わすべきではないと言うとバックテストの存在意義がなくなります。 実際には最適化とカーブフィッティングの境界線は曖昧です。その境界は経験で見極めるしかありません。 出来るだけカーブフィッティングを避けるために、下記のような方法があります。
・長い期間で検証して、いくつもの短い期間のバックテストで試してみる。
・システムの売買ルールを出来るだけシンプルにする。
・フィルターをあまり使用しない。
・明確な理由無しに、特定の通貨、特定の時間足でしか役に立たないシステムを作らない。
カーブフィッティングは、特定の期間ではそのシステムを優秀にしますが、最終的にはそのシステムを駄目にします。 皆さんもシステムを作るときはカーブフィッティングに気をつけて下さい。
フィルターとは?
一般的にフィルターとは、いらない物を取り除くもののことを言います。 システムトレードでのフィルターも同じで、いらない取引を取り除くのがフィルターです。
例えば、移動平均線のクロスで売買するシステムを作ったとします。 しかし、バックテストをしてみるとある特定の月だけ成績がとても悪かったので、 その月だけ売買しないようにしました。このように、売買ルールを限定させる条件がフィルターです。 フィルターは、売買ルールを限定させることによって損をする取引を減らすことが出来ます。 フィルターを複数つけて行けばリターンはそのままでリスクは極端に少なく出来ます。
実際にその通りになったら夢のような機能なのですが、勿論デメリットもあります。 フィルターのデメリットは、売買ルールを限定させていますので、 システムがカーブフィッティングする可能性が高くなります。 フィルターを複数つけるということは、より過去の相場にぴったり合うようにシステムを作っているということになります。 カーブフィッティングしてしまったシステムは過去の相場ではとても優秀な成績を出します。
しかし、未来の相場では使えない可能性が高いと言えます。 このようにフィルターは便利な反面、デメリットもあります。 フィルターを使う場合は、カーブフィッティングにならないかどうかを考えて使うことが重要です。
システムトレードのメリットとは?
昔、裁量取引をやっていた頃、上がると思って持っていた通貨が急激に下がって、 あまりにも下がりすぎて動揺して手仕舞うことが出来なかったことがあります。 毎日、胃がキリキリと痛みながら、頼むから上がってくれと泣きそうになりながら時間がある時は チャートをずっと見ていました。結局、最後はかなり下がったところで仕方なく損切りして、大分損をしました。
投資をやったことがある人なら、一度はこんな経験があるのではないでしょうか? 何故、動揺して損切りが出来なかったのかというと、感情のコントロールが出来ていなかったからです。 投資の鉄則は損小利大なのですが、人間というのは感情によって、この鉄則を守るのが困難なように出来ています。 この感情のコントロールをサポートしてくれるところが、実はシステムトレードの一番の利点です。
システムトレードでは、ルールさえ決めておけば、上がろうと下がろうとルール通りに決済してくれるので、 急激に下がってしまって塩漬け状態にすることもなければ、それによるストレスもありません。 他に、時間が節約できる、リスク・リターンを明確にしやすい、失敗したときに理由が分かりやすい等があります。 一度システムを作ってしまえば、パソコンの電源入れてツールを起動しておくだけで、 あとは寝てようが外に行ってようが何をしていても勝手に取引してくれます。
時間が節約できるのもそうですが、パソコンの前にいないことによって値動きに一喜一憂しなくてもよくなるので、 ストレスがかなり減ります。 リスク・リターンが明確にしやすいというのは、過去のデータから最大のドローダウン(一番酷いときでどれだけ資産が減ったか)、 期待値(どれだけ投資したら幾ら儲かるという確率)などが分かり、未来の損益を予想しやすくなります。 失敗した時に理由が分かりやすいというのは、ルールが決められていて、完璧にそのルールを守っているわけですから、 そのルールが間違っているわけです。
裁量取引の場合は、その時その時で臨機応変にしているので、何処が間違っているか分かりにくいです。 その点、システムトレードはルールさえ見直せば良いので、かなり楽です。 システムトレードのメリットは大体こんなところです。
システムトレードのデメリットとは?
逆にデメリットは、システムトレードを作るのに知識と時間がかかるということです。 ただこれは、最初だけです。一度システムの作り方を覚えれば、次からは簡単に別のものが作れます。
知識は、出来るだけ分かりやすいように、これからここに書いていこうと思っていますので、 興味がある方は挑戦してみて下さい。

