Toby Crabel's narrow range with historical volatility
May 25, 2018

The Toby Crabel's narrow range with historical volatility tool identifies consolidation patterns based on price range contraction and volatility filters to capture potential breakout opportunities. By detecting periods where the current price range is the narrowest over a specified period, the script highlights high-probability setups for impending volatility expansion.
Usage
The tool is primarily used to identify "Narrow Range" (NR) bars that occur within an inside bar structure. When a narrow range bar is detected and the historical volatility filter is met, the script suggests placing stop-orders at the high and low of the previous bar.
- Long Entry: Triggered when price breaks above the high of the setup bar.
- Short Entry: Triggered when price breaks below the low of the setup bar.
- Exit Strategy: The strategy is designed for short-term bursts, typically closing positions on the subsequent bar or using the opposite side of the setup bar as a stop-loss.
Details
The script combines two core concepts:
- Narrow Range (NR): It calculates the difference between the high and low of each bar and identifies when this range is the lowest within the user-defined
NR Period. - Historical Volatility (HVol) Filter: It compares short-term historical volatility (
LookBack Small) against long-term historical volatility (LookBack Big). A breakout is considered more reliable if it occurs when short-term volatility is significantly lower than the long-term average, suggesting a "coiled spring" effect.
Settings
NR Settings
- NR Period: The number of bars to look back to determine if the current bar has the smallest range.
- Use HVol: Toggle to enable or disable the historical volatility ratio filter.
- HVol Ratio: The threshold for the ratio between small-lookback and big-lookback historical volatility.
Volatility Calculation
- LookBack Big: The period used to calculate the baseline long-term historical volatility.
- LookBack Small: The period used to calculate the current short-term historical volatility.
- Annual: The number of trading days in a year used for volatility annualization.
Backtesting
- Custom Backtesting Dates: Enables the selection of a specific time range for historical performance analysis.
- Start/Stop Dates: Specific year, month, day, and hour inputs to define the backtesting window.
FAQ
How do I use the historical volatility filter effectively?
The historical volatility filter ensures you only take trades when the market is exceptionally quiet relative to its recent history. Setting a lower HVol Ratio (e.g., 0.50) means the short-term volatility must be half of the long-term volatility for a signal to trigger.
Can this be used on intraday timeframes?
Yes, the script automatically adjusts its calculations based on whether it is running on intraday or daily timeframes, though the Annual setting should be adjusted to reflect the number of periods in a trading year for your specific asset.
How can I access Toby Crabel's narrow range with historical volatility?
You can get access on the LuxAlgo Library for charting platforms like TradingView, MetaTrader (MT4/MT5), and NinjaTrader for free.
Trading & investing are risky and many will lose money in connection with trading and investing activities. All content on this site is not intended to, and should not be, construed as financial advice. Decisions to buy, sell, hold or trade in securities, commodities and other investments involve risk and are best made based on the advice of qualified financial professionals. Past performance does not guarantee future results.
Hypothetical or Simulated performance results have certain limitations. Unlike an actual performance record, simulated results do not represent actual trading. Also, since the trades have not been executed, the results may have under-or-over compensated for the impact, if any, of certain market factors, including, but not limited to, lack of liquidity. Simulated trading programs in general are designed with the benefit of hindsight, and are based on historical information. No representation is being made that any account will or is likely to achieve profit or losses similar to those shown.
Testimonials appearing on this website may not be representative of other clients or customers and is not a guarantee of future performance or success.
As a provider of technical analysis tools and strategies, we do not have access to the personal trading accounts or brokerage statements of our customers. As a result, we have no reason to believe our customers perform better or worse than traders as a whole based on any content, tool, or platform feature we provide.
Charts used on this site are by TradingView in which the majority of our technical indicators are built on. TradingView® is a registered trademark of TradingView, Inc. www.TradingView.com TradingView® has no affiliation with the owner, developer, or provider of the Services described herein.
Market data is provided by CBOE, CME Group, BarChart, Massive, CoinAPI. Select U.S. equities data is provided through Massive. CBOE BZX real-time U.S. equities data is licensed from CBOE and provided through BarChart. Real-time futures data is licensed from CME Group and provided through BarChart. Select cryptocurrency data, including major coins, is provided through CoinAPI. All data is provided “as is” and should be verified independently for trading purposes.
This does not represent our full Disclaimer. Please read our full disclaimer.
© 2026 LuxAlgo Global, LLC.

