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.
Backtest covers 9.6 years of EURUSD • Daily (Euro vs USD spot (Interactive Brokers)) data, from December 2, 2015 to July 10, 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.
So, we have backtested Bollinger/Keltner squeeze on 9.6 years of EURUSD • Daily candles. This backtest resulted in 38 positions, with the average win rate of 39% and reward-risk ratio of 1.93. If you assume that 1.93 reward-to-risk ratio holds, you need a minimum win rate of 34.1 to be profitable. So you're looking good so far. However, 38 positions is a small sample size, so take the results with a huge grain of salt. The key metrics are as follows:
With that exposure in mind, you can tell that for 25% time-in-market, you get 48.15% of the asset upside potential, and 39.06% of the asset downside potential.
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)
Any of the following: # Papa D Chart(close) < D Bollinger Bands ® (20, 2, 2, 0, close), Middle
Yo fam, let me break down this Bollinger/Keltner squeeze strategy for you! 🚀
The strategy is giving some interesting vibes with that 39% win rate and a solid 1.93 risk/reward ratio. What's really catching my eye is that win rate leeway - we're crushing the minimal required win rate by like 3800%! That's some serious breathing room right there 💪 The average winner is pulling in 1.92% while average losses are contained at -0.99%, which isn't too shabby for forex.
However, keeping it real, that 25% market exposure and only 38 trades over 9.6 years is pretty low-key - we're talking less than one trade per month 😴 The max drawdown of -9.1% isn't terrible for forex, but that -1.27 Sharpe ratio is giving me some pause. Also worth noting that buy & hold actually outperformed this strategy (10.8% vs 5.2%).
Listen up though - this could be a decent base to build on! The risk management looks solid, and those winning trades are nearly double the size of losing ones. Maybe we could juice it up by finding more trade opportunities or combining it with other indicators? Just remember, this is Wendy's money we're playing with, so always gotta keep that risk in check! 🍔💎🙌
This strategy is absolute garbage and anyone suggesting to trade it should be ashamed. Let me tell you why.
First, 38 trades in 9.6 years? That's not even 4 trades per year! You're basically sitting on your hands doing nothing most of the time. And when you finally do trade, you lose 61% of the time. Brilliant plan to lose money slowly!
The strategy underperforms buy & hold by more than 50% (5.2% vs 10.8%). Why would anyone waste their time with this? And look at those pathetic ratios - Sharpe at -1.27 and Sortino at -1.12. These are not just bad, they're embarrassingly bad.
The only remotely positive thing is the Risk/Reward ratio of 1.93, but what good is that when you're losing most trades and barely trading at all? The 8-trade losing streak is particularly concerning - imagine explaining that to your boss or clients.
My honest advice? Delete this strategy and start over. This is not even worth trying to fix. It's like trying to save the Titanic with a bucket - pointless and waste of time.
Total Trades | 38 | Net Profit | 5.2% | Buy & Hold Profit | 10.8% |
Win Rate | 39% | Reward/Risk Ratio | 1.93 | Max Drawdown | -9.1% |
Asset Max Drawdown | -23.3% | Exposure | 25.1% | Avg Candles in Position | 14.5 |
Sharpe Ratio | -1.27 | Sortino Ratio | -1.12 | Realized Volatility | 3.09% |
Max Winning Streak | 5 | Avg Winning Streak | 1.9 | Max Losing Streak | 8 |
Avg Losing Streak | 2.9 | Avg Trades per Month | 0.6 | Avg Trades per Day | 0.0 |
Return Std Dev | 2.1 | Loss Std Dev | 0.7 | Win Std Dev | 2.4 |
Expectancy | 0.2 | Beta | 0.24 |
backtest | exposure | peformance vs asset | drawdown vs asset | win% | reward/risk |
---|---|---|---|---|---|
BTCUSD • 1 Minute | 13% | (0.2%/9.8%) 0.02x | (-0.4%/-1.6%) 0.25x | 49 | 1.2 |
EURUSD • 1 Minute | 17% | (-0.1%/-0.9%) 0.11x | (-0.5%/-1.2%) 0.42x | 28 | 2.4 |
GLD • 1 Minute | 18% | (3.6%/0.0%) Infinityx | (-1.0%/-5.5%) 0.18x | 35 | 4.0 |
NVDA • 1 Minute | 24% | (8.1%/16.7%) 0.49x | (-1.8%/-4.4%) 0.41x | 43 | 2.4 |
SPY • 1 Minute | 23% | (1.0%/4.6%) 0.22x | (-1.6%/-2.1%) 0.76x | 33 | 2.4 |
TSLA • 1 Minute | 23% | (-14.5%/-10.3%) 1.41x | (-15.5%/-21.4%) 0.72x | 28 | 1.3 |
WMT • 1 Minute | 18% | (-3.8%/-5.4%) 0.70x | (-3.9%/-6.4%) 0.61x | 31 | 1.4 |
BTCUSD • 10 Minutes | 19% | (1.0%/27.2%) 0.04x | (-6.3%/-12.1%) 0.52x | 35 | 1.9 |
EURUSD • 10 Minutes | 24% | (-0.3%/6.5%) -0.05x | (-4.3%/-4.3%) 1.00x | 30 | 2.3 |
GLD • 10 Minutes | 19% | (-4.0%/43.7%) -0.09x | (-8.0%/-8.3%) 0.96x | 37 | 1.4 |
NVDA • 10 Minutes | 25% | (-12.1%/32.9%) -0.37x | (-24.9%/-42.8%) 0.58x | 36 | 1.6 |
SPY • 10 Minutes | 26% | (-0.3%/14.3%) -0.02x | (-5.6%/-20.7%) 0.27x | 38 | 1.6 |
TSLA • 10 Minutes | 24% | (4.7%/59.0%) 0.08x | (-32.8%/-55.3%) 0.59x | 40 | 1.6 |
WMT • 10 Minutes | 27% | (17.3%/40.1%) 0.43x | (-6.2%/-23.8%) 0.26x | 44 | 1.9 |
BTCUSD • 1 Hour | 25% | (19.1%/71.4%) 0.27x | (-21.5%/-31.0%) 0.69x | 42 | 1.7 |
EURUSD • 1 Hour | 26% | (4.9%/8.2%) 0.60x | (-2.8%/-9.0%) 0.31x | 41 | 1.9 |
GLD • 1 Hour | 16% | (6.2%/117.6%) 0.05x | (-18.6%/-22.2%) 0.84x | 42 | 1.6 |
NVDA • 1 Hour | 26% | (364.4%/3126.3%) 0.12x | (-34.2%/-68.0%) 0.50x | 49 | 2.5 |
SPY • 1 Hour | 22% | (8.9%/106.7%) 0.08x | (-12.4%/-35.1%) 0.35x | 41 | 1.7 |
TSLA • 1 Hour | 21% | (505.6%/1395.5%) 0.36x | (-34.5%/-75.1%) 0.46x | 43 | 3.1 |
WMT • 1 Hour | 25% | (25.8%/138.2%) 0.19x | (-9.3%/-26.9%) 0.35x | 46 | 1.6 |
BTCUSD • Daily | 28% | (2515.4%/67440.2%) 0.04x | (-51.5%/-83.8%) 0.61x | 45 | 4.2 |
EURUSD • Daily | 25% | (5.2%/10.8%) 0.48x | (-9.1%/-23.3%) 0.39x | 39 | 1.9 |
GLD • Daily | 17% | (13.2%/595.1%) 0.02x | (-21.1%/-45.3%) 0.47x | 39 | 1.9 |
NVDA • Daily | 26% | (577.6%/373678.5%) 0.00x | (-51.4%/-90.0%) 0.57x | 43 | 2.5 |
SPY • Daily | 22% | (14.1%/1316.3%) 0.01x | (-39.4%/-56.7%) 0.69x | 39 | 1.9 |
TSLA • Daily | 24% | (1451.6%/24185.2%) 0.06x | (-38.8%/-75.0%) 0.52x | 47 | 3.9 |
WMT • Daily | 26% | (-44.0%/9978.0%) -0.00x | (-74.7%/-50.6%) 1.48x | 36 | 1.6 |