初心者にもおすすめ

AIによるFX取引分析

AIによるFX取引分析
LSTMではsigmoid関数で活性化されるゲートが重要な役割を果たします.ゲート部分は基本的に以下のような式になります. \sigma(x_t W_x + h_ W_h + b) \end" />
先ほどの図でみたようにsigmoid関数は0から1の数値であり、これらのゲートはメモリー・セルの情報をどの程度伝えるのか調整する役割を果たします.

第2章 新たな産業変化への対応(第1節)

政府が2016年1月に決定した「第5期科学技術基本計画」においては、「超スマート社会」、「Society 5.0」 5 を打ち出している。少子高齢化が進む我が国において、個人が活き活きと暮らせる豊かな社会を実現するためには、IoTの普及などにみられるシステム化やネットワーク化の取組を、ものづくり分野だけでなく、様々な分野に広げることにより、経済成長や健康長寿社会の形成等につなげ、人々に豊かさをもたらす超スマート社会を実現することが重要な課題である。

(諸外国と我が国における第4次産業革命の進展状況)

フィンテックについては、アメリカでは様々なスタートアップ企業がフィンテックに参入する中で、欧米銀行は、ICT分野のイノベーションを取り込むことを目的とした、ICT・インターネット関連企業等との戦略的な連携・共同、いわゆるオープンイノベーションを活発化させている。特に、こうしたフィンテック企業等が、銀行等のシステムをプラットフォームとして活用し、その上で多様なサービスを開発・提供できるようにしていくことが重要との趣旨から、銀行等のシステムの接続口 6 (Application Programming Interface、以下「API」という。)を公開する取組が進んでいる。これにより、例えば、APIを通じ銀行システムと、企業の財務情報が集約されている会計クラウドや企業の売上動向が記録されている決済サービス、さらには企業が顧客と構築している関係が示されるソーシャル・ネットワーキング・サービスなどのインターネットサービス等とを連結することで、企業のデータを集め、これをAIに解析させることで、企業の信用力の算出などが可能となる。

2 第4次産業革命の経済的な影響

(需要創出効果)

総務省(2016) 8 によると、ICTの新たなサービスの需要創出効果は年間最大で1.8兆円となり、さらに、情報通信産業連関表 9 により、所得効果も含む2次波及効果まで勘案すると、生産誘発額は約4.AIによるFX取引分析 1兆円、付加価値額で約2.0兆円に上る 10 (第2-1-2図(1))。特に消費者が支払っても良いと考えている価格である支払意思額が大きい分野としては、コミュニケーション型・育児向け見守り型・介護向け見守り型のサービスロボットであり、需要創出効果も4,700億円程度と突出して大きい。次いで、見守り系やエネルギー系のスマートホームの効果がそれぞれ1,900億円程度、1,400億円程度と大きくなっている。

また、第4次産業革命の中には、デジタル・コンテンツのように再生産・複製が容易でかつインターネット上で幅広く配信が可能なために、限界費用がほとんどゼロとなるサービスや、シェアリング・エコノミーのように、個人対個人の取引により提供されるサービスも存在する。こうした分野では、正確な産出額や価格の把握が困難であったり、そもそも市場価格自体が存在しないサービスもあるため、その経済価値の把握が難しい。インターネット上での無料サービスについては、サービス提供者のコストは、広告収入や閲覧記録などのデータ提供による収入等で賄われている場合が多く、そのコストが各種商品の価格に体化される形で個人消費に反映される 11 。また、シェアリング・サービスについても、家計が支払った仲介事業者の手数料や役務提供者に支払われた料金は個人消費に反映されるが、特に後者は個人間の取引であるため、補足は困難である 12 。しかし、これらのサービスについても、その市場規模が無視できないほど拡大してくると、実体を正確に捕捉することが必要となる。他方、こうした新しいサービスの出現によって、既存のサービスが代替されることも考えられるが、その場合、ネットでみた経済全体の影響は、新しいサービスの提供によって、どの程度潜在需要が創出され、利用頻度が大きく増加するかにかかっている。この点については、2章1節3において詳しく論じる。

FXを機械学習(LSTM)で予測してみよう(テクニカル指標編)

今回は為替レートを機械学習で予測してみようという企画のPart 1です.まずは、為替データの特徴とその相場の読み方(?)を紹介したあとにPart 2 で紹介しますON-LSTM (Ordered Neurons Long Short-Term Memory)を理解するため前座としてLSTMの基本について簡単に紹介したいと思います.また、Part 3 AIによるFX取引分析 では画像認識で高い性能を示したConvolutional Network を応用したTCN (Temporal Convolutional AIによるFX取引分析 Network)を紹介していただきます.

時系列データと為替相場

\begin</p>
<p>為替の動きそのもののでは判りにくいかと思いますので、単位時間当たりの値段の変化率である収益率( R_t = \log S_t/S_ \end)で比較をしてみます.

  1. 移動平均線(Moving Average/MA)
  1. Bollinger Band
  1. MACD (Moving Average Convergence and Divergence)
  1. RSI (Relative Strength Index)
  1. サイコロジカル・ライン

ニューラル・ネットワークと時系列データへの応用

\begin</p>
<p> h = f(xW + b) \end
ここで、x が入力信号、Wは重さ、b はバイアスといって入力に関わらず加わる信号です、これを活性化関数 f に作用させて、出力 h が得られます。この活性化関数には用途に合わせ様々なものがあり、代表的なものはsigmoid関数、tanh、ReLU(Rectified Linear Unit)などがあります. 下図はsigmoid関数とtanhを比較したものです.このように非線形の変換が加わることがこれから見るニューラル・ネットワークの肝となります.(ただの線形変換では何層も重ねる意味がありませんからね)

まず入力 (x_1, x_2, x_3, x_4) \end" />に重み W_1 \end" />とバイアス b_1 \end" />が加わり中間層に伝わり、sigmoid関数を作用した結果( h = \sigma(xW_1 AIによるFX取引分析 + b_1) \end" />)に更に重さを加えたもの( z = hW_2 + b_2 \end " AIによるFX取引分析 />)が出力層に伝わります.そしてsoftmax関数 \sigma(z)_i = \exp(z_i)/(\sum_^K \exp(z_j)) \end" />を作用させた結果が最終的に得られる各々のアヤメやめの種類である確率です.softmax関数は次に紹介するON-LSTMの重要な要素でもあります.なお、今回のような全ての入力を受け取る層を全結合層と呼びます.


しかし、このような情報が一方的に流れるだけのネットワーク構造では、時系列データを予測するといった問題には適していません.過去の情報を再利用するように拡張されたネットワークをリカレント・ネットワークと呼びます。これは自分自身の出力結果 h_t \end" />を次の時刻の入力 x_ \end" AIによるFX取引分析 />と一緒に受け取ります.通常の入力と過去の出力結果に対する重みがあることに注意してください.これらが学習すべきパラメータになります.

\begin</p>
<p> h_t = \tanh(h_ W_h + x_t W_x + b) \end
これをダイアグラムで表すと以下のようにRNNは横方向に展開して表現することもできます.

Recurrent Neural Network (RNN)の模式図

この問題を回避するため考案された改良法の1つがLSTM(Long Short-Term Memory) になります.このLSTMでは隠れ状態 h AIによるFX取引分析 だけでなくメモリー・セルという状態を加えることで、時系列データの情報をうまく処理することができます.

Long Short Term Memory (LSTM) cell の模式図

\begin</p>
<p>LSTMではsigmoid関数で活性化されるゲートが重要な役割を果たします.ゲート部分は基本的に以下のような式になります. \sigma(x_t W_x + h_ W_h + b) \end
先ほどの図でみたようにsigmoid関数は0から1の数値であり、これらのゲートはメモリー・セルの情報をどの程度伝えるのか調整する役割を果たします.

さて、ここで、順番を追ってLSTM cell を解説したいと思います.

まず、忘却ゲート (f)これは一つ前の記憶をどれだけ保持するかを決めるところです。次に、入力ゲート (i)で入力結果(g)の重要度を調整します.最後に出力ゲート(AIによるFX取引分析 o)でメモリー・セルの情報を加えて出力します。LSTMユニットを数式で表現すると以下のようになります.

f &= \sigma\left(x_t AIによるFX取引分析 W_x^ + h_ W_h^ + b^ \right) \\ g &= \tanh\left(x_t W_x^ + h_ W_h^ + AIによるFX取引分析 b^ \right) \\ i &= \sigma\left(x_t W_x^ + h_ W_h^ + b^ \right) \\ o &= \sigma\left(x_t W_x^ + h_ W_h^ + b^ \right) \\ c_t &= f \odot c_ + g \odot i \\ h_t &= o AIによるFX取引分析 \odot \tanh(c_t) \end " />
一見すると複雑には見えますが、結局は、入力を4つの活性化関数にそれぞれ入力するだけであることがわかります.ここでは \odot \end " />とは、行列の要素毎の掛け算です.LSTMでは、RNNと異なりメモリー・セルの逆伝搬では重み行列の掛け算はありませんから、逆伝搬での学習において問題が生じにくいように改良されています.

LSTMによる為替予測

最後になりましたが、LSTMを使って実際に為替を予測してみようと思います.今回のデータは2019年の1月から7月までの一分毎のドル円のデータを用い、GPUクラウド by GMOの1GPUプランを利用させていただき、コードの開発には Tensorflow を用いました.解析環境の詳細についてはPart 3で詳しく説明していただきます.

結果は以下のようになりました(週末部分はデータが欠損しているので注意してください).レートのみでは、乖離が大きいですが、トレンド系指標を含めると予想結果がだいぶ改善されました、一方、今回の検証ではオシレーター系はあまり重要ではないような結果となりました.定量的にRMSE (Root Mean Square Error)を比較するとトレンド指標込みの予測は改善効果が大きいようです.

関連記事

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次
閉じる