Skip to main content

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 TypeFunctionPlain English
EWO high thresholdConfirms trend is up"The trend is real, not a fake breakout"
EWO low thresholdConfirms oversold"Dropped this much, should bounce"
RSI filterDon'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:

  1. 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)

  1. Clear Logic: EMA offset + EWO protection, easy to understand, no fancy tricks
  2. Dual Mode: Trend pullback + bottom fishing, handles both market phases
  3. Trailing Stop: Profit protection is solid, won't let "ducks that landed in hand fly away"
  4. Optimizable Parameters: 7 adjustable parameters, suitable for different pairs

⚠️ Cons (The Bad Stuff)

  1. Ranging Markets Kill: EMA offset strategies hate sideways, get slapped back and forth
  2. Long-Only: Can't profit in falling markets
  3. HyperOpt-Tuned Parameters: Might be overfitting historical data, may not work in live trading
  4. 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 EnvironmentRecommended ActionReason
📈 Clear UptrendUse boldlyPullback buy + trailing take profit work perfectly together
🔄 Ranging/SidewaysDon't useEMA will repeatedly false breakout, stops will eat you alive
📉 DowntrendDefinitely don't useLong-only means just giving money away
⚡ High VolatilityUse cautiouslyRaise 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

  1. Backtest First: Don't trust default parameters, tune for your pairs
  2. Watch the Trend: Confirm trending market before using, rest in ranging markets
  3. Set Stop Loss: 10% fixed stop might not be enough, adjust based on your pairs
  4. 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 TypePerformance RatingPlain 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 ItemRecommended ValueCommentary
Timeframe5mDefault is this, don't change
Informative Timeframe1hAuxiliary trend view
Trading Pairs1-10Too 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 PairsMinimum MemoryRecommended MemoryExperience
1-10 pairs2GB4GBSmooth
10-50 pairs4GB8GBAcceptable
50+ pairs8GB16GBMight 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:

  1. Backtest and optimize parameters
  2. Test on a different time period (out-of-sample test)
  3. Run paper trading for 1-2 weeks
  4. Small capital live trading
  5. 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:

  1. Two populate_indicators functions?

    "Sorry, there are two populate_indicators function definitions in the code... traces of copy-paste 😂"

  2. 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."

  3. 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:

  1. Check if price dropped 2.7% below EMA(16)
  2. Check if EWO > 5.67 (trend up) or < -19.9 (oversold)
  3. Check if RSI < 59 (not overbought)
  4. 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! 🙏