【アプリ開発】資産運用を自動化するFinTech開発

この度、ITスクール「First」内で新プロジェクトを始めてみます。人工知能(AI)とRPAのIT技術を活用したFinTechの開発を行います。まだ、可能性検討の段階ですが、上手くいけばサービス化もできればと考えています。

1. プロジェクトのテーマ

本プロジェクトのテーマは、「FinTech」の開発です。以下は、日本銀行のWebサイトから抜粋したFinTechの説明です。

FinTech(フィンテック)とは、金融(Finance)と技術(Technology)を組み合わせた造語で、金融サービスと情報技術を結びつけたさまざまな革新的な動きを指します。身近な例では、スマートフォンなどを使った送金もその一つです。米国では、FinTechという言葉は、2000年代前半から使われていました。その後、リーマンショックや金融危機を経て、インターネットやスマートフォン、AI(Artificial Intelligence、人工知能)、ビッグデータなどを活用したサービスを提供する新しい金融ベンチャーが次々と登場しました。【日本銀行のWebサイトより抜粋】

現在、世界中でFinTechに関するサービスの開発が盛んに行われています。主な分野としては、決算・送金(電子マネーや仮想通貨など)や、資産運用(ロボットアドバイザーなど)があります。

今回、ITスクール「First」で取り組むのは、「資産運用」に関するFinTechの開発です。具体的には、人工知能とRPAのIT技術を組み合わせて、ファンド運用の自動化に挑戦したいと考えています。

2. プロジェクトの目的

本プロジェクトをITスクール「First」で行う目的は大きく二つあります。一つは、実際に人工知能やRPAを使ってサービス開発することで、新しいIT技術に対する理解が深まり、高い学習効果が期待できることです。

もう一つは、IT技術はあくまで「手段」なので、実際にその技術を使ってサービスを生み出す姿勢が大切だと考えているからです。今回は、「金融業界」というドメインにて、社会的に意味のあるサービスを作ってみたいです。

3. 開発するFinTechの意義

今回開発するFinTechは、資産運用の売買判断を自動で行うシステムです。本システムの付加価値は、売買判断を人間(ファンドマネージャーなど)に依存させない仕組みを提供することです。

基本的には、ファンド会社は顧客から資金を預かり、ファンドマネージャーが金融商品の運用を行います。特に、アクティブ型のファンドは、金融市場の様々なデータを収集しながら、ファンドマネージャーの知見や経験に基づいて売買判断を行います。

ただし、その判断は常に正しいとは限りません。また、運用成績や結果は、ファンドマネージャーの腕に大きく依存することになります。そして、人間が運用しているため、いつかは引退しなければいけません。つまり、ファンド会社も「後継者問題」を避けられません。

特定の人間に依存している限り、一定のリスクを抱え込んでしまいます。そこで、今回は、人間に依存するのではなく、データに基づいた資産運用を行う仕組みを作ることを目指します。

4. システムの概要

開発するシステムの概要を下図に纏めます。システムの主な機能は、経済や金融に関するデータを入力すると、人工知能が資産運用の売買判断を自動で出力します。なお、実際に売買するファンドは、日本のインデックスファインドを想定しています。

system overview

4.1. 開発環境

システムの開発には下記を使用する予定です。

  • UiPath(データ収集やシステムの起動)
  • Python(機械学習モデルの構築)
  • Google Apps Script(データ収集)

4.2. Input(入力)

日々更新される経済・金融データを入力として使用します。具体的には下記のデータなどを想定しています。日本だけではなく、海外のデータも参照します。なお、各種データはRPAなどを使用してインターネットから収集する予定です。

  • 株価
  • 金利(長期および短期)
  • 為替相場
  • 原油価格
  • 金の価格

4.3. System(システム)

システムには人工知能(機械学習)を使用します。予め、過去の経済・金融データを学習させた「機械学習モデル」を構築しておきます。機械学習で使用するアルゴリズムの選定や教師データの作成方法については、ある程度試行錯誤する必要があります。

4.4. Output(出力)

システムは資産運用の売買判断を出力します。具体的には、「売り場」「買い場」「待機」などのシグナルを予測します。このシグナルをもとに、金融市場にてファンドの売買を行います。ただし、現段階では、売買の最終確認は人間が行うこととします。

5. リスクや課題

現時点で顕在化しているリスクや課題を列挙しておきます。

  • 過去の経済・金融データが思うように収集できない
  • 機械学習の予測精度が上がらない
  • 開発資金のショート