第84回コラム
自動売買システムの未来
情報アーキテクチャ専攻 千代 浩之 助教
2016年1月の日本銀行によるマイナス金利政策や2016年5月のイギリスによるEU離脱は国内・国外の金融危機を引き起こしました。金融危機は恐いと思いましたか?それとも、金融危機を投資のチャンスだと思いましたか?私は後者です。
私はロボットや自動車のような決められた時間までに処理を完了しなければならない性質「リアルタイム性」を持つシステムを対象としたソフトウェア(OSやミドルウェア)を研究開発しています。顕著な成果として、私が研究開発したソフトウェアがロボットに搭載されるところまで到達しました[1]。ロボットや自動車を対象としたソフトウェアの研究は今後も継続していきますが、私の独自の研究として株や為替などの金融商品の自動売買システムにリアルタイム性を適用することを着想しました。
金融危機に直面した場合、手動による売買では判断が遅いため、大幅な損失を抱えてしまう可能性があります。この背景を踏まえて、自動売買システムが社会的に求められていますが、事実上の標準といえるものはありません。そこで、私は自動売買システムを対象としたミドルウェアRT-Seed [2]を研究開発しています。RT-Seedにより、リアルタイム性の保証と売買ストラテジーの品質の向上を両立しつつ、自動売買が可能になります。
RT-Seedの特徴である「並列インプリサイス計算モデル」を紹介します。並列インプリサイス計算モデルは、必須部分、付加部分、終端部分の3つの部分から構成されています。必須部分はリアルタイム性を保証する部分、付加部分はリアルタイム性を保証しない部分、終端部分はリアルタイム性を保証する部分になります。必須部分と終端部分はリアルタイム性を保証するため、付加部分より高い優先度を持ちます。付加部分は3つの実行フロー(完了、中断、破棄)を持つこと、各々の部分が独立して並列処理できることが特徴です。もし付加部分が過負荷に陥ってしまった場合、その処理を中断することで、終端部分のリアルタイム性を保証します。並列インプリサイス計算モデルにより、金融商品の自動売買システムを柔軟に構築することが可能になります。
次に、自動売買システムを並列インプリサイス計算モデルに適用した例を紹介します。この例では、為替を対象とします。必須部分では証券会社から為替データ(例:ユーロ/ドル)を取得します。付加部分では、売買ストラテジーの品質を向上させるためにテクニカル分析やファンダメンタル分析を実行します。テクニカル分析は過去の価格データから未来の価格を予測する手法、ファンダメンタル分析は企業や国の健全性から適正価格を予測する手法です。テクニカル分析の例としてボリンジャー・バンド[3]が挙げられます。ボリンジャー・バンドは代表的なテクニカル分析の一つであり、投資に興味がある読者は聞いたことがあるかもしれません。ファンダメンタル分析の例として雇用が挙げられます。雇用では米国の雇用統計が特に有名です。米国の雇用統計が発表する時刻の前後でドル/円の価格が急激に変動する傾向があります。終端部分では、付加部分で分析した結果を集めて、証券会社に売買注文を送る、または様子見(売買しない)ことを決定します。これらの必須部分、付加部分、終端部分の一連の処理を周期的に実行します。周期の長さは、「秒~分」単位を想定しています。
自動売買システムの実験には、自分の資産を運用しなければならないかというと、そうではありません。OANDA社[4]のデモ口座(仮想的に取引できる口座)を利用すれば、無料で為替の自動売買ができます。また、Quandl社[5]から無料で株や経済指標に関する情報を取得できます。これらの会社が提供しているAPIをRT-Seedはサポートしているので、投資家は独自の売買ストラテジーを無料で実験することができます。
私は自動売買システムの未来を切り拓くためにミドルウェアRT-Seedを研究開発しています。RT-Seedにより自動売買システムが「当たり前」になる未来の実現を目指します。本コラムの読者が自動売買システムに興味を抱いて頂ければ幸いです。
【参考文献】
[1] Takuma Shirai, Kohei Osawa, Hiroyuki Chishiro, Nobuyuki Yamasaki, and Masayuki Inaba. Design and Implementation of A High Power Robot Distributed Control System on Dependable Responsive Multithreaded Processor (D-RMTP). In Proceedings of the 4th IEEE International Conference on Cyber-Physical Systems, Networks, and Applications, pp. 19-24, October 2016.
[2] Hiroyuki Chishiro. RT-Seed: Real-Time Middleware for Semi-Fixed-Priority Scheduling. In Proceedings of the 19th IEEE International Symposium on Real-Time Computing, pp. 124-133, May 2016.
[3] John A. Bollinger, Bollinger on Bollinger Bands, 1st ed. McGraw-Hill, August 2001.
[4] OANDA.https://www.oanda.com/.
[5] Quandl.https://www.quandl.com/.