SMAOffsetProtectOptV1Mod Strategy: The "Face-Reading" Bottom Sniping Expert
Nickname: EMA Offset Wizard
Profession: Trend Pullback Sniper
Timeframe: 5 minutes
I. What is This Strategy?
Simply put, SMAOffsetProtectOptV1Mod is:
- Wait for price to drop below the moving average before buying
- Use EWO indicator to confirm the trend is still intact
- Use RSI to ensure you're not buying at the top
- Trail your take-profit as price rises
Like "buying discounted goods, but making sure they're brand name" 🛒
II. Core Configuration: "Take Profits and Run, Don't Be Greedy"
Take Profit Rules (ROI Table)
Profit 2.8% immediately → Run!
After 12 candles (1 hour), only 1.6% profit → Still run!
After 37 candles (3 hours), only 0.5% profit → Still run!
Translation: "Small wins add up." Take what you can get, don't chase big moves. Suitable for 5-minute short-term trading.
Stop Loss Rules
Fixed stop loss: -10% (accept a 10% loss)
Trailing stop: Start trailing after 1% profit, maintain 0.1% distance
Translation: Cut losses at 10%, protect profits after winning. Like "10% is my floor, the ceiling depends on the market."
III. 2 Buy Conditions: I've Categorized Them for You
This strategy's buy conditions are simple, just 2, and I've sorted them into 2 categories:
🎯 Category 1: Trend Pullback Buy (1 condition)
Core Logic: Pullbacks in an uptrend are buying opportunities
Plain English:
"The big direction is right, small pullbacks are actually chances to hop on. But RSI shouldn't be too high, meaning not overheated yet."
Representative Condition: Condition #1
Classic Lines:
- Condition #1:
Price < EMA * 0.973 AND EWO > 5.672 AND RSI < 59"Wait for price to drop 2.7% below EMA, trend is still up (high EWO), and not overbought (low RSI). Let's go!"
📉 Category 2: Bottom Fishing Buy (1 condition)
Core Logic: Dropped too much, should bounce back right?
Plain English:
"Dropped to grandma's house, EWO is ridiculously negative, a bounce should be coming right?"
Representative Condition: Condition #2
Classic Lines:
- Condition #2:
Price < EMA * 0.973 AND EWO < -19.931"Low price + ridiculously negative EWO = oversold. Let's catch the bounce! No RSI filter this time, oversold bounces don't care about overbought levels."
IV. Protection Mechanism: EWO the "Trend Bodyguard"
Each buy condition comes with EWO protection, like hiring a bodyguard:
| Protection Type | Function | Plain English |
|---|---|---|
| EWO high threshold | Confirms trend is up | "The trend is real, not a fake breakout" |
| EWO low threshold | Confirms oversold | "Dropped this much, should bounce" |
| RSI filter | Don't buy overbought | "Don't chase high, wait for pullback" |
This design is clever: buy on "confirmed trend pullbacks" or "extreme oversold bounces," not in "unclear ranging zones."
V. Sell Logic: Even Simpler Than Buying
5.1 Tiered Take Profit: How Much to Run With
Holding Time Profit Target
────────────────────
Immediate 2.8%
After 1 hour 1.6%
After 3 hours 0.5%
Plain English:
- Just bought and it's up: wait for 2.8% before selling
- Held for 1 hour: 1.6% is fine too
- Held for 3 hours: 0.5% is still acceptable
Basically: "The longer you hold, the lower your standards become" 😅
5.2 Trailing Stop: Protect What You've Earned
Profit hits 1% → Activate trailing stop
Stop line follows price, keeping 0.1% distance
Price retraces → Stop triggers, locking in profit
Plain English: Like walking a dog on a leash. The dog (price) runs forward, you follow. The dog turns back, the leash pulls you.
5.3 Base Sell Signal (1)
Classic Line:
- Signal #1:
Price > EMA * 1.01"Price rose 1% above EMA. Might be overheated short-term. Sell and take profit."
VI. This Strategy's "Personality"
✅ Pros (The Good Stuff)
- Clear Logic: EMA offset + EWO protection, easy to understand, no fancy tricks
- Dual Mode: Trend pullback + bottom fishing, handles both market phases
- Trailing Stop: Profit protection is solid, won't let "ducks that landed in hand fly away"
- Optimizable Parameters: 7 adjustable parameters, suitable for different pairs
⚠️ Cons (The Bad Stuff)
- Ranging Markets Kill: EMA offset strategies hate sideways, get slapped back and forth
- Long-Only: Can't profit in falling markets
- HyperOpt-Tuned Parameters: Might be overfitting historical data, may not work in live trading
- Fixed 10% Stop Loss: For some volatile pairs, 10% is nothing; for stable pairs, 10% is too loose
VII. When to Use This Strategy?
| Market Environment | Recommended Action | Reason |
|---|---|---|
| 📈 Clear Uptrend | Use boldly | Pullback buy + trailing take profit work perfectly together |
| 🔄 Ranging/Sideways | Don't use | EMA will repeatedly false breakout, stops will eat you alive |
| 📉 Downtrend | Definitely don't use | Long-only means just giving money away |
| ⚡ High Volatility | Use cautiously | Raise low_offset, don't get washed out |
VIII. Summary: How's This Strategy Really?
One-Line Review
"A star in trending markets, a韭菜 harvester in ranging markets."
Who Should Use It?
- ✅ Traders who can read trends
- ✅ People who accept small losses and build wins over time
- ✅ Willing to spend time tuning parameters
- ✅ Running short timeframes like 5 minutes
Who Shouldn't Use It?
- ❌ People wanting overnight riches
- ❌ Stubborn folks who force trades in ranging markets
- ❌ Those unwilling to backtest and optimize
- ❌ People running larger timeframes
My Advice
- Backtest First: Don't trust default parameters, tune for your pairs
- Watch the Trend: Confirm trending market before using, rest in ranging markets
- Set Stop Loss: 10% fixed stop might not be enough, adjust based on your pairs
- Don't All-In: This strategy builds small wins into big wins, not a money-printing machine
IX. What Markets Can This Strategy Profit In?
9.1 Core Logic: "Reading Faces" with EWO
SMAOffsetProtectOptV1Mod is a medium-complexity strategy. About 170 lines of code - that's like a long article 📚
Its Profit Philosophy: Buy on trend pullbacks, fish for extreme oversold bounces.
- EMA Offset: Wait for price to drop below EMA before buying, don't chase
- EWO Protection: Confirm trend is still there (high EWO) or dropped too much (low EWO)
- Trailing Stop: Protect profits once made, don't let them slip away
9.2 Performance in Different Markets (Plain English)
| Market Type | Performance Rating | Plain English Explanation |
|---|---|---|
| 📈 Clear Uptrend | ⭐⭐⭐⭐⭐ | Pullback buy + trailing take profit = smooth sailing |
| 🔄 Ranging/Sideways | ⭐⭐☆☆☆ | EMA goes up and down, stops eat you up |
| 📉 Downtrend | ⭐☆☆☆☆ | Long-only = giving money away |
| ⚡ High Volatility | ⭐⭐⭐☆☆ | Might get washed out, but trailing stop has protection |
One-Line Summary: A god in trending markets, a ghost in ranging markets.
X. Want to Run This Strategy? Check These Settings First
10.1 Trading Pair Configuration
| Configuration Item | Recommended Value | Commentary |
|---|---|---|
| Timeframe | 5m | Default is this, don't change |
| Informative Timeframe | 1h | Auxiliary trend view |
| Trading Pairs | 1-10 | Too many makes parameter tuning hard |
10.2 Parameter Tuning Recommendations
# If your pair has high volatility
low_offset: Adjust to around 0.95
trailing_stop_positive_offset: Adjust to 0.015
# If your pair has low volatility
low_offset: Keep at 0.973
stoploss: Can adjust to -0.05
10.3 Hardware Requirements (Important!)
| Number of Trading Pairs | Minimum Memory | Recommended Memory | Experience |
|---|---|---|---|
| 1-10 pairs | 2GB | 4GB | Smooth |
| 10-50 pairs | 4GB | 8GB | Acceptable |
| 50+ pairs | 8GB | 16GB | Might lag |
Warning: This strategy calculates EMA (5-80 periods), EWO (50+200), RSI (14). Significant computation. Old machines beware!
10.4 Backtesting vs Live Trading
Backtesting looks great? Don't celebrate too early:
- HyperOpt parameters were "memorizing answers"
- Live trading slippage and fees will eat profits
- Past performance doesn't guarantee future results
Recommended Process:
- Backtest and optimize parameters
- Test on a different time period (out-of-sample test)
- Run paper trading for 1-2 weeks
- Small capital live trading
- Confirm stability before scaling up
Don't all-in from the start. Even the best strategy needs breaking in!
XI. Bonus: The Author's "Little Secrets"
Looking carefully at the code, you'll find some interesting things:
-
Two populate_indicators functions?
"Sorry, there are two populate_indicators function definitions in the code... traces of copy-paste 😂"
-
EWO parameters are 50 and 200, but function defaults are 5 and 35
"The author defined their own EWO function, but uses 50 and 200 from the class. This is smoother than the default 5/35, suitable for 5-minute timeframes."
-
startup_candle_count only set to 30
"But EWO uses 200 periods... should be 200+. Minor flaw, doesn't affect running but might affect accuracy of the first few candles."
XII. Final Words
One-Line Review
"Simple and effective trend pullback strategy, clean code, clear logic, suitable for beginners."
Who Should Use It?
- ✅ Freqtrade beginners
- ✅ People wanting to understand EMA offset strategies
- ✅ Willing to spend time tuning parameters
- ✅ Running in trending markets
Who Shouldn't Use It?
- ❌ Wanting to make money lying down
- ❌ Forcing trades in ranging markets
- ❌ Going live without backtesting
- ❌ Seeking high complexity
Manual Trader Recommendations
Manual trading version of this strategy:
- Check if price dropped 2.7% below EMA(16)
- Check if EWO > 5.67 (trend up) or < -19.9 (oversold)
- Check if RSI < 59 (not overbought)
- After buying, set trailing stop, start protecting after 1% profit
XIII. ⚠️ Risk Warning Again (This Part is Important!)
Backtesting is Beautiful, Live Trading Needs Caution
SMAOffsetProtectOptV1Mod's historical backtest performance might be very good - but there's a trap:
Because parameters were optimized through HyperOpt, the strategy easily "memorizes answers" - that is, overfitting historical data, which doesn't guarantee future profits.
Simply put: Memorized past exam questions before the test, then found the questions changed on exam day.
Hidden Risks of Complex Strategies
In live trading, pay attention to:
- Slippage Risk: 5-minute level trading, slippage can eat significant profits
- Fees: High-frequency trading fees accumulate, may offset small profits
- Parameter Validity: Parameters tuned today might not work next month
My Advice (Honest Words)
1. Backtest at least 3 different time periods, see if performance is stable
2. Paper trade for at least 2 weeks, confirm parameters still work
3. Start live trading with small capital, confirm strategy actually makes money
4. Review regularly, retune when parameters become ineffective
Remember: No matter how good the strategy, the market will humble you without warning. Test with small positions, staying alive is most important! 🙏