Python

PythonはAIをプログラムする言語として、注目されています。

何が他の言語と違うかと言えば、非常にシンプルでわかりやすいという特徴があります。

手続き的なコードも最小限ですみ、構造がわかりやすいので手直しも楽です。

ライブラリも豊富で、目的から探し出すのも楽ですね。

一度Pythonを使うと他の言語はあまり使いたくなくなってしまいます。

FXトレード会社のヒストリカルデータは、CSVで提供されていることが多いですが、

そのまま取り込めるのも重宝します。

APIなどをうまく使えば、自動で取り込んでいくことも可能なようです。

まだまだ自分も勉強不足なのですが、FXのAIシステムトレードに取り組むうえで、

強力な武器になることは確かなようです。

 

AIトレードへのアプローチ

まず、システムトレードのフローを整理すると、

データ収集

データ分析

ストラテジー(ルール)作り

バックテスト

トレード

結果の考察

こんな感じでしょうか?

この中でAIが一番活躍できるところは、データ分析からストラテジー作りあたりでしょう。

データ収集はFX会社や証券会社からバックデータをダウンロードすることも可能ですが、

ゆくゆくはリアルタイムデータを全自動取得という事を考えると、APIとスクレイピングを

うまく活用していく方法を考えた方が良いかもしれません。

 

では、どんなプログラムシステムを使うのかという事になると、もちろん IBMのWatsonやGoogleのCloud AutoMLという方法もありますが、トレードに特化したもの、あるいは今後の発展性という事を考えると、Pythonを使いこなしてみたいですね。

 

AIシステムトレード

AIシステムトレードという表現自体、よくよく考えるとおかしいですよね。

AIに裁量トレードを行わせることの方が逆に大変です。

それはさておき、

AIにトレードを行わせて、勝手に利益を上げ続けてくれたらこれは夢のような話です。

 

「既にファンド系の投資はかなりの部分AIに置き換えられている」

という話を聞いたことがあります。

となるともうオートマティックに利益がどんどん積み上っている?

ただ、ここはイコールではないようで、

「AIがトレードするから利益がどんどん積みあがる」ということには、

まだ今一つなっていないようです。

つまりAIトレードと言っても様々なものがあって、良いものあれば悪いものもある、

という事のようですね。

 

「そもそも、AIなんて一般人には遠い存在なのだから関係ない」と考えてしまいがちです。

ではAIを熟知して、プログラミング能力に精通した人(組織)でなければ、

AIトレードシステムなど作ることはできないのでしょうか?

Yesであれば一気に絶望しそうですが、

ある程度の知識と学習意欲さえあれば、何とかなりそうな感じです。

では、どのように始めていけばよいのか・・・・。

 

それは次回に。

テクニカル分析は役に立たないか

「テクニカル分析に基づいてトレードしても勝つことはできない」という意見が述べられることがあります。

真っ向からこの意見を否定する気はないのですが、あえて言うのであれば「そうでもないんじゃない」

という感じです。

「役に立たない」という所がポイントでどの程度のPFや勝率でこう結論づけられてしまうのかが問題になるようもに思います。

移動平均のような単純な指標でも、うまくほかの指標やマッチしたルールを組み合わせれば、そこそこ使えます。

という所が私の感触です。

いつまでもスーパートレード法を求めて試行錯誤し、失敗した理由をテクニカル分析にしてしまう方がまずいように思います。

ベテラン程運用は難しい?

システムトレードで、運用するシステムが決まり、いざ運用を始めるとなかなかシステムのサイン通りに運用できない。

こんな状況に陥ってしまう方も少なくないようです。

MT4のEAならともかく、普通のFX会社であれば、システムのサイン通りにポジションをとり、決済しなくてはなりません。

サインが自分の判断とあっているときは問題ないのですが、自分の判断とは違うシステムサインが出ることが多くなると、システムのサイン通りに運用することが非常にストレスになることとなります。

おそらく、ベテラン程その傾向は強いと思います。あまり相場観を持たない初心者であれば、システムのサイン通りに運用することにさほど抵抗は感じず、うまく運用できてしまう、という事もよくある話のようです。

ベテラン程、システムトレードはうまく行かない、これはシステムの運用に慣れてしまうまでは仕方ないことなのかもしれません。

最近では、ストラテジーを選ぶだけで勝手に運用してくれるシステムを持つFXトレード会社もあるようです。

最初はこのあたりから始めてみる方法も良いかもしれません。

 

最適なシステム

「システムトレードを始めるにあたって、できるだけ良いものを作ってから運用したい」

こんな風に誰もが考えると思います。

ただ、良いものというのはどういうことなのか?

長い運用期間でバックテストの結果が良いものの事を言うのか。

それとも、それ程利益が見込めなくても、長い間安定して利益が出せるものが良いのか。

はたまた、ある程度利益が出るものをチョイスしてポートフォリオを組み換えながら運用していくのが良いのか。

こんなことばかり考えていると、なかなかトレードが始められない。

そんな状況に陥ってしまっている方も多いのではないでしょうか。

新しくスポーツを始めるにしても、見ているのとやっているのは大違い、

少し痛い目にあいながら上達していく、

参加することが上達の近道。

システムトレードも始めてみないと何も始まらない?(当たり前ですね)。

 

アクティブクルーズコントロール

アウディがレベル3のAI自動車を開発、という記事が数か月前に出ていましたが、それ程話題にならなかった、という記事がありました。

アウディのアクティブクルーズコントロール程度の技術なら、既にスバルなどの運転サポート機能で実現できるという事が原因らしい、という事のようです。

また、本当に自動運転機能が必要となってくる高齢者世代ほど、自動運転が実現されてもそのスイッチを入れたがらないとも。

一般的なクルーズコントロールでも、スイッチをオンにするとアクセルが自動で動いて、何とも奇妙な感じです。運転に自信がある世代ほど、自動運転には頼りたくないという事なのでしょうか。

システムトレードにも似たようなものを感じます。

システム通りに注文を出して、ルール通りに運用していくというのは、ある意味裁量トレード以上にストレスを与えます。

感情が優先されれば、決済注文をすぐにでも出したくなってしまうのですが・・・。

どちらも自動運転というのは、周りの状況を見られる状態では難しいような気もします。

ボラティリティが低く、トレンドが出にくい時ほど外為オプション?

夏休みやクリスマス休暇あたりは、どうしてもボラティリティが低く、トレンドが出にくくなります。

こういった時期はトレード成績も低迷し、休むが一番?

そんな時こそ、外為オプション?

 

外為オプションのラダータイプ、GBPJPY 23時締切のopが7月のアウト率75%。

これはつまり、7/3から7/28の間、毎日23時締切のopで開始時(20時)にアウトを選択していれば、

(開始時のレートによっては、多少状況が異なる場合もあります)

15勝5敗で勝ち越せるという事なのですが、わかりずらいですか?

別の見方をすると、きちんと統計を取っていれば、外為オプションのひずみを見つけやすく、

システムトレード向き、という事を言いたいのですが。

もっとも、非常に上昇トレンドが強い時など、朝から深夜まで10回のトレードがすべてヒットになってしまい、

何も考えなくても勝ててしまう、という事もあります。

皆さんも一度、外為オプション分析を行ってみたはいかがでしょうか。

ユーロ高→円安 or 円高?

ユーロドルが高値更新で、勢いを増してきています。

通常であれば、①ユーロ高→円安、株高と行きたいところなのですが、②ユーロ高→ドル安→円高→株安というパターンもあります。

原油がリバウンドからの上昇機運を強めつつあるので、この要因では①のケースの可能性が強くなるのですが、

あまりユーロ高の勢いが強くなると②の可能性が強くなります。

パターンと確率にばかり捕らわれていないでと言いたいところですが、

パターンと確率に捕らわれるのが、システムトレードの醍醐味?です。

 

50%から60%への試み

バイナリーオプションの取引を行う場合、基本的にはラダー方式であれば円高か円安(ドル高かドル安)しかないので、確率的には50%ということになります。(もちろん売買価格等は考慮していません)

1日一度トレードのペースで一か月続けた場合、50%の勝率であれば10勝10敗(簡略化しています)、それを60%まで上げることができれば12勝8敗で4つの勝ち越しということとなります。

一回当たりの利益が500円、損失が500円であれば、一月1枚当たり2000円の利益ということになります。

「微々たるものだ」という印象を受けますが、トレード枚数を1枚から100枚に変更すれば一月で20万円。

初期投資も60%の勝率を前提とすれば、だいたい20万円程度で済むのではないかと思います。

20万円が一月すれば40万円になって返ってくる。これは非常においしいトレードですが、皮算用はこのぐらいにして、

そもそも60%の勝率というのは可能なのか?

コイン投げなどであれば、ある程度のばらつきはあるのものの、回数を重ねるうちに限りなく50%に近づいてしまいます。

ところがバイナリーオプションの場合、意外に「偏り」が多く、例えばある通貨ペアのある時間帯のヒットの確率が一か月81%となどということも、意外に頻繁に起こっています。あとは発見してどうトレードに結び付けるか。

システムトレードの場合、この「偏り」の発見ということがまずは重要なファクターだと思います。