Bollinger/Keltner squeezelong
Backtest Results @ GLD • Daily

This strategy buys whenever Bollinger Bands is squeezed into Kelther Channel. This normally indicates that the market is going sideways. This strategy then sells whenever price goes below the Bollinger Bands middle line. The idea is to buy during the obviously sideways market, hoping for it to burst.

Equity Curve

Backtest covers 20.7 years of GLD • Daily (SPDR Gold Trust) data, from November 18, 2004 to July 11, 2025.

Equity curve is the strategy's performance over time. You should compare it to the asset's Buy & Hold performance. In general, you want the blue area to be well above the gray area.

Drawdown is how much losses (realized or unrealized) the strategy has had if compared to the highest equity peak. Compare this to the asset's drawdown to see whether your strategy does a decent job of isolating you from downside volatility. In general, the red area must be well within the gray area.

Equity Curve
Strategy
Asset
Strategy Drawdown
Asset Drawdown

So, we have backtested Bollinger/Keltner squeeze on 20.7 years of GLD • Daily candles. This backtest resulted in 59 positions, with the average win rate of 39% and reward-risk ratio of 1.95. If you assume that 1.95 reward-to-risk ratio holds, you need a minimum win rate of 33.9 to be profitable. So you're looking good so far. However, 59 positions is a small sample size, so take the results with a huge grain of salt. The key metrics are as follows:

  1. Total Return: Total Return: 13.20% vs 595.10% for the asset
  2. Max Drawdown: Max Drawdown: -21.10% vs -45.30% for the asset
  3. Exposure: Exposure: 16.80% time in the market
  4. Win Rate: Win Rate: 39.0%, vs 33.9% minimum
  5. Reward/Risk Ratio: Reward/Risk Ratio: 1.95

With that exposure in mind, you can tell that for 17% time-in-market, you get 2.22% of the asset upside potential, and 46.58% of the asset downside potential.

Bollinger/Keltner squeeze: enter a position when

All of the following: # Whiskey
  D Chart(close) (2 candles ago) < D Bollinger Bands ® (20, 2, 2, 0, close), Up (2 candles ago)
  D Chart(close) (1 candles ago) > D Bollinger Bands ® (20, 2, 2, 0, close), Up (1 candles ago)
  D Bollinger Bands ® (20, 2, 2, 0, close), Up (1 candles ago) < D Keltner Channel (20, SMA, 10, 2, 0, close), Up (1 candles ago)
  D BB (20, 2, 2, 0, close) (1 candles ago) > D Keltner (20, SMA, 10, 2, 0, close) (1 candles ago)

Bollinger/Keltner squeeze: exit a position when

Any of the following: # Papa
  D Chart(close) < D Bollinger Bands ® (20, 2, 2, 0, close), Middle

Bollinger/Keltner squeeze @ GLD • Daily (13.2%) backtest results explained by Mike, Sarah

Mike

Author

Yo fam, let me break down this squeeze play for you! 🚀💎

Looking at this Bollinger/Keltner strategy on GLD, it's giving some interesting vibes. The win rate is sitting at 39% which might sound low, but check this out - when we win, we're banking 3.61% compared to -1.85% on losses. That's nearly a 2:1 reward-to-risk ratio! Plus, we're actually running 5% above the minimum required win rate, which is pretty sweet for margin of safety. 🎯

The downside is we're only getting like half a trade per month, so this is definitely not a day trading strategy. And that 21.1% max drawdown is kinda rough ngl. The market exposure is super low at 16.8%, which means we're mostly sitting on the sidelines watching the market do its thing. 💤

Here's the real talk though - while we're making some gains (13.2% total), we're getting absolutely smoked by buy & hold (595.1%). But maybe that's not the whole story since we're taking way less risk by being in the market only 16.8% of the time. Could be good for someone who wants to trade gold with lower risk exposure, but probably not for us Wendy's warriors looking for those juicy tendies! 🍗

Not financial advice tho, just a dude behind the Wendy's counter dreaming big! 🚀

Sarah

Author

Madre de dios, this strategy is absolute garbage! Let me tell you why, mi amigo.

First of all, 13.2% total return over 20.7 years? That's pathetic! The buy & hold strategy made 595.1% - you're literally throwing money away here. Even putting your money under the mattress would have been better considering inflation. And look at that market exposure - only 16.8%! You're sitting out of the market most of the time, missing all the good moves.

The win rate is another disaster - 39% winners? Are you trying to lose money on purpose? Yes, yes, I see the Risk/Reward ratio is 1.95, which technically makes it matematically viable with that win rate. But why would anyone want to sit through 9 consecutive losses (your max losing streak) for such mediocre returns? That's masochistic!

The most embarassing part is the performance metrics. Negative Sharpe ratio (-0.58), negative Sortino ratio (-0.43), and a pathetic 0.15 Beta. This means you're not only underperforming, you're doing it with significant risk! The 21.1% max drawdown is just the cherry on top of this disaster sundae.

Mi consejo? Throw this strategy in the basura where it belongs. You're better off buying and holding or finding a completely different approach. This one is dead on arrival.

Tabular metrics of Bollinger/Keltner squeeze backtested on GLD • Daily

Total Trades59Net Profit13.2%Buy & Hold Profit595.1%
Win Rate39%Reward/Risk Ratio1.95Max Drawdown-21.1%
Asset Max Drawdown-45.3%Exposure16.8%Avg Candles in Position13.8
Sharpe Ratio-0.58Sortino Ratio-0.43Realized Volatility5.09%
Max Winning Streak3Avg Winning Streak1.6Max Losing Streak9
Avg Losing Streak2.6Avg Trades per Month0.5Avg Trades per Day0.0
Return Std Dev3.7Loss Std Dev1.3Win Std Dev3.8
Expectancy0.1Beta0.15

All backtests for Bollinger/Keltner squeeze

backtestexposurepeformance vs assetdrawdown vs assetwin%reward/risk
BTCUSD • 1 Minute
13%(0.2%/9.8%) 0.02x(-0.4%/-1.6%) 0.25x491.2
EURUSD • 1 Minute
17%(-0.1%/-0.9%) 0.11x(-0.5%/-1.2%) 0.42x282.4
GLD • 1 Minute
18%(3.6%/0.0%) Infinityx(-1.0%/-5.5%) 0.18x354.0
NVDA • 1 Minute
24%(8.1%/16.7%) 0.49x(-1.8%/-4.4%) 0.41x432.4
SPY • 1 Minute
23%(1.0%/4.6%) 0.22x(-1.6%/-2.1%) 0.76x332.4
TSLA • 1 Minute
23%(-14.5%/-10.3%) 1.41x(-15.5%/-21.4%) 0.72x281.3
WMT • 1 Minute
18%(-3.8%/-5.4%) 0.70x(-3.9%/-6.4%) 0.61x311.4
BTCUSD • 10 Minutes
19%(1.0%/27.2%) 0.04x(-6.3%/-12.1%) 0.52x351.9
EURUSD • 10 Minutes
24%(-0.3%/6.5%) -0.05x(-4.3%/-4.3%) 1.00x302.3
GLD • 10 Minutes
19%(-4.0%/43.7%) -0.09x(-8.0%/-8.3%) 0.96x371.4
NVDA • 10 Minutes
25%(-12.1%/32.9%) -0.37x(-24.9%/-42.8%) 0.58x361.6
SPY • 10 Minutes
26%(-0.3%/14.3%) -0.02x(-5.6%/-20.7%) 0.27x381.6
TSLA • 10 Minutes
24%(4.7%/59.0%) 0.08x(-32.8%/-55.3%) 0.59x401.6
WMT • 10 Minutes
27%(17.3%/40.1%) 0.43x(-6.2%/-23.8%) 0.26x441.9
BTCUSD • 1 Hour
25%(19.1%/71.4%) 0.27x(-21.5%/-31.0%) 0.69x421.7
EURUSD • 1 Hour
26%(4.9%/8.2%) 0.60x(-2.8%/-9.0%) 0.31x411.9
GLD • 1 Hour
16%(6.2%/117.6%) 0.05x(-18.6%/-22.2%) 0.84x421.6
NVDA • 1 Hour
26%(364.4%/3126.3%) 0.12x(-34.2%/-68.0%) 0.50x492.5
SPY • 1 Hour
22%(8.9%/106.7%) 0.08x(-12.4%/-35.1%) 0.35x411.7
TSLA • 1 Hour
21%(505.6%/1395.5%) 0.36x(-34.5%/-75.1%) 0.46x433.1
WMT • 1 Hour
25%(25.8%/138.2%) 0.19x(-9.3%/-26.9%) 0.35x461.6
BTCUSD • Daily
28%(2515.4%/67440.2%) 0.04x(-51.5%/-83.8%) 0.61x454.2
EURUSD • Daily
25%(5.2%/10.8%) 0.48x(-9.1%/-23.3%) 0.39x391.9
GLD • Daily
17%(13.2%/595.1%) 0.02x(-21.1%/-45.3%) 0.47x391.9
NVDA • Daily
26%(577.6%/373678.5%) 0.00x(-51.4%/-90.0%) 0.57x432.5
SPY • Daily
22%(14.1%/1316.3%) 0.01x(-39.4%/-56.7%) 0.69x391.9
TSLA • Daily
24%(1451.6%/24185.2%) 0.06x(-38.8%/-75.0%) 0.52x473.9
WMT • Daily
26%(-44.0%/9978.0%) -0.00x(-74.7%/-50.6%) 1.48x361.6