AI自動売買

これまでにブログkinomiyaでは、ビットコインの自動売買に挑戦してきました

今流行りの「人工知能」「機械学習」「ディープラーニング」などを取り入れたら、もっと勝てるのではないかと思いAIの勉強を始めました

このページに、AIに特化した記事をまとめていきます

Contents

AI自動売買

AI自動売買では、AIにビットコインの「売り」「買い」の判断をさせたいです

下の図は僕が考えたビットコイン取引の自動化レベルです

これまでは、僕(人間)が考えたアルゴリズムで自動売買する、「自動化レベル1」でした

ここでは、人間が考えた特徴量(判断指標)を用いてAIが自動でアルゴリズムを考える「自動化レベル2」と、

完全にAIがアルゴリズムを考える「自動化レベル3」を達成したいと思います

AIでできること

AI(機械学習)で、何ができるかというと、

「回帰」と「分類」2つのことをすることができます

回帰(値を予想するとき)

過去のデータから、未来の値を予測することができます

これが、「回帰」です

例えばこんな時に使います

・これまでの気温から明日の気温を予想

・緯度と軽度から降水量を予想

・来期の売り上げ予想

・株価予想

分類(クラス分類するとき)

過去のデータから、似たもの同士を分けることができます

それが、「分類」です

例えばこんな時に使います

・画像が犬なのか猫なのか分類

・試合に勝つのか負けるのか分類

今回は、機械学習でできること2つのうち「分類」を使いました

具体的に、チャートからビットコイン価格が上がるパターンなのか下がるパターンなのかを分類します

実際にやること

次の1時間でビットコイン価格は「上がる」のか「下がる」のかをAI予想します(=分類)

本当は、1時間後もしくは1日後に「ビットコインは〇〇円になる」と予想したい(=回帰)ところですが、

価格予想をする難易度が高いことがわかりました

そこで、「上がる」のか「下がる」のか2択なら比較的簡単なのではないかと思い、挑戦します

機械学習

機械学習モデルの検討をします

機械学習とは

機械学習とは、プログラムに学習をさせて、その学習をもとに予想させることです

どうやって学習させるかというと、人間の脳みたいなものを真似してプログラムで作ります

機械学習でやりたいこと

上に述べたように、チャートを学習させビットコイン価格が上がるパターンなのか下がるパターンなのかを分類します

やったことはこの2つです

(1)ビットコインチャートを学習させる

(2)テストする

機械学習(1)ビットコインチャートを学習させる

ビットコインチャートのパターンを学習させます

どうやって学習させるかと言うと、問題と答えをプログラムに与えます

これが教師データになります

問題(次は上がる?下がる?)

答え(下がる)

このような「問題」と「答え」のデータを、機械学習モデルに与えて、学習させます

今回は、上の図のような「問題」と「答え」をたくさん用意し、学習させます

学習させるデータは、過去のビットコインチャートから持ってきます

機械学習(2)テストする

(1)で使ったデータとは別のデータを使って、テストしました

これがテストデータです

すなわち、学習をもとに別の日のデータを新しく予想させ、的中率を確かめます

テスト(次は上がる?下がる?)

機械学習モデル

決定木

SVM(サポートベクトルマシン)

AI価格予報

上で作ったモデルを使って、AI価格予報のページを作りました