pythonで自作した機械学習プログラムで価格を予測して、バイナリーオプションを攻略できるか実践中です。AUDJPYで試した結果を記事にまとめたいと思います。
使用取引所はブビンガ
まず、バイナリーオプションを使う取引所はbubinga(ブビンガ)を選択。出金可能なまともなバイナリーオプション取引所は、ここしかないでしょう。ハイローオーストラリア推奨している方はヤバいです。出金できないよ。
矢野テック経由のご登録は、入金ボーナスがフルで付きます。お試しあれー
機械学習について
機械学習は、pythonで自作しました。機械学習を用いることで、過去の価格データから傾向を学習し、価格の次の動きをある程度予測できます。
大量の過去チャートを学習
まず大量の過去の価格データを収集します。1分、1時間、日足などのローソク足を用意し、その高値、安値、始値、終値などのデータを入力特徴量とします。技術的分析の指標である移動平均線やテクニカルの指標、ボリンジャーバンド、アノマリーなども特徴量に加えてます。
次に、これらのデータを学習用と検証用に分割し、機械学習アルゴリズム(線形回帰、決定木、SVM、ニューラルネットワークなど)を適用していきます。僕は線形回帰モデルを使って予測をかけました。目的は価格の次の上昇or下落を分類or回帰するモデルを構築することです。
モデルの性能評価には、検証データでの正解率やRMSEなどを指標とします。性能が良ければ、そのモデルで実際の取引に適用していきます。新しい価格データが入手できたら、それを入力特徴量としてモデルに掛け合わせ、次の価格を予測します。
1分足は精度が低すぎる
バイナリーオプションをやる方は、1分足を使う方が多いと思いますが、1分足は非常に難しい。まず、予測の精度が低すぎます。正答率を顕すモデルスコアが超低いのです。ドル円で、わずか23%しかありません。
1時間足で使えるレベル
1時間足で予測すると、モデルスコア97%と高い結果がでました。このくらいの数値がでていると、予測チャートがキレイな形になってくれます。
実践結果
bubingaでは午前中は、AUDJPYとEURJPYしか1分足は出来ないので、AUDJPYをメインに実践しました。この通貨ペアはオセアニアドルと日本円の交換レートで、資源国オーストラリアと日本の経済動向の影響を強く受けます。
大量の2000本のAUDJPYの価格データを入力として機械学習モデルを構築して、リアルタイムでレート動向を予測させました。
1分足
1分足での予測結果でやった結果は11戦8勝、勝率は70%くらい。ただし、予測結果だけでなく、しっかりとチャートに移動平均線や直近高値、安値に線を引き、分析した上でのトレード結果です。
日足
バイナリーオプションを日足レベルで行う方は、ほとんど居ないと思います。ですが、機械学習を使ったトレードでいえば、日足は向いていますね。勝率もむちゃくちゃ高い感じです。トレンド発生や移動平均線などでの反発など、根拠ある場面でトレードする必要がありますが、日足レベルの方が安心できるレベルです。
まとめ
本記事では、機械学習を使って通貨ペアの価格変動を予測し、その結果に基づいてバイナリーオプションの売買を自動で行った実践結果を紹介しました。
通貨ペアの過去の価格データを入力として、さまざまな機械学習アルゴリズムを用いて価格の上昇or下落を予測するモデルを構築しました。モデルの性能は線形回帰モデルを選択しました。
その上で、リアルタイムの価格変動を入力データとしてモデルに通すことで、次のTICKの価格上昇or下落を予測。この予測結果に基づき、バイナリーコールオプションやバイナリープットオプションの売買EXECUTIONを自動で行うプログラムを作成しました。
結果として、一定の期間で利益をそこそこ獲得できることを確認しました。ただし、取引コストやリスク管理などは十分に検討する必要があります。ロットを上げたいけど、まだなかなか踏み切れていない感じです。
課題
誤差がまだあるので、Paramsのチューニングも重要な課題です。
機械学習はあくまで一つのツールに過ぎず、トレーダーの経験と勘所も不可欠です。今後の課題は、経済指標のデータやニュース解析なども特徴量に加味してモデル構築したいところです。
コメント