システムトレード基本編

システムトレードの方法 -構築編-

前回の続きになります。ストラテジーを制作する2パターンについて記載します。

プラットフォームのストラテジー自作型

プラットフォームは使うけど、ストラテジーは自作するパターンです。

独自言語のプログラミングが必要

ストラテジー構築にあたり、プログラミングが必要になります。プログラム言語は、C#などが使えるプラットフォームもありますが、大抵はプラットフォームの独自言語になります。プラットフォームで用意されているインディケーターや注文操作を組み合わせてシステムを構築していきます。

プログラミングが必要とはいえ、独自言語は簡単にシステムが組めるようになっていますし機能もそれほどないので、プログラミング未経験でも、勉強すればなんとかなります。プラットフォームにサンプルプログラムがあるので、それを少し改変するだけ、ストラテジーを作ることはできます。

機能するシステムを作るのは難しい

ストラテジー自体を作ることはそれほど難しくはありませんが、実運用で稼げるものを作るのは難しいです。というのも、できることはプラットフォーム上の関数を組み合わせるだけなので、できることは限られています。プラットフォームには最適化機能があるので、バックテストで良い結果を出すストラテジーを作ることはできるのですが、実運用を考慮してシンプルで汎用性の高いシステムとなると、なかなかできません。私もMT4でそれなりにEAを作っていましたが、1年以上運用できたシステムは作れませんでした。

とはいえ、FXや株のブログを見渡すと、この方法で有用なシステムを構築して長期にわたって稼いでいる人はいます。専業の人もいます。なのでトライしてみる価値はあります。

またプラットフォームのプログラミングをできるようにしておけば、ちょっとした検証とかするときに便利です。私もEA作成はしていませんが、ちょっとした検証でMT4を使うことは今でもあります。

注意点として、プラットフォームを使うことには変わりないので、ブローカー縛りや導入コスト(プラットフォーム代)のデメリットはあります。

自分で作ったシステムは動かしていて安心

メリットとして、自分が作ったシステムなので売買ロジックがはっきりしており、リスク測定ができるので、運用していて安心感があります。購入と自作の両方を経験してみればわかりますが、このメリットは非常に大きいです。

まとめ

売買ロジックが明確なので、運用していて安心感がある
プラットフォームのプログラミングをできるようにしておくと、ちょっとした検証するときとか便利

多少のプログラミングの知識が必要
導入コストがかかる (プラットフォーム代、為替だと無料)
ブローカーが限定される
システムでできることは限られている、機能するシステムを作るのは難しい

完全自作型

プラットフォームを使わずに、ゼロから自作するタイプです。

一般的なシステムトレードというと、プラットフォームを使うタイプになりますが、AIの台頭により最近は完全自作タイプも増えてきたように感じます。私が今取り組んでいるのはこのタイプで、今後このブログで扱うのも、だいたいこちらの内容になります。

システム構築の縛りがないよ!

プラットフォームを使用する場合のデメリットである

  • ブローカー縛り
  • システム構築の手法が限定される

という欠点を払拭したい場合は、このタイプに行き着きます。最近の流行であるAI・ディープラーニングを使用したい場合も、このタイプになります。

というわけで、メリットはブローカーや手法が限定されない柔軟なシステム構築ができる点です。

完成まで時間がかかる

デメリットは、ゼロからの自作になるのでシステム構築に時間がかかる点です。システムトレードに必要な下記の機能を全て自分で作る必要があります。

  • バックテスト、最適化
  • 価格取得
  • 本番のシグナル生成
  • 注文操作

機械学習を取り入れる場合は、更に

  • モデル構築
  • 特徴ファイル生成
  • データ前処理

なども必要になります。

難易度は高く相当のシステム知識が要求されます。プログラミングはもちろん、他にもデータベース、ネットワーク、ハードウェア、機械学習、統計学等の知識がバランス良く必要になります。

では、ITエンジニアにしかできないのかというと、そういうわけではありません。前提知識が無い状態でこれらのことを全て身につけるには数年はかかりますが、その覚悟があるなら今は勉強する方法がいろいろあります。要はマインドセットの問題です。裁量トレードにしたところで、勝てるようになるには数年かかります。

まとめ

ブローカーや手法にとらわれない柔軟なシステム構築ができる
AIトレードが作れる

システム構築に時間がかかる
相当のシステム知識が必要


自動売買を自主制作する方法の2パターンについて書かせていただきました。
次回は、自動売買に適した金融商品について書こうと思っています。

COMMENT

メールアドレスが公開されることはありません。