NostalgiaForInfinityV3 Strategy Analysis
Table of Contents
- Strategy Overview
- Basic Configuration Parameters
- Technical Indicator System
- Buy Signal Logic
- Sell Signal Logic
- Custom Sell Mechanism
- Risk Management System
- Multi-Timeframe Analysis
- Parameter Optimization Space
- Strategy Pros and Limitations
- Live Deployment Recommendations
1. Strategy Overview
1.1 Strategy Background
NostalgiaForInfinityV3 is an advanced cryptocurrency trading strategy designed by developer iterativ for the Freqtrade quantitative trading framework. The strategy inherits the core philosophy of the "NostalgiaForInfinity" series, seeking high-probability trading opportunities in the cryptocurrency market through multi-dimensional technical indicator fusion and multi-layer condition filtering.
1.2 Core Design Philosophy
The strategy's design centers on the core philosophy of "combining trend-following with counter-trend trading." Against the backdrop of a primary upward trend, the strategy seeks short-term price pullback entry opportunities, confirmed through Bollinger Band lower band breaks, RSI oversold areas, moving average support, and other multi-signal confirmations. The exit logic focuses more on profit protection and risk control, using tiered profit-taking mechanisms and dynamic trailing stoploss to lock in gains.
1.3 Strategy Positioning
This is a medium-frequency trend-following strategy suitable for relatively stable market environments. The strategy recommends using 5 minutes as the primary timeframe with 1 hour for trend confirmation. Recommended configuration: 4-6 concurrent trades, stablecoin trading pairs (USDT, BUSD, etc.), avoiding BTC or ETH as quote currencies.
1.4 Author Recommendations
The strategy author explicitly recommends:
- Concurrent trades: 4-6 open trades
- Trading pairs: 20-80 pairs
- Pair type: stablecoin-quoted pairs (USDT, BUSD, etc.)
- Blacklist: exclude leveraged tokens (*BULL, *BEAR, *UP, *DOWN, etc.)
- Timeframe: must use 5-minute charts
- Config: do not override strategy variables in the config file
2. Basic Configuration Parameters
2.1 Minimal ROI
minimal_roi = {
"0": 0.10, # Immediate: 10%
"30": 0.05, # After 30 minutes: 5%
"60": 0.02 # After 60 minutes: 2%
}
This reflects the core philosophy: quick profit-taking over long holding.
2.2 Stoploss Settings
stoploss = -0.99
The strategy uses a near-disabled stoploss (-99%). This is a deliberate design choice — the strategy relies on other risk control mechanisms (trailing stoploss, custom sell logic) rather than hard stoploss. This avoids being stopped out prematurely due to short-term price fluctuations in crypto's high-volatility environment.
2.3 Timeframe Configuration
timeframe = '5m'
inf_1h = '1h'
2.4 Trailing Stoploss Configuration
trailing_stop = True
trailing_only_offset_is_reached = True
trailing_stop_positive = 0.05
trailing_stop_positive_offset = 0.15
Trailing stoploss activates only when profit reaches 15%, with a 5% trailing distance.
2.5 Sell Signal Configuration
use_sell_signal = True
sell_profit_only = True
sell_profit_offset = 0.001
ignore_roi_if_buy_signal = True
2.6 Startup Candle Count
startup_candle_count: int = 400
The strategy requires at least 400 candles of historical data.
3. Technical Indicator System
3.1 Primary Timeframe Indicators (5-Minute)
Bollinger Bands:
- BB40 (40-period, 2x std dev): for Condition 3
- BB20 (20-period, 2x std dev): standard config, used in multiple conditions
Moving Averages:
- EMA: 12, 26, 50, 100, 200
- SMA: 5, 200
Alligator Indicator:
- Lips: 5-period SMA, 3-period smooth
- Teeth: 8-period SMA, 5-period smooth
- Jaw: 13-period SMA, 8-period smooth
Oscillators:
- RSI (14-period): overbought/oversold
- MFI (14-period): money flow
3.2 Auxiliary Timeframe Indicators (1-Hour)
- EMA: 15, 50, 100, 200
- SMA: 50, 200
- RSI and Bollinger Bands
3.3 Safe Dips Indicator
safe_dips = (
((open - close) / close < 0.03) &
((open.rolling(2).max() - close) / close < 0.12) &
((open.rolling(12).max() - close) / close < 0.30) &
((open.rolling(144).max() - close) / close < 0.40)
)
This ensures no extreme crash has occurred before buying.
4. Buy Signal Logic
10 independent buy conditions, each with independent enable/disable.
4.1 Condition 1: Trend Pullback Buy
- 1-hour EMA50 > EMA200
- SMA200 rising
- safe_dips satisfied
- Volume < 2x average
- 36-candle low gain > 2.9%
- 1h RSI: 45.25-85.06
- RSI < 36.64
- MFI < 45.25
4.2 Condition 2: Bollinger Lower Band Buy
- Price < SMA5
- Price > EMA200 and 1h EMA200
- EMA50 > EMA100
- safe_dips satisfied
- Volume < 2.96x average
- Price deviation from EMA200 < 0.6%
- 1h RSI: 63.91-89.94
- 5min RSI < 1h RSI - 38.69
- MFI < 53.89
- Close < Bollinger lower band
4.3 Condition 3: BB40 Break
- Price > 1h EMA200 × 98.8%
- EMA100 > EMA200
- 1h EMA50 > EMA100 > EMA200
- safe_pump_36 satisfied
- BB width > close × 5.7%
- Close change > close × 2.3%
- Lower shadow < BB width × 41.8%
- Close < prior candle lower band
4.4 Condition 4: MA Pullback Buy
- EMA50 > EMA100 (perfect MA alignment)
- 1h EMA15 > EMA50 > EMA100 > EMA200
- safe_dips satisfied
- Price < EMA50
- Price < BB lower band × 0.98
- Volume < average × 24
4.5 Condition 5: EMA Death Cross Rebound
- 1h EMA50 > EMA100
- safe_dips satisfied
- Volume < average × 4.12
- EMA26 > EMA12 (death cross state)
- Death cross magnitude > open × 1.9%
- Close < Bollinger lower band
4.6 Condition 6: Trend Pullback BB Buy
- 1h SMA200 rising
- safe_dips satisfied
- Volume < average × 1.48
- EMA26 > EMA12
- Close < Bollinger lower band
4.7 Condition 7: RSI Oversold Buy
- Price > 1h EMA200
- 1h EMA50 > EMA100
- 1h SMA200 rising
- safe_dips satisfied
- Volume < average × 7.04
- RSI < 41.09
4.8 Condition 8: Alligator Buy
- Price > 1h EMA200
- 1h EMA50 > EMA100
- 1h SMA200 rising
- Alligator lips > teeth > jaw (perfect uptrend)
- All three lines trending upward
- Close > lips
- RSI < 46
4.9 Condition 9: EMA Pullback Buy
- Price > EMA200 and 1h EMA200
- 1h EMA50 > EMA100
- safe_dips satisfied
- Volume < average × 17
- Close < EMA50
- Close < BB lower band × 0.98
4.10 Condition 10: Extreme Oversold Buy
- 1h SMA200 rising
- safe_dips satisfied
- Volume < average × 9.6
- Close < EMA50
- Close < BB lower band × 0.994
- 1h RSI < 30.2
5. Sell Signal Logic
8 independent sell conditions.
5.1 Sell Condition 1: BB Upper Band Consecutive Break
- RSI > 79.5
- Close > BB upper band for 6 consecutive candles
5.2 Sell Condition 2: BB Upper Band Short Break
- RSI > 81
- Close > BB upper band for 3 consecutive candles
5.3 Sell Condition 3: RSI Overbought
- RSI > 82
5.4 Sell Condition 4: Dual-Timeframe RSI Overbought
- RSI > 73.4
- 1h RSI > 79.6
5.5 Sell Condition 5: Below-EMA Rebound Sell
- Close < EMA200
- Distance from EMA200 < 2.4%
- RSI > 1h RSI + 4.38
5.6 Sell Condition 6: Below-EMA Extreme RSI
- Close < EMA200
- Close > EMA50
- RSI > 87.7
5.7 Sell Condition 7: 1h RSI High + EMA Death Cross
- 1h RSI > 81.7
- EMA12 crosses below EMA26
5.8 Sell Condition 8: 1h BB Upper Band Break
- Close > 1h BB upper band × 1.1
6. Custom Sell Mechanism
6.1 Tiered Profit-Taking
profit > 25% and RSI < 51.87 → sell
profit > 5% and RSI < 43.37 → sell
profit > 1% and RSI < 38.65 → sell
6.2 Trend Reversal Profit-Taking
profit > 2% and close < EMA200 → sell
profit > 2.5% and SMA200 falling → sell
6.3 Trailing Retracement Profit-Taking
profit 16.6%-38% and max_profit - profit > 15.4% → sell
profit 3.5%-10% and max_profit - profit > 4.5% → sell
7. Risk Management System
7.1 Multi-Layer Protection
- Pre-entry protection: safe_dips and safe_pump avoid extreme market conditions
- In-position protection: trailing stoploss and ROI mechanisms control drawdowns
- Exit protection: custom sell function's tiered profit-taking at different profit levels
7.2 Trailing Stoploss
- Activates at 15% profit
- 5% trailing distance
- Allows profitable positions ample room to run
7.3 ROI Settings
Encourages quick profit-taking while the ignore_roi_if_buy_signal mechanism allows holding when trend continues.
8. Multi-Timeframe Analysis
8.1 Dual-Timeframe Design
5-minute for trade execution decisions, 1-hour for trend confirmation. This keeps trading frequency while filtering noise.
8.2 Data Fusion
The merge_informative_pair function with ffill=True maps 1-hour indicators onto 5-minute data, enabling multi-timeframe analysis.
9. Parameter Optimization Space
All major parameters are optimizable via DecimalParameter and IntParameter:
Buy Parameters: dip thresholds, pump thresholds, RSI/MFI thresholds, BB offsets, volume multiples Sell Parameters: RSI thresholds, profit levels, trailing parameters
10. Strategy Pros and Limitations
Pros
- 10 buy conditions covering multiple market patterns
- Multi-timeframe coordination
- Flexible risk management (trailing stoploss, tiered take-profit, trend reversal exits)
- Highly customizable (each condition independently toggleable)
- Adapted for crypto markets (5m timeframe, Bollinger Bands for volatility)
Limitations
- Near-disabled hard stoploss: extreme moves can cause significant losses
- High complexity: 10 buy + 8 sell conditions, hundreds of lines of custom logic
- Trend-dependent: all buys require upward trend; poor performance in ranging/bear markets
- Parameter overfitting risk: many parameters = easy to overfit historical data
- Fixed timeframe: only 5m + 1h, cannot adapt to other cycles
11. Live Deployment Recommendations
Configuration Checklist
- Use 5-minute + 1-hour timeframes
- Stablecoin pairs (USDT, BUSD)
- 4-6 concurrent trades
- Exclude all leveraged tokens
- Enable sell signals, disable sell_profit_only initially
Recommended Workflow
- Backtest with 6+ months of data (bull, bear, and ranging markets)
- Paper trade for at least 1 month
- Start with small capital (10-20% of planned allocation)
- Gradually increase allocation as strategy proves itself
- Review monthly, re-optimize quarterly
Key Risk Warnings
- Never go all-in immediately
- Set account-level maximum drawdown limits
- Monitor in real-time initially
- Add exchange-side stoploss as backup
This document provides an in-depth technical analysis of NostalgiaForInfinityV3. For the plain-English explanation, please refer to the Strategy Explained version.