Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
J-Quants表彰会資料 - 上位入賞者解法総評 #JQuants
Search
tomo
July 19, 2021
Technology
1
2.8k
J-Quants表彰会資料 - 上位入賞者解法総評 #JQuants
2021/07/19に行われたJQuants表彰会における上位入賞者解法総評の資料です。
tomo
July 19, 2021
Tweet
Share
More Decks by tomo
See All by tomo
マケデコ プログラミングに頼らないExcelシートと生成AIによる日本株データ分析 発表資料
gamella
1
760
株式のシステムトレード初心者の最初の一歩(評価方法を中心に)
gamella
1
720
アドベントカレンダーのお礼とマーケットAI開発プロジェクトにおけるプロジェクトマネジメントのエッセンス 補講
gamella
1
820
JPX Tokyo Stock Exchange Prediction Award Ceremony 解法総評
gamella
2
2.2k
LDAを利用した予測モデル構築 - J-Quants ニュース分析チャレンジ!発表資料
gamella
1
23k
為替短期予測を支える基盤技術 - データエンジニアミーティング資料
gamella
4
3.3k
Other Decks in Technology
See All in Technology
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
2
400
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
170
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
480
Google Cloud で始める Cloud Run 〜AWSとの比較と実例デモで解説〜
risatube
PRO
0
110
第3回Snowflake女子会_LT登壇資料(合成データ)_Taro_CCCMK
tarotaro0129
0
200
WACATE2024冬セッション資料(ユーザビリティ)
scarletplover
0
210
re:Invent 2024 Innovation Talks(NET201)で語られた大切なこと
shotashiratori
0
320
5分でわかるDuckDB
chanyou0311
10
3.2k
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
360
普通のエンジニアがLaravelコアチームメンバーになるまで
avosalmon
0
110
LINE Developersプロダクト(LIFF/LINE Login)におけるフロントエンド開発
lycorptech_jp
PRO
0
120
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
230
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
33
1.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
Facilitating Awesome Meetings
lara
50
6.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Done Done
chrislema
181
16k
Rails Girls Zürich Keynote
gr2m
94
13k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Statistics for Hackers
jakevdp
796
220k
Transcript
STRICTLY CONFIDENTIAL 2021/07/19 J-Quants 上位入賞者 解法総評
STRICTLY CONFIDENTIAL 問題設計の狙い 実際のトレーディングを想定したコンペ(といっても利食い・損切りなどがないなど制限はあるが) • 自分の投資戦略に近いものをそのまま利用可能(第3章) • ファンダメンタルズ分析チャレンジの成果を活かすことが可能(第4章) • ニュースデータのようなオルタナティブデータを活用するアドバンスな手法を試すことが可能(第
5,6章) 2 データサイエンティストの研究・工夫がそのままスコアに反映されるコンペとして設計 • トレーディング知識が薄くてもEDAの研究的なアプローチですすめることができる(第2章) • 特徴量・モデル評価やCVの設計方針がそのままスコアに反映され、努力してスコアを上げる楽しみ を体験できる(第2章) • 一方でトレーディングに詳しい方がドメイン知識を利用したアプローチも十分に可能(第7章)
STRICTLY CONFIDENTIAL ファンダメンタル分析チャレンジができるまで 本コンペを設計する上で、JPX様と一緒に過去のすべてのコンペの問題を分析 • 合計12個のコンペが過去にあったがデータサイエンティストの努力が反映されない設計 • データサイエンティストの努力がそのまま反映されるコンペを第一弾に作りたい 3 実際に20個程度の問題を作成し、有望ないくつかの問題を実際にAlpacaのデータサイエンティストが
データを用意して解いてみて以下の5観点で評価 • 元データの取得しやすさ • 話題性(面白さ) • 実取引での有用性 • 金融初学者の参入しやすさ • 分析しやすさ データサイエンティストの工夫に比例して、パフォーマンスが向上し、決算分析という王道の問題で、ア ナリストがよく発表する目標株価と近い概念の「20日以内の高値・安値予測」という問題が完成
STRICTLY CONFIDENTIAL 実際に問題を解いてみている時のサンプル 特徴量やラベルに対してRMSE、Accuracy、スピアマンの順位相関、ピアソンの相関などを解いてみて、 最もデータサイエンス的な努力に対してスコアが上がりやすく、運要素が極力少ないものを選択 4 いろいろな問 題に特徴量と モデルを複数 用意し、メトリ
クスのバラツ キを確認する
STRICTLY CONFIDENTIAL 上位入賞者の解法について モデル作成 利用モデルは以下の通り。モデルが汎化したことの評価方法に工夫が観測されました。 • LGBM 9(リグレッション/ランク学習) • XGBR
1 • ニューラルネットワークはなし 上位の人ほどCVや評価期間を工夫しており、本問題の本質がよく現れています。 5 2017-2020までの各年がfoldに対応する4fold-cv。先述の通り、信用できるCV手法が確立できたことが大きく、最終的なprivate LBのスコアはCVのスコアの誤差範囲内に収まっていた。 PublicLBの評価期間は2020年の通年でしたが、Privateの評価期間は3/27~5/15までのおよそ1.5ヶ月であるため、モデリングの 評価もこれに準じた期間で行いました。 具体的には①2019/12/27~2020/2/15、②2020/3/27~2020/5/15、 ③2020/6/27~2020/8/15、④2020/9/27~2020/11/15の4つの期間でそれぞれ評価スコアを計算し、それぞれのアベレージを見 て汎化性能が改善したかどうかを判断しました。 5FOLDクロスバリデーション。学習時は時系列データとしての考慮は特にしておらず、厳密に言えばリークが発生している可能性 はあるが、面倒だったので何も対策は行わなかった。 Time series cross validationを意識して2019年、2020年、2021年をテスト期間とした3つのfoldを作り汎化性能を計測した 汎化性能についても予測ラベルをクロスセクションで正規化する手法が効いたと考えています。 実際パブリックにおける精度とプ ライベートにおける精度はほぼ一致していました。
STRICTLY CONFIDENTIAL 上位入賞者の解法について 特徴量 ドメイン知識をフル活用(どれが支配的かを改めて選別する)するアプローチ、一般的なトレード指標を使 う、差分系列・セクター平均化などのテクニックが観測されました。ドメイン知識では本問題において、 レンジの情報が重要であることの指摘が多く、ボラティリティ予測の本質をきちんと知っていると感じま した。 6 ATR(Average
True Range)、利益率に関する指標(売上高純利益率など) PERやPBRなど一般的なトレードで重視される指標 前期からの差分や、前期の予測と今期の値との差分などの時系列方向の特徴量 セクター平均や日経平均の株価、制限値幅による株価の上限・下限 テクニカル: 20,40,60営業日のそれぞれについて、リターン、ボラティリティ、移動平均との乖離率、(最大-最小)/標準偏差、騰落 率の平均、騰落率の標準偏差、騰落幅の標準偏差/平均、RSI、MACD ファンダメンタル: ROE, ROA, EPS, PER, BPS, PBR, 配当性向、四半期ごとの修正回数、前四半期との差分(売上高、営業利 益、経常利益、当期純利益、総資産、純資産、一株当たり四半期配当金、一株当たり年間配当金累計) テクニカル分析の指標を算出できるtaライブラリを用いて,一度全特徴量を用いて予測.その後特徴量間の相関や重要度を観察 し,精度に対して悪く働いている特徴量を削除 累計値ではなく各期の伸び率を算出、RSI・MACDなどの株価指標、時価総額・EPS・PER・PBR
STRICTLY CONFIDENTIAL ニュース分析チャレンジができるまで ユーザーにできるだけ実取引を想定した問題を提供したい • 実取引をできるだけ想定したコンペ設計 • 運が絡むのはどうしても回避できないが、それでもある程度努力に応じた結果になってほしい 7 問題設計のポイント
• 売買の試行回数をある程度増やすことでデータサイエンス的な効果が出やすくする • さすがに1日単位では短すぎるので週単位とする • 1株単位で購入可能とすることで複数種類の株を買いやすくする • 購入代金を50万円以上と調整可能とすることで下落局面のコントロールもできる • フルでお金を投資必須とするよりも幅広いベータコントロールが可能になる • 運要素があまりにも高い銘柄(株価が数十円で1円の値動きで数%の利益となるなど)は排除 • 2020年12月末時点で、時価総額が200億を上回っていること ニュースチャレンジ問題を週単位のポートフォリオ問題として設計
STRICTLY CONFIDENTIAL 上位入賞者の解法について モデル作成 トレード手法の種別 • チュートリアルをベースに作成 2 / ファンダメンタルチャレンジをベースに作成
2 • オリジナルなトレードロジックを構築 4 / ニュースデータを利用したモデル 2 8 トレンドフォロー (順張り) 戦略を採用して、予測期間の直前 3営業 日の株価上昇率の高い銘柄を選択しました。 ファンダメンタルチャレンジの特徴量を作成した後、 XGBRegressorを用いて最終的な予測値を求め、上位 5銘柄によ るポートフォリオを構築する。 1. 短期的な上昇率 (20営業日)を算出。 2. 長期的な上昇率 (120営業日)を算出。 3. 短期的に株価が下降しているものは、 1で算出した上昇率を 0に 置き換える。 3. 短期・長期比率=短期上昇率(20営業日) / 長期変化率(120営 業日)を算出。 4. 短期・長期比率が上位の 25銘柄を購入。 - 予測対象: リターン((金曜日のclose価格 - 月曜日のopen価格) / 月曜日のopen価格) - 入力はテクニカル分析でよく用いられる手法 - 予測に基づきポートフォリを組む ファンダメンタル分析で作成した LightGBMのモデルを利用 予測ロジックはチュートリアル( Chapter6)ほぼそのままです。 1 点、N日間ボラティリティの箇所を logからlog1pに変えました。( 0が あるとエラーになると思ったので。) 6週間の変化率 1. 投資対象銘柄群と各セクターのセンチメントスコア算出のため に、ニュースデータを利用して LSTMモデルにより予測 ⇒チュートリアルモデルを参考にし、データセット、出力層数、モ デル構造の一部を変更 2. BERT特徴量のクラスタリングには K-meansを使用。 インディケータやラグ特徴量の追加、、ポートフォーリオの組み方 もチュートリアルよりも低い金額で多く分散させたことがいい結果 を生んだのではないかと思っております。 1. 5日間の株価変化率【(5日目最安値ー1日目最高値) ÷1日目 最高値とすべきところを(当日最安値ー5日前最高値) ÷5日前最 高値としている】を算出し、その株価変化率を 5%刻みで5クラスに 分類し目的変数とした。なお、株価は様々な要因で1日の中でも 変動するので、変化率の算出には始め値、終値ではなく、最安 値、最高値を利用した。 2. 株価情報をもとに作成した特徴量と目的変数を使用して lightGBMで予測モデルを作成した。 3. 株価変化率とソフトマックス関数の出力値を元に、投資銘柄お よび投資金額を決定した。
STRICTLY CONFIDENTIAL 上位入賞者の解法について モデルの評価方法 9 汎化性能を計測するために採用した評価方法 評価時に特に重要視したメトリクス 特に評価してません。 自身の投資経験から、順張りは逆張りに比べてリ スクは低いと考えてました。
株価上昇率 ニュース分析チャレンジでの予測モデルは、ファンダメンタルズ分析 チャレンジのモデルを採用しました。以下はファンダメンタルズ分析 チャレンジのモデリングにおける評価方法です。 PublicLBの評価期間は 2020年の通年でしたが、Privateの評価期間は3/27~5/15までのおよそ 1.5ヶ月であるため、モデリングの評価もこれに準じた期間で行いまし た。 ニュース分析チャレンジでの予測モデルは、ファンダメンタルズ分析 チャレンジのモデルを採用しました。以下はファンダメンタルズ分析 チャレンジのモデリングにおいて重視したメトリクスです。 特に重視し た評価メトリクスは、高値と安値それぞれのランク相関値です。 学習データより未来の日付における株取引の利益を算出 株取引における利益 (機械学習モデル作成時には、スピアマン順位相関 係数も活用) 上昇トレンド、下降トレンドの日時探して、シャープレシオを評価 シャープレシオ 特になし RMSE 特にありません。 特にありません。 特にありません。 特にありません。 ホールドアウト法 モデルの重み決定には損失値を重視、複数モデル作成したわけでは無い ためモデル間の比較は行っていない。 ピアソン相関係数、スピアマン相関係数 mae 特に行っていません。 特にありません。 5年間のデータのうち、対象年度を変えながら、3年間を学習、1年を 検証、1年をテストに分割して評価。 Accuracy
STRICTLY CONFIDENTIAL 皆様への感謝とこれからの発展にむけて たくさんの参加者の皆様のおかげで大変盛り上がったコンペ となりました。Alpacaが作成したチュートリアルも大変評価 いただき、我々にとっても大変励みになりました。 今後も、日本でデータサイエンス的なアプローチを採用した マーケット予測が普及する上で様々な活動を積極的に実施し ていきたいと考えておりますので、皆様のご指導・ご協力を 何卒よろしくおねがいします。
10
STRICTLY CONFIDENTIAL Thank You! 11