Idea in brief
Laurens Bensdorp trades 55 strategies on stocks and ETFs. In a sharp crash, long systems lose at the same time, however they are diversified: when the S&P 500 falls 3-4% in a day, everything is in the red. For such days Bensdorp has three kinds of hedges. The trend-following index short for a catastrophe is described in the index-crash-hedge card. Mean reversion shorts work in a prolonged bear market. The third kind, long volatility for a sudden panic, is described here.
A buy stop sits permanently on VXX, an ETN on short-term VIX futures, above a 10-day Keltner channel. A panic candle up fills the order the same day. The exit is at the low of the last three days. Most trades lose, and the author does not hide it: the strategy is meant to make money on the days when everything else loses.
The parameters differ between the two episodes. In #025 the channel is 1 ATR wide and the exit is named. In #042 the width is 2 ATR, and the exit is not named. Both variants are below.
Why it might work
When stocks are sold off, expected volatility jumps and VIX products soar. The author's other hedges may not work in the first days of a panic. Trend-following shorts wait for a cross of the 100- or 200-day average. Mean reversion shorts need a pullback and stay out of the market in a rapid decline. A buy stop on VXX closes this hole: if a panic has started, the position opens immediately.
In #025 the author describes the scenario the hedge was built for. It is a V-shaped crash with a quick rebound. Trend-following and countertrend longs are stopped out, shorts have not had time to enter, and the portfolio is left unprotected. In the author's words, the hedge must be in position at the slightest sign of a spike, whatever it costs in calm years.
The price of such insurance is high. Volatility ETFs and ETNs melt away in calm periods, and the author speaks of a strong downward drift. The hedge's long-term equity curve falls into a deep drawdown. The author suggests looking not at that curve but at the spikes in crises, and judging the hedge only together with the long portfolio. The figures in the interviews are approximate, and there is no test with a report.
Rules
Channel and entry (author, channel construction by Finetiq)
// daily VXX bars, adjusted for splits // author: VXX
// the author names a Keltner channel but does not specify the average or the ATR length
Mid = EMA(Close, 10) // author: 10 days; Finetiq: EMA of closes
ATR10 = ATR(10) // Finetiq: same length as the channel, Wilder smoothing
Upper = Mid + k * ATR10
// author: k = 1 in #025, k = 2 in #042 (discrepancy between episodes)
IF position = FLAT
BUY STOP at Upper[1] // author: the order is always in place; level from yesterday's closed bar
// on a gap above the level, entry at the open price
Exit (#025)
IF position = LONG
SELL STOP at Lowest(Low, 3)[1] // author (#025): three-day low, recalculated daily
// author: while VXX rises, the level trails up behind the price
// #042 does not name an exit. Finetiq: for both variants we use the exit from #025
// Finetiq, alternative to test: EXIT AT NEXT BAR OPEN when Close < Mid
// the author does not name a separate stop-loss
Size (author: a small share, number by Finetiq)
// author: a small share of capital alongside the long portfolio, no number given
HedgeAlloc = 10% // Finetiq: test 5% and 20%
Shares = floor(Equity * HedgeAlloc / EntryPrice)
// Finetiq: size is fixed at entry and does not change during the trade
Evaluation (author: principle, windows by Finetiq)
// author: the hedge is judged by its spikes on days when the long portfolio falls
LongBook = your long portfolio or buy-and-hold SPY
Combined = (1 - HedgeAlloc) * LongBook + HedgeAlloc * Hedge
PanicDays = days when SPY fell 3% or more // author: panic, S&P down 3-4%; Finetiq: 3% threshold
Report = hedge result on PanicDays and over the 10 days after them,
maximum drawdown of Combined versus LongBook,
hedge result in calm years (the cost of insurance)
Parameters
| Parameter | Value | Source |
|---|---|---|
| Instrument | VXX (VIX futures and puts possible) | author |
| Channel length | 10 days | author |
| Channel width | 1 ATR (#025) or 2 ATR (#042) | author |
| Channel average | EMA(Close, 10) | Finetiq |
| ATR | 10 days, Wilder | Finetiq |
| Entry | buy stop, always in place | author |
| Exit | three-day low | author (#025) |
| Capital share | 10%, test 5-20% | Finetiq (author: a small share) |
| Panic day threshold for evaluation | SPY down 3% in a day | Finetiq |
What to test
- The hedge in the portfolio. The main test. A long portfolio with a 5%, 10% or 20% hedge versus the portfolio without a hedge: maximum drawdown, worst month, time under water, return. A standalone hedge equity curve does not answer this question.
- 1 ATR versus 2 ATR. Trades per year, share of losing trades (the author speaks of roughly eight out of ten), average loss and the result in spike windows: August 2011, August 2015, February 2018, February-March 2020, August 2024.
- Two readings of "channel plus 2 ATR". An upper band 2 ATR wide, as in the card, versus a band 1 ATR wide plus another 2 ATR on top. The second reading enters less often and later, and in a fast panic this can cost the entire profit.
- Exit. Three-day low versus two and five days, versus a close below Mid, versus an exit after 5 days. The author expects to give back half the profit. Calculate what share of the peak each variant keeps in crisis trades.
- Channel construction. EMA versus SMA for the midline, Wilder ATR versus a simple average of TR. For a 10-day channel the difference is noticeable precisely on spike days.
- Instrument. VXX versus the front VX future. The VIX index is for comparing signals, not results: the index is not tradable, and a test on it will miss the ETN's downward drift.
- Gaps. Share of entries that opened with a gap above the stop level, and the average distance between the level and the open. In a panic a buy stop often fills worse than the level.
Platform notes
TradingView (Pine Script)
- Calculate the channel yourself:
ta.ema(close, 10)andta.atr(10), which is already Wilder-smoothed.ta.kcmay build the width differently, so check it against the formula. strategy.entry("VXX", strategy.long, stop = upper)stays active until filled or canceled. Call it on every bar with the new level while there is no position. Exit:strategy.exit("X", "VXX", stop = ta.lowest(low, 3)). In the pseudocode the levels come from the last closed bar (Upper[1],Lowest(Low, 3)[1]), because the stop works inside the current bar. In Pine an order placed at the bar close starts working only on the next bar, so the same levels are written without an offset:stop = upperandstop = ta.lowest(low, 3). A[1]offset in Pine would push both levels back by one more bar.- On daily bars you cannot tell the order of a stop entry and an exit on the same day. Days with a large range need
use_bar_magnifier = true(paid plans) or a lower timeframe. - The current VXX in Norgate starts in January 2018, and the previous series lived from 2009 to 2019 (details in the
vix-term-structure-regimecard). If the provider lacks the previous series, the test will have no 2011 or 2015.
MultiCharts and TradeStation (EasyLanguage)
Buy next bar at Upper stoplives for one bar. Send the order every day whileMarketPosition = 0.- At the bar close
Lowest(Low, 3)already includes this bar. For the orderSell next bar at Lowest(Low, 3) stopthis is exactly the low of the last three days. AvgTrueRangeis a simple average of TrueRange. To match the card, calculate Wilder ATR:ATRw = ATRw[1] + (TrueRange - ATRw[1]) / 10. Average:XAverage(Close, 10).- Check that the series is split-adjusted. VXX has had reverse splits: on unadjusted data such a day looks like a multifold price jump and produces a false breakout. The hedge together with long strategies: Portfolio Trader in MultiCharts or Portfolio Maestro in TradeStation.
MetaTrader 5 (MQL5)
- Few brokers offer VXX as a stock CFD, and VIX futures are usually unavailable. A "VIX" CFD follows the future with its own rolls, which makes it a different instrument with a different drift.
- For testing, VXX history can be loaded as a custom symbol (
CustomSymbolCreate,CustomRatesUpdate). Live trading needs a broker that offers this instrument. - There is no built-in Keltner channel. Average:
iMA(..., MODE_EMA, ...).iATRis a simple average of TR, so calculate Wilder yourself. - Place the buy stop via
CTrade.BuyStopwith expiration at the end of the day, again every day. The exit is easier to manage as the position's SL price, moved after the bar closes. A long CFD position pays swap every night, and the spread widens in a panic.
Where the idea can break
- The author's figures are estimates: "about eight out of ten", "say, 80%" in COVID, an 8-fold VIX rise in 1987 from memory. There is no test report, number of trades or period. In 1987 the VIX index was not yet published, and only a later reconstruction of its old version, the VXO index, exists. On that series (an external source, not the author's words) the index rose roughly fourfold on October 19, 1987, about 36 → 150, not 8 times. VXX appeared in 2009.
- The parameters differ between the two episodes, and the words "channel plus 2 ATR" allow two readings. The average and the ATR length in the channel are ours.
- The history is short and stitched: the VXX series changed in 2018-2019, and there were reverse splits. There are only a handful of large spikes in the sample, and the evaluation of the hedge rests on them.
- Volatility ETNs melt away in calm years. The author expects a long-term drawdown of about 90%. After a few losing years the hedge is easy to switch off, and the portfolio will be left unprotected exactly at the moment the hedge was built for.
- An exit at the three-day low gives back a noticeable part of the peak, and the author expects about half of the profit. If a spike fits into one or two days, a stop entry near the peak and an exit after the reversal may produce a loss even on a panic day.
- In a panic a buy stop fills with slippage, and the VXX spread widens. Using the stop level as the entry price in a test is optimistic.
- A VIX hedge protects a portfolio that resembles the S&P 500. A small-cap or single-sector portfolio falls differently, and it needs a different hedge share.
- In both episodes the author promotes their own school and books.