見出し画像

素人でも簡単に作れるバイナリーの勝率を劇的に上げるAI予測システム(AIの構築編)

割引あり

はじめに

本記事は、AIを使ったバイナリーオプションの予想システムの作り方を、初心者の方にもわかりやすく、自動売買のやり方まで解説する記事です。(2024/8地点では、AIを使ったバイナリーの自動売買記事はこれだけです)
以下に少しでも当てはまる方を対象としています。
・バイナリーオプションは知っているけど勝てるロジックが思いつかない人
・不労収入が欲しい人
・AIに少しでも興味のある人

皆さんはバイナリーで勝てていますか?
勝てるロジックを見出すのには多大な労力と多くの費用が掛かりますよね。例えば、FXなどは安定的にプラス収支でトレードできるようになるのは3年は必要と言われています。
3年間という勉強の日々を耐えるのって相当苦痛だと思いますし、それだけ頑張っても勝てるロジックを作れる保証はありません。
そこをAIに頼ればロジック作成部分を代替でき、過去のデータに裏付けされたロジックを構築できます。しかもAIの学習はたった数秒。この記事通りを進めればツールを作ること自体は1日でできるはずです。
小難しいプログラミングをする必要がありますが、本記事で扱う言語は比較的簡単なPythonです。楽をして高額なツールを購入して詐欺でした、のような話は溢れるほどありますが、そのような中身の得体がしれない物ではなく、中身が公開されていて読者が自走できるようなコンテンツを提供したいとの思いの元、本記事を執筆しております。
本記事で紹介するAIモデルの勝率は60%を超えていますが、更にAIを強化するのも自由ですし、独自のロジックを追加していただいたも構いません。

(ただし、本記事の無断転載は固くお断りさせて頂きます。また、自動売買による損失も自己責任でお願いします。)

バイナリーオプション(知ってる人は読み飛ばしてください)

バイナリーオプションは、金融商品の一種で、「ビットコインや為替の価格が上がるか下がるか」を予測して取引するシンプルな方法です。「バイナリー」とは「二つの」という意味で、選択肢が2つしかないことから名付けられています。例えば、ビットコインの価格が1時間後に「今より上がるか、下がるか」を予測するとします。

  • 価格が上がると思うなら、「UP」

  • 価格が下がると思うなら、「DOWN」

この二つの選択肢から一つを選びます。もし予測が当たれば、事前に決められた利益(通常は投資額の70%〜90%程度)がもらえます。逆に、予測が外れたら、投資額を失います。

バイナリーオプションの本質

バイナリーオプションの本質は「期待値」です。
突然ですが質問です。
以下のルールのゲームをあなたはやりますか?

  1. あなたは100円を賭けて、コインの表裏を予想します。

  2. コインを投げて、予想が当たればあなたは賭け金の1.95倍を受け取ります。外れた場合は賭け金を失います。

    • 100円を賭けて予想が当たれば195円を受け取ります。

    • 予想が外れた場合は100円を失います。


このゲーム


やりたいと思った人は反省してください。このゲームはやってはいけないゲームとなります。
なぜやってはいけないのかより理論的に説明します。
やるべき or やってはいけないの判断に「期待値」を使います。
期待値の計算は簡単で、「当たる確率×当たった時のリターン」です。
よってこのゲームの期待値は、コインが裏or表の出る確率0.5 × 当たった時のリターン1.95 = 0.975となり、つまりこのゲームを何十回、何百回行った場合、所持金が最初の97.5%に収束していくことを意味します。
この期待値の概念は、バイナリーオプションに留まらずカジノや競馬・競馬などでも非常に重要な概念です。

さて、バイナリーオプションの話に戻すと、的中時のリターンはバイナリーオプションで言う所のペイアウトです。だいたい、1.8 ~ 2倍であることが殆どです。
例えば、ハイローオーストラリアのBTC/USD 5分のペイアウトを見てみると、1.8倍です。

ハイローオーストラリアのBTC/USD 5分

このBTC/USD 5分で必要な勝率を計算します。
1.8x > = 1
となれば良いので、x = 0.555… つまり55.5%以上のポイントでエントリーし続ければ資産が増え、それ以下であればエントリーしてはならないことになります。(適当にエントリーすれば勝率は50%なので、適当にやり続けても負けることが分かるでしょう。)

55%って案外低いしちょっと勝てそうな場所でエントリーすれば良いのか、楽勝じゃん!と歓喜するのも束の間、自身のエントリーポイントの勝率ってそんな簡単にわかりますか?。という話です。
ここは、勝率55%以上あるぜ!って、確率まで自信を持って言い出す人って普通いないですよね。人間では算出することの難しい勝率を非常に正確に算出してくれる技術が機械学習です。

機械学習とは

機械学習は、コンピュータがデータからパターンや規則性を学び、導き出したパターンを使って新しいデータに対して予測や判断を行う技術です。たとえば、メールを「迷惑メール」か「通常のメール」かに分類したり、株価の変動を予測したりすることができます。

たとえば、あるメールが「迷惑メール」か「通常のメール」かを予測するために、過去の迷惑メールと通常のメールを学ばせる(=学習)とします。この学習の過程で、コンピュータは「迷惑メールにはどんな特徴が共通しているか」「迷惑メールにはどんなパターンが見られるか」のような法則を見つけ出します。その法則を数式にしたのが「予測モデル」であり、この予測モデルにデータ(メールの文章など)を与えると、そのメールが迷惑メールである確率を出力するようになっています。確率は、「ある事象がどれくらいの確率で起こるか」を示しており、例えば「このメールが迷惑メールである確率は80%」といった形で出力します。

バイナリーオプショへの応用

勘の良い人なら、この時点で機械学習とバイナリーオプションとの相性の良さに気づいたかと思います。
機械学習は確率を正確に出力できるのです。バイナリーオプションの未来のHigh、Lowについて「5分後にHighになる確率はXX%」、「5分後にLowになる確率はYY%」のような予測を機械学習に計算させ、予測モデルの出力が必要勝率を超えた時にだけエントリーすれば、理論上勝てます。
次のセクションでは、実際に機械学習を使った検証方法とその結果について、説明します。

AIで本当に勝てるのか!?(機械学習を使った売買シミュレーション)

機械学習による予測方法

機械学習使って、BTC/USDの5分後の値が現在よりも上がっている(=High)か下がっているか(=Low)を当てる予測モデルを作ります。BTC/USDを使う理由は、データの取得が容易だからです。為替データなどは現在無料でかつ簡単に取得できるAPIが無いです。
どのようなデータを学習させてどのような予測をさせるかを下図に示します。

バイナリーオプション
  • 入力データ

    • ローソク足の各種値(始値、高値、低値)を終値で割った値

    • SMA(Simple Moving Average)

    • RSI(Relative Strength Index)

  • 予測結果

    • 次の5分足が陽線である確率

    • 次の5分足が陰線である確率

AIの作成手順作成は以下の5ステップから成ります。(結果だけ気になる方は5番をご覧ください。)

  1. データの収集

  2. データの前処理と特長量計算

  3. 学習用データ/検証用データ/テスト用データの分割

  4. 予測モデルの構築

  5. 予測モデルの評価

HighLowオーストラリアBTC/USD5分のペイアウトは1.8倍より、必要勝率は約55%なので次のようなベッディング戦略を取ります。

  • 5分後のローソク足が陽線である確率が55%を超えた場合

    • Highエントリー

  • 5分後のローソク足が陰線である確率が55%を超えた場合

    • Lowエントリー

※HighLowはティックチャートだし、ローソク足なんて知らん、という人は我慢してください。ティックチャート形式のデータはどこを探しても見当たらないため、ローソク足を使う方法を取っています。ティック形式のデータをお持ちの方は是非トライして頂きたいですが、上手く予測モデルを学習させるために特長量の設計が必要になるので、ローソク足を使うのが無難だと思っています。

0.Pythonの環境構築環境

Anacondaと呼ばれるPythonの実行環境を使います。詳細な構築手順は外部サイトを頼らせていただきます。
こちらがおすすめです。
Anaconda-Navigatorの起動までできたら、Navigatorから「jupyter lab
」か「 jupyter notebook」どちらでも良いので起動してください。
※機能性の高さより、「jupyter lab」をお勧めします。

Anaconda-Navigator の起動画面

ボタンを押下後、Notebookの「Python3」を押下し以下のような画面が出たら成功です。

jupyter形式のエディタ

jupyter の使い方は簡単で、セルと呼ばれる枠にPython コードを入力し、「Shift+Enter」を押すとそのコードが実行されます。以降説明に出てくるコードはコピーしてセルに貼り付け実行。の流れで開発を進めてください。

コード実行のイメージ

以下からAIの構築方法からバックテストまでの方法を紹介します。
(※HighLowにおける自動売買の作り方はこちらの記事にて公開しています。)

1.データの用意

ここから先は

9,027字 / 5画像

期間限定!Amazon Payで支払うと抽選で
Amazonギフトカード5,000円分が当たる

この記事が気に入ったらチップで応援してみませんか?