お知らせ
2019年2月21日: 第2ステージのページを解放しました。
2019年1月21日: ウォークフォワードシミュレーションの補足説明を追記しました。
2019年1月21日: タスク説明の補足資料 (ウォークフォワードによるパラメータ決定と計測手順) を更新しました。
2019年1月17日: タスク説明の補足資料 (ウォークフォワードによるパラメータ決定と計測手順) を掲載しました。
2019年1月16日: タスクおよびフローの補足説明を追記しました。
背景
昨今の計算機科学の急速な進展及びデータサイエンスの隆盛により、資産運用業界において様々な新しい投資戦略の仮説・検証が活発に進められています。そうした投資戦略の中には例えば機械学習をはじめとした人工知能に関する技術を取り入れたり、衛星画像データやWeb上のテキストデータを活用したりすることで独自の収益機会を追求するなど、既存の投資戦略との差別化を図る試みがなされています。
新しい投資戦略を既存のポートフォリオに組み入れるかを判断するにおいて、過去のある時点から一定期間にわたって再現性のある投資方針で運用を行ったと仮定した場合のシミュレーションを行うことがあり、このシミュレーションを通常バックテストと呼びます。
本コンペではマーケットのヒストリカルデータを用いて実運用を想定したシミュレータを作成いただき、バックテストの結果を競い合っていただきます。情報の先取りによるパラメータの選定防止やバックテスト結果の実運用における再現性などを考慮し、2つのステージに分けてコンペを開催いたします。
タスク説明
複数の投資戦略に関する収益率・取引高・取引執行コストのデータを元に、各戦略への資金の割り当ての重みwを最適化するモデルを作成していただきます。
時点tにおいてモデルに与え得る入力と求める出力は以下の通りです:
入力: 時点tまでの情報 (tを含む) (※)
出力: 時点t+2において各投資戦略へ割り当てる資金の重みwt+2
重みwtiには次の制約条件が課されます:
また、データの先頭2行の重みwの値は0とします (sample_submit.csvをご参照ください) 。
モデルが出力する各時点の重みwの情報を用いることで、モデルの投資方針に従って過去の一定期間運用を行ったと仮定した場合の収益シミュレーション (≒ バックテスト) を行うことができます。
※ 予測時点よりも将来期間のデータを学習に使用することは情報の先取りに該当しますので、時点tまでの情報に限るという条件は学習・予測両方の段階に適用されます。
ウォークフォワード・シミューレーションをする際の注意点について
・時刻t時点で時刻t+2の教師データを学習することはできません (情報の先取りが発生します) 。
・例えば微分学習等を行う場合は、時刻t時点では時刻t-2時点での予測是非を学習させることができます。
データ説明
以下の3種類のデータが与えられ、いずれのデータも縦にtimestamp・横に投資戦略が並べられています。
Return
[timestamp, 戦略] の収益率
Turnover
[timestamp, 戦略] の取引高 (成立した売買約定の数量のこと)
Cost
[timestamp, 戦略] の取引執行コスト
上記3種類のデータを使用して、時点tにおける時点t+2で使用する各戦略への資金の割り当ての重みwを出力するモデルを作成していただきます。
Weight
[timestamp, 戦略] の割当資金の重み
フロー説明
市場現象という複雑な系の特性を鑑み、再現性の低さを前提とした上でよりロバストなモデルを採用するため、コンペティションを2つのステージに分けて開催します。
まず、開始から第1ステージ終了まではモデル作成に取り組んでいただきます。
新しいデータの公開を以って第2ステージの開始とし、このステージではアップロード期間に提出した予測値を出力したモデル (第1ステージと同一のモデル) を新データに対して走らせた結果を一度だけ投稿していただきます。
新しく公開するデータは開始日に公開したデータ (A) における観測期間と独立した期間のデータ (B) を追加したデータ (A + B) であり、最終評価に使用されます。
AとB両方のデータにおいてより優れたスコアを収めたモデルを上位とします。
観測期間と独立した期間のデータ (B) は開始日に公開したデータ (A) に対して連続した未来のものとなります。