【DL輪読会】Universal Trading for Order Execution with Oracle Policy Distillation

>100 Views

November 24, 21

スライド概要

2021/11/05
Deep Learning JP:
http://deeplearning.jp/seminar-2/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

DEEP LEARNING JP [DL Papers] Universal Trading for Order Execution with Oracle Policy Distillation (AAAI 2021) Jun Hozumi, Izumi Lab http://deeplearning.jp/ 1

2.

書誌情報 • Universal Trading for Order Execution with Oracle Policy Distillation • Author: Yuchen Fang, Kan Ren, Weiqing Liu, Dong Zhou, Weinan Zhang, Jiang Bian, Yong Yu, Tie-Yan Liu • Shanghai Jiao Tong University & Microsoft Research • Conf.: AAAI 2021 • URL: https://arxiv.org/abs/2103.10860 • (図表はすべて論⽂内からの引⽤) 2

3.

はじめに(1) • 投資は利益を最⼤化するために資産ポートフォリオを随時調節するが、その際に注⽂ を執⾏する • • つまり、注⽂は利益最⼤化のために実⾏される 注⽂執⾏時の課題 • 短時間で⼤量の取引を⾏うことで⽣じる「マーケットインパクト」の回避 • 良い取引を逃してしまう「価格リスク」の抑制 • 伝統的な⼿法が有効ではなくなる • そこで、モデルフリーの強化学習が活⽤され始めている 3

4.

はじめに(2) • 強化学習によって取引を⾏う上で、いくつかの問題がある • データのノイズが多すぎる • 過去しか参照できない • 本研究では注⽂執⾏のための普遍的な⽅策最適化フレームワークを提案する • ノイズが多く不完全な市場情報と最適な注⽂執⾏⽅策との間のギャップを埋めるため の⽅策蒸留アプローチを提案する 4

5.

問題の定式化 • (以下では売却のケースを考える) • Tタイムステップ中の時点𝑡 !,#,…,%&# ごとの価格𝑝' に数量𝑞' の売買を実⾏する • 全取引量を𝑄とし、以下の問題を解く • % 平均執⾏価格𝑃は • % 多くの収益を得るためには、𝑃を最⼤化する必要がある(購⼊の場合は最⼩化) 5

6.

強化学習による取引の定式化 • 注⽂執⾏はマルコフ決定過程として定義できる • 報酬関数 𝑅(𝑠, 𝑎)によって期待される報酬の合計を最⼤化しながら観測された状態 𝑠 ∈ 𝑆に⾏動𝑎 ∈ 𝐴を提案することで取引プロセス全体を制御する⽅策𝜋を学習する • 状態: プライベート変数(𝑡や余剰在庫𝑄 − Σ𝑞など)とパブリック変数(過去のOHLCな ど) • ⾏動: 𝑎 = 𝜋(𝑠)で、𝑞 = 𝑎𝑄とする • Σ𝑎 = 100%になるので、 6

7.

報酬設計(1) • 報酬の正の部分を、ボリューム加重価格優位性として定式化する (時間幅全体の平均的なオリジナルの市場価格) • 絶対収益率に正規化を適⽤することで、指⽰価格や⽬標注⽂量の違いによる分散を排 除し、様々な⾦融商品に対応する普遍的な取引戦略を最適化していく • 𝑝の計算に将来の商品価格が使⽤されているが、報酬が状態に含まれることがないこ 4 とから、リーケージは発⽣しない 7

8.

報酬設計(2) • 取引が市場に与える影響(マーケットインパクトなど)を考慮するために、ペナルテ ィ項を導⼊ • 以上より、報酬は • 強化学習の最終的な⽬標は • (注: 市場は1タイムステップで回復するものとし、⼿数料は無視している) 8

9.

教師と⽣徒 • 教師: オラクルとして振る舞い、完全情報(未来まで⾒えている)な 𝑠̃' が与えられた とき最適な⽅策𝜋4 ( (6 |𝑠̃' )を環境との相互作⽤を通じて獲得することを⽬的とする • ⽣徒: 不完全情報(現在までしか⾒えない)な𝑠' が与えられたとき最適な⽅策𝜋) (6 |𝑠' ) を環境との相互作⽤を通じて獲得することを⽬的とする • ⽣徒の学習が教師とどれだけ⼀致するかを測定する負の対数尤度損失を導⼊する(⽅ 策蒸留損失) • 𝑎が⽣徒の⾏動、𝑎が教師の⾏動 ' 9

10.

学習アルゴリズム: PPO • 教師と⽣徒はそれぞれ同じ学習アルゴリズムで別々に学習していく • Proximal Policy Optimization(PPO)を活⽤し、エピソード中で達成される期待報酬を 直接最⼤化するための⽅策を最適化する 10

11.

損失関数の設計 • PPOでは、以下の⽬的関数を最⼩化する • 8 𝐴は推定アドバンテージ • 𝑉) (6)はCriticネットワークによって近似された価値関数であり、価値関数損失によっ て最適化される • 𝑉' は将来の累積報酬の経験値 11

12.

損失関数 • 損失関数全体は、以下の式で表される • • 教師側に𝐿! はない (実⾏時(テスト時)には、教師側のモデルは⽤いない) 12

13.

実験 • • 実験により以下のResearch Questionに関し調べる • 提案⼿法は適切な注⽂執⾏戦略を発⾒するか? • ⽅策蒸留はパフォーマンス向上に有効か? • 取引に典型的なパターンは⽣じるか? 中国のA-sharesデータセットを使⽤ • 2017/1/1〜2019/6/30の分⾜の市場情報や⽇ごとの注⽂量 13

14.

評価⼿法 • 評価フロー • 評価指標 • (平均)報酬: • Price Advantage (PA): • Gain Loss Ratio (GLR): |𝔻|はデータセットのサイズ , 𝑃は平均執⾏価格 𝑝は平均市場価格(⼀定) . 14

15.

結果(1) • 各指標で提案⼿法が上回り、Oracle Policy Distillation(OPD)の効果を確認できる 15

16.

結果(2) • 学習がうまく収束していることが分かる • OPDの効果が報酬でもPAでも確認できる • OPDの有効性は特にValidationで顕著になる 16

17.

結果(3) • 取引パターンの分析 • OPDT(Teacher)は未来情報を参照しているため最も良くなる • DDQNは全部同じパターンの取引に陥っている • PPOやDDQNに⽐べ、OPDがより効率的な取引ができている 17

18.

まとめ • • 最適な注⽂執⾏のための強化学習フレームワークを提案した • 様々な⾦融商品の知識を学習し、普遍的な⽅策を学習する • Oracle Policy Distillationにより、サンプル効率を向上させる 今後は単⼀の商品から普遍的な⽅策を学習する⽅策蒸留ができるようにしたい 18