Simple strategy: Each day, hold XIV if contango >
VXX if contango <
vxx.cutpoint, and hold cash otherwise. Perhaps not
very useful since XIV closed on Feb. 20, 2018.
Numeric vector of contango values at the end of each trading day.
Numeric vector of gains for XIV. Should be same length as
Numeric vector of gains for VXX. Should be same length as
Numeric value giving the contango cutpoint for XIV, in percent.
Numeric value giving the contango cutpoint for VXX, in percent.
Numeric value giving the initial value of the portfolio.
You can find historical contango values from The Intelligent Investor Blog. You can click the first link at http://investing.kuchita.com/2012/06/28/xiv-data-and-pricing-model-since-vix-futures-available-2004/ to download a zip file containing an Excel spreadsheet. Then, you will need to calculate whatever version of "contango" you prefer. I typically define contango as what percent higher the second-month VIX futures are acompared to the first-month futures, i.e. dividing the "2nd mth" column by the "1st mth" column, subtracting 1, and then multiplying by 100.
I think the most common approach for contango-based volatility strategies is
holding XIV (inverse volatility) when contango is above some value (e.g. 0%,
5%, or 10%), and holding cash otherwise. You can do that with this function
-Inf. However, you may also want to
hold VXX (volatility) when contango is below some value
(e.g. 0%, -5%, -10%), also known as "backwardation". You can implement an
XIV-only, VXX-only, or XIV and VXX strategy with this function.
To load daily gains for XIV and/or VXX, you can use
which uses the quantmod package  to load data from Yahoo! Finance.
You will have to specify the
to inputs to match the
date range for your contango values.
Character vector named
holdings indicating what fund was held
each day (XIV, VXX, or cash).
Numeric vector named
port.gains giving the portfolio gain for
each day, which will be 0 for days that cash was held and the XIV or VXX gain
for days that XIV or VXX was held.
Numeric vector named
port.balances giving the portfolio balance
Numeric value named
trades giving the total number of trades
Ryan, J.A. and Ulrich, J.M. (2017) quantmod: Quantitative Financial Modelling Framework. R package version 0.4-12, https://CRAN.R-project.org/package=quantmod.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.