システムトレードの自作

 

トレードシステムの自作の仕方についてまとめました 

  

環境

 システムトレードで儲けるには

まず、インターネットの通信速度を速くしないといけません

 

わずかな時間の差が大きな差になって現れるからです

特に1秒を争うデイトレードで生き残るためなら必須でしょう

 

インターネット速度を上げるためには

 ①パソコンのスペックをあげるもしくは動作を軽くする

 ②無線ルーターを最新のものに変える

 ③ブラウザやOSを最新バージョンに変える

 ④プロバイダーとの契約を上位のものに変更する

 ⑤WI-FIをやめて、6A以上のLANケーブルに変える

 

①~④は皆さん一度はやったことがあるでしょうが、もう一度確認してください

⑤については

 WI-FIよりもLANケーブルでの通信の方が速くて安定しています

一刻を争うトレード中にフリーズすると大きな打撃を受けることになるので

状況が可能なら少しでも早く

Wi-Fiから高速LANケーブルに変えた方がよいでしょう

 

データの取得

 2つの方法があります

一つ目はイザナミなどのシステムトレードソフトを利用することです

こちらは、システムがデータ取得から

ストラテジーの検証まですべてやってくれるので参入しやすいです

ただ、初期費用がかかるのが欠点

 

2つ目は自分で取得する方法

超良心的(無料)な無尽蔵などのサイトから ダウンロードしたり

フリーソフト使ってyahooのサイトからダウンロードする手もあります

ちなみに、私の場合はデータゲット社から買っています。

 

 

プラットフォームの選択

一つはシステムトレード専用ソフトを利用することです

これについてはソフトウェア会社のホームページの方が詳しいので

そちらを見てください

 

 自らシステムを作る場合は、プログラミングの知識が少し必要ですが

EXCELが最も作りやすいでしょう

商品先物、FX、債券、株(一部)などならEXCEL VBAで十分です

なんといっても 天下のマイクロソフトのソフトなのでほとんどフリーズしないし

ピボットテーブルやグラフは強力な分析ツールです

 

ただ、株の全銘柄を扱うとなると、膨大なデータ処理となり

エクセルでは扱いにくくなります

私の場合はそのために、データベースを利用しています

データベースのクエリもEXCELのそれに匹敵するほど強力なツールです

それと、もう一つの利点は仕事や趣味に使えることです

データベースが扱えるようになれば職場で重宝がられること間違いなしです

仕事上の重要なスキルになり

あなたの財産になるはずです

 

 

ストラテジーの作成

これは、チャートを見たり、今までの経験や

他の儲かっている投資家の方法を参考に考えます

インスピレーションと根気が必要ですが、頑張れば必ず見つかります

例えば、急落した後に反発しやすいとか〇日間の高値更新は買いとか

曜日アノマリー、季節アノマリーとか多様な候補があげられます

 

それをプログラミングあるいは設定するのですが

自分が納得してシグナル通りに運用できるシステムを構築することが

何よりも大事です

 

バックテスト

ストラテジーが完成したら、バックテストにはいります

ここで、まず問題になるのは何年間分のデータを使用するかです

私は10年間のデータを利用しています

20年間のデータを利用している人もいるし

長期間の方が堅牢性を持つと書いてある本もあります

 

だが、考えてみてください。

今、ニューヨークではファンドマネージャーが淘汰され

AIが幅を利かせています

中国をはじめとするアジアなどの新興市場の台頭も目覚ましい状況です

10年たてば市場や銘柄も大きく変わり、市場参加者も大きく変わります

そんなデータに意味があるでしょうか

 

 

それよりも、堅牢性を向上させるのなら、10年を20年に変えるよりも

1000回のトレードを2000回にする方が堅牢性が増すと思います

トレード回数は多ければ多いほど堅牢性は向上するはずです

 

また、堅牢性を確認するときに一つポイントがあります

いわゆる「絶壁」と呼ばれるやつです

最適化しているときに、パラメーターをゆっくりと動かしていくのですが

ある値を境に数値が急変することがあります 

このときは要注意です

 

少数のトレードの影響で、たまたま数値が良く見えるだけかもしれないし

プログラミングが間違っているのかも知れません

そのときは必ず検証をしてみてください

 

さて、バックテストの方法ですが

私は10年間のヒストリカルデータを使用しています

このうち、最新の2年間のデータは取っておいて

残りの8年間でまずバックテストを行います

 

期待値、約定率、損益曲線、最大ドローダウン、PFなどの数値を調べます

次にパラメーターを動かしながら、バックテストを繰り返し数値を向上させていきます

実用に耐えうる性能ならフォアードテストに移りますが

 ストラテジーはほとんどがガラクタの山で

フォアードテストまで到達するのは1割以下と思ってください

 

 

フォアードテスト

バックテストが良好なら、とってあった最新2年間のデータを用いて

フォアードテストを行います

 

フォアードテストはデータに合わせて最適化されていないので

バックテストよりはるかに信用できます

フォアードテストがバックテストとそれほど変わらなければ合格です

 

合格基準

デイトレードなら1%以上、スイングトレードなら3パーセント以上

を合格としています

 

ただし、それ以上に重視している基準が二つあります

まず、一つ目は約定数です

これは多ければ多いほどよいです

1年間にデイトレなら300以上、スイングなら100以上が目標ラインにしています

それ以下だと堅牢性が失われてしまうからです

 

二つ目は期待値ですが

下の損益曲線のグラフをみてください

 

f:id:yosutexxx:20210128104238p:plain

 ①と②ではどちらが優秀でしょうか

私なら間違いなく②を選びます

 

なぜなら、期待値は①に比べて低いがドローダウンが小さいからです

損失が小さければ、投資資金を増やして

リターンの絶対額を増やすことができます


最大ドローダウンが大きいと怖くて

投資資金を増やすことができません

最大ドローダウンが重視されているのはこのためです

 

 

 運用

それらの準備ができたら、運用となるわけですが

これが意外なことに非常に難しいです

 

やってみるとわかりますが、シグナル通りに運用がなかなかできません

損失に対する恐怖でロットを下げたり

負けが続くと仕掛けをやめてしまったり

そんなときに限って、システムがうまく機能し

仕掛けなかったことを後悔したりします

 

それで、最初は最大ドローダウンをもとに少なめに運用し

かつて流行したPDCAサイクルで改良を続けていくのが良いと思います

システムが洗練されて安定してくるまでに

数か月もしくは数年がかかると思って、焦らず気長に改善してください

(金の生る木はそんなに簡単にはできません)


 システムが固まってきたら、資金管理戦略も忘れずに取り入れてください


一旦良いシステムが完成すれば

あとは、単純にシステムに従って運用するだけで収益を得られます

デイトレーダのようにパソコンに張り付く必要もないので

出来上がったあとは快適な生活がおくれるはずです