2021年11月4日木曜日

VIX先物の始値・高値・安値のデータ集め


新型コロナの緊急事態宣言中の2020年5月頃に、暇を持て余してVIXを探求して、バックテスト上は儲かる取引ルールを決めましたが、結局上手く行かずに、止めてしまいました

その時の問題点は、
・room5110 のバックテストに影響されて、終値で売買シグナルを確認し、時間外取引で終値と同じ金額でポジションを持てたという前提にしていましたが、現実には無理です。そもそも、GMOクリック証券では、終値を指定する発注方法がないので、その時間に起きて成行で発注しななければなりませんが、毎朝5時に起きられません。

・終値しかデータを持っていないので、高値・安値でロスカットにあっていた可能性を考慮出来ておらず、現実的なバックテストとは言えませんでした。

そこで、前日終値でシグナルを確認し、翌日始値でポジションを持ち、なおかつ高値・安値も確認する、もっと現実的なバックテストをしようと思い、米国VIブルETF(UVXY)の始値・高値・安値データを探しました。

UVXY(ProShares Ultra VIX Short-Term Futures ETF)が設定された2011年からのマーケットデータは見つかりましたが、それでは期間が短いため、VIX先物が始まった2004年からのデータを探すため、ETFのベースになっている「S&P 500 VIX Short-Term Futures Index」から逆算しようと思い、「S&P 500 VIX Short-Term Futures Index Historical Data」「SPVIXSTR Historical Data」などで検索しましたが、見つかりませんでした。(そもそも、この指数はローンチが2009年なので、2004年からの公式データはないです。)

そこで、無いなら自分で過去の理論値を算出してみようと思い、VIX先物の第1限月と第2限月の始値・高値・安値の価格データから、自分で常に1ヶ月先に満期を迎える先物の合成価格(コンスタント・マチュリティ、Constant Maturity)を算出することにしました。

この方法の問題点は、始値は第1限月と第2限月でタイミングが一致するので、単純計算すればいいですが、高値と安値は同じタイミングでその値をつけたとは限らないので、単純に計算すると、現実とは齟齬が出る点です。
例えば、第1限月の高値は朝9時につけて、第2限月は午後3時に高値をつけた場合、正式な「S&P 500 VIX Short-Term Futures Index」の高値と、自分で計算した高値では、値が変わります。
しかし、他に方法がないですし、基本的に高値と安値は、ほぼ同じタイミングでつけた可能性が高いので、便宜的に単純計算します。

なお、ちゃんとしたマーケットデータは、CBOE公式サイトで1ヶ月分50ドルで販売中です。2004年分から買うと100万円を超えます。


VIX先物の第1限月と第2限月の始値・高値・安値データは、CBOEの公式サイトに無料であります。
https://www.cboe.com/us/futures/market_statistics/historical_data/

去年あたりまでは、2004年分から見れていましたが、今は2013年以降しか見られなくなっているため、インターネット アーカイブで2004年からのデータを取りました。
https://web.archive.org/web/20140408134839/http://cfe.cboe.com/Data/HistoricalData.aspx#VX


なお、2007年頃までは、なぜかエクセルファイルの値が壊れている(価格が3桁の時期がある)のですが、他サイトのデータと整合を取ると、どうやら小数点の位置がおかしくなっているようです。例えば、136.7 となっているところは、13.67 が正しいです。



【2022.01.25追記】
Cboeの公式サイトにまだ残っていました。
https://www.cboe.com/us/futures/market_statistics/historical_data/archive/#CboeSnP


ちなみに、VIX現物の始値・高値・安値・終値データはこちら
https://www.cboe.com/tradable_products/vix/vix_historical_data/

エクセルファイルが1ヶ月ごとに1ファイルなので、全てのエクセルを統合するのが手間で、今は保存だけして放置しています。飽きる前にやりきろうと思うので、完成したらGoogle スプレッドシートで公開しようと思います。先に同じことをしている方がいましたら、結果を共有して頂けると助かります。


ちなみに、クラウド上で、株価・先物価格の分析、アルゴリズム設計、バックテスト、自動売買が出来るプラットフォームとして、Quantopian (2020年閉鎖)や QuantConnect があります。 
VIX先物データもあるそうですので、英語と Python が出来る方は、そちらの方が最短ルートだと思います。
 

0 件のコメント:

コメントを投稿