local_csv
VXXとVXSTについて調べたかったので,VXSTをCBOEから取得して,Quantopian Researchの local_csv
関数 でファイルをUploadして使ってみました.
手順
-
ファイルをインポート
- vxst をローカルにダウンロード
- Quantopian > Research > data に移動し,Upload file ボタンを押下
- file を選択してアップロード
- upload したファイルが,https://www.quantopian.com/research/data に格納されているか確認
- file名をクリックするとファイルの中身を確認できます.
-
データをDataFrame化
- Research で任意のNotebookを作成
- local_csv を使ってファイルをDataFrame化
- VXXを取得して描画して眺める
vxst = local_csv("vxstcurrent.csv", # data 直下に入っていれば,ファイル名だけで良い
date_column="Date", # 元ファイルのDateコラムが日付だったので,ソレを指定.
use_date_column_as_index=True, # 日付コラムをインデックスに指定
skiprows=[0,1,2], # 元ファイルの1〜3行目にメモが入っているのでスキップさせる(0始まり)
)
vxx = get_pricing("vxx", start_date=vxst.index[0], end_date=vxst.index[-1], fields="price")
vxst["vxx"] = vxx
vxst[["Close", "vxx"]].loc["2017-1-1":].plot(secondary_y = "vxx")
エラー例
上記コードを走らせると,TypeError: index is not a valid DatetimeIndex or PeriodIndex
という例外が発生しました.
1-5の手順で説明したとおり,ファイル名をクリックして中身を確認したところ,一つの日付だけに,*4/20/2011
こんなふうに*
が混じっていて,これが,エラーの原因でした.
ファイルはウェブ上で修正できるので,*を削除してsaveし,再実行すればOKでした.
注意
Uploadしたファイルは永久にdataにあるわけではありません.何らかのタイミングで削除されるようです.お気をつけください.
Quantopian でのIndexについて
ところで,Quantopianは株価は取れても指標は取れません.
SPYやVXX等のIndex ETFは取れても,SPX(SP500)インデックスやVIXは取れません.
ですので,こうやってファイルをUploadして使う必要があります.
参照
その他のVIX系インデックスのリンクはこちら
vix http://www.cboe.com/publish/scheduledtask/mktdata/datahouse/vixcurrent.csv
vxst http://www.cboe.com/publish/scheduledtask/mktdata/datahouse/vxstcurrent.csv
vix3M (かつてのvxv) https://www.cboe.com/publish/scheduledtask/mktdata/datahouse/vix3mdailyprices.csv
vvixUrl http://www.cboe.com/publish/scheduledtask/mktdata/datahouse/vvixtimeseries.csv