kaggle比賽案例|股票市場波動率預(yù)測baseline
Kaggle 上近日發(fā)布了一個時間序列方向的新賽:Optiver Realized Volatility Prediction,即“ 股票市場波動率預(yù)測 ”比賽。獎金10W美刀,要求參賽者構(gòu)建模型預(yù)測不同行業(yè)數(shù)百只股票的短期波動。

這是一個時間序列預(yù)測的任務(wù),整體難度不大,適合機(jī)器學(xué)習(xí)/深度學(xué)習(xí)初學(xué)者參加。此外,本次比賽還涉及到金融行業(yè)的量化交易知識,對此感興趣的同學(xué)千萬不要錯過。
01 比賽簡介
比賽名稱:
Optiver Realized Volatility Prediction
比賽鏈接:
https://www.kaggle.com/c/optiver-realized-volatility-prediction/leaderboard
波動率是你在任何交易大廳都會聽到的最重要的術(shù)語之一,高波動性與市場動蕩時期和價格大幅波動有關(guān),而低波動性則描述更平靜和安靜的市場。
對于像Optiver這樣的交易公司來說,準(zhǔn)確預(yù)測波動率對于期權(quán)交易至關(guān)重要,期權(quán)的價格與標(biāo)的產(chǎn)品的波動率直接相關(guān)。
1.1 比賽目標(biāo)
在本次比賽的前三個月,你將構(gòu)建模型來預(yù)測不同行業(yè)數(shù)百只股票的短期波動。你將擁有觸手可及的數(shù)億行高度細(xì)化的財務(wù)數(shù)據(jù),你將利用這些數(shù)據(jù)設(shè)計預(yù)測 10 分鐘內(nèi)波動率的模型。
你的模型將根據(jù)訓(xùn)練后三個月評估期內(nèi)收集的真實市場數(shù)據(jù)進(jìn)行評估。
1.2 比賽時間
2021年6月28日-開始報名比賽;
2021年9月20日-合并隊伍截止日期;
2021年9月27日-最終提交日期.;
在最終提交截止日期之后,排行榜將定期更新,以測試比賽選手模型在真實交易市場的實時分?jǐn)?shù)。
1.3 評估指標(biāo)
**評估指標(biāo):**本次評估指標(biāo)用的是RMSPE,如下所示:

結(jié)果提交:
結(jié)果文件submission.csv中應(yīng)該包括row_id和target兩列,如下所示。并且必須通過Notebooks來提交代碼,運(yùn)行時間不能超過九個小時。提交示例文件如下:
代碼:
02?數(shù)據(jù)分析
該數(shù)據(jù)集包括了在金融市場中實際交易執(zhí)行相關(guān)的股票市場數(shù)據(jù),包括了訂單簿數(shù)據(jù)和交易數(shù)據(jù)。秒級的數(shù)據(jù)以更細(xì)的粒度描述了金融市場的微觀結(jié)構(gòu)。
數(shù)據(jù)集是不允許下載的,只有測試集的前幾行可供下載,可在notebook中進(jìn)行使用,隱藏的測試集大概有15w的數(shù)據(jù)需要預(yù)測,public leaderboard和private leaderboard所使用的的數(shù)據(jù)是完全沒有重疊的。
這個比賽主要提供了book和trade的信息,下面直接結(jié)合這兩部分信息來幫助大家快速了解比賽內(nèi)容。


2.1 book數(shù)據(jù)
book0?=?util.load_book(0)

該文件中提供了進(jìn)入市場的最具競爭力的買賣訂單的訂單簿數(shù)據(jù),通俗來說,也就是買一,賣一,買二,賣二價格數(shù)據(jù)。一個stock_id對應(yīng)了一個訂單簿文件,test里面只有stock_id=0的數(shù)據(jù)。

2.2 trade 數(shù)據(jù)
該表格提供了交易數(shù)據(jù)。通常來說,投資者被動買賣的交易意向比實際交易要多得多,所以實際的交易數(shù)據(jù)會比訂單簿更加稀疏。
(被動買賣:不著急出手,認(rèn)為股票股價還有發(fā)展的潛力(或跌或漲),掛單的價格相比于買一賣一沒有那么有競爭力;主動買賣:急于出手,以賣一價以上的價格成交或以買一以下的價格成交)。
一個stock_id對應(yīng)了一個交易數(shù)據(jù)文件,test里面只有stock_id=0的數(shù)據(jù)。


根據(jù)股票id和時間合并trade和book表格之后的數(shù)據(jù)如下:

2.3 金融背景知識補(bǔ)充
這里先要對不熟悉背景的同學(xué)介紹一下什么叫做Order Book。
現(xiàn)在主流的交易所一般都使用Order Book進(jìn)行交易,交易所在內(nèi)部的Order Book上記錄所有買家和賣家的報價,比如像這樣:

Bid表示買家,Offer表示賣家,這張報價單表示買賣雙方發(fā)出的所有報價單(Limit Order)。這張表才是高頻交易最關(guān)心的信息。任意時刻,買家的出價總是低于賣家(比如這里的98對101)。所以報價雖然一直在變化,但是只有報價是不會有任何成交的。
什么時候會產(chǎn)生交易呢?有兩種情況:第一是任一方發(fā)出市價單(Market Order),比如一個買家發(fā)出一張單量為10的市價單,就可以買到賣方在101價格上掛的10份,這個交易成功之后,Order Book會變成這樣:

03 基于特征工程與LGB的波動率基線模型
3.1 金融交易特征
3.2 統(tǒng)計編碼特征
關(guān)注【學(xué)姐帶你玩AI】公眾號,點擊菜單【聯(lián)系學(xué)姐】獲取完整baseline代碼
3.3 LGB模型構(gòu)建
訓(xùn)練日志如下

金牌區(qū)開源代碼公眾號有完整版:
https://mp.weixin.qq.com/s/9csOFLBnGKTeTZTxvPUUrQ