- 金融時系列解析 #まとめ編
Index
ボラティリティー / Volatility
時系列データを評価・ラベリング(ここでの目的は機械学習アルゴリズムで使用するためラベリング)をするときに
「ボラティリティー / Volatility」は非常に重要な考え.
ボラティリティー / Volatility とは、一般的に価格変動の度合いのこと.
「ボラティリティーが大きい」という場合は、その金融商品の価格変動が大きいことを意味し、
「ボラティリティーが小さい」という場合は、その金融商品の価格変動が小さいことを意味する.
ボラティリティーを標準偏差で数値化し、その金融商品のリスクとの度合いと考えるのが一般的.
トリプルバリア法
金融分野の機械学習の論文では、「固定時間ホライズン法」を用いて観測データにラベルを付けることが多い.
(「固定時間ホライズン法」については、割愛.)
しかし、いくつかの理由でこの方法でラベリングすることは望ましくないケースがある.
そこで、改良版の「トリプルバリア法」を考える.
このラベリング方法は、時系列データに 3 つライン(手法名としてはバリア)を用意し、それらに触れた時点でイベント発生と見なし、
何らかのラベルを付与する.
3 つのラインとは
それぞれのイベントが発生したときに以下のようにラベリングする.
イベント名 | ラベル |
---|---|
利益確定 | 1 |
損切り | -1 |
有効期限 | 0 (or 1) |
実装
データの取得
こちらの記事の「株価データ」と同様に取得する.
CUSUM フィルタを利用したイベントベースのサンプリング
こちらの記事で記した「CUSUM フィルタ」(get_t_event) を利用する.
日次ボラティリティー (標準偏差) の計算
時系列データの変化の大きさを計算する.
入力は株価データの終値、出力は日次ボラティリティー (標準偏差) .
関数 | 説明 | 参考 |
---|---|---|
pandas.searchsorted | ソートされた配列に順序を崩さずに挿入できるインデックスを取得する関数) | searchsortedの使い方 |
pandas.ewm | 指数平滑移動平均の計算 | |
pandas.std | 標準偏差の計算 |
参考
- Classification-based financial markets prediction using deep neural network
- Dixon et al. [2016]
- 固定時間ホライゾン法を利用
- arxiv.org