ExcelでAIっぽく

Excelに新しいデータ型「地理(Geography)」「株価(Stocks)」が追加されるそうです。

まずはOffice 365ユーザーに提供という事のようですね。

Microsoft Knowledge Graphから関連データを取得、この情報はオンラインで変更された場合、Excel内でも更新可能。

つまり証券コードを入力してデータ型を株価(Stocks)にしておけば、株価を自動更新してくれる、という事のようです。

AIプログラムみたいで使い勝手が良さそうですが、使ってみないと感触がわかりませんね。

ディープラーニングは敷居が高い?

AIを使ってシステムトレードを行う仕組みは理解できた、それでその次は・・・。

デープラーニング、ニューラルネットワーク、ロジステック回帰・・・、どんどん難しくなっていきます。

こうなるとプログラミングの知識に加え、数学的知識も必要となり敷居がかなり高い感じです。

「やっぱり、AIを使ってシステムトレードなんて無理だよね」で終わってしまいそうですが、

必ずしもプログラミングの知識や数学的知識に精通していないとAIシステムトレードができないわけでもない?

pythonのライブラリ、RPAのツールなどを使って、概要だけ押さえておけばAIシステムトレード環境を作ることは何とかできます。

中身がわからなくてもブロックを組み立てるように構築していくことは可能です。

どうしても、難しい言葉ばかり出てきてあきらめてしまいがちですが、形だけ整えてしまえばあとはAIが何とかしてくれる?

こういった表現が正しいのかどうかわかりませんが、AIを使える環境は本当にものすごい勢いで日々進歩しています。

もっと簡単にAIシステムトレードができる環境が整うのも、時間の問題かもしれません。

 

API

Pythonでシステムトレードを行う場合、APIが使えるFX取引会社が必須となるのですが、最近急激にそういった環境が整ってきているように思います。

OANDAというカナダのFX取引会社があるのですが、こちらのAPIは使いやすいですね。(もちろん日本語版です)

通貨ペアもかなり豊富ですし、データも取りやすい、スマホのアプリなども充実しています。

MT4も使える環境が整っているところをみると、もともとユーザーが自由にシステムトレードを行えるような環境を提供することを目的としていたようです。

どんどんこういった会社が増えてきて、システムトレードが手軽にできる環境が整うとと嬉しいですね。

 

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自動車を開発、という記事が数か月前に出ていましたが、それ程話題にならなかった、という記事がありました。

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

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

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

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

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

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

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