NFI46 Strategy: The "Choice-Paralysis Terminally Ill" of Quantitative Trading
Nickname: Seventeen-Hand Guanyin
Career: Trend Catcher + Risk Control Master
Timeframe: 5 Minutes + 1 Hour Informational Layer
1. What's This Strategy?
In simple terms, NFI46 is:
- A multi-faceted strategy with 17 entry conditions
- A precision-oriented strategy with a 12-level take-profit system
- A conservative strategy with dual protection mechanisms
- A complex beast with code exceeding 800 lines
It's like someone on a blind date who requires "height 175-185, annual salary 500k+, own house and car, parents with stable pension, gentle personality, can cook, loves cats..." — the conditions are so numerous your head spins, but each one has its reasoning.
2. Core Settings: In Plain English — "Find Pullbacks in Trends, Take Profits and Run"
Take-Profit Rules (ROI Table)
10% profit → Run immediately
Still have 5% after 30 minutes → Run
Still have 2% after 60 minutes → Run too
Translation: This strategy isn't greedy — if it makes money, it takes the profit.
Stop-Loss Rules
Hard stop-loss: -10%
Trailing stop: Activates after 2.5% profit, runs on 1% drawdown
Translation: If you're down 10%, forced liquidation. If you're up, it becomes sensitive — any drawdown quickly locks in profits.
3. 17 Entry Conditions: I've Categorized Them for You
This strategy's entry conditions are truly numerous. I've organized them into 5 categories:
🎯 Category 1: Trend Pullback Party (4 conditions)
Core Logic: In an uptrend, wait for price to pull back to the oversold zone before buying.
Plain English:
"The big brother is going up, the little brother is pulling back — this is the time to get on board and follow the big brother higher!"
Representative Conditions: #1, #5, #14, #15
Classic Lines:
- Condition #1:
EMA50 > EMA200 AND RSI < 21.6 AND MFI < 47.4"The 1-hour moving averages have golden crossed, RSI has fallen to the floor, MFI shows no money flowing in — this is a bargain-hunting opportunity!"
📉 Category 2: Bollinger Band Believers (6 conditions)
Core Logic: Price drops below the Bollinger Band lower band, wait for a rebound.
Plain English:
"Price has dropped below the channel's lower boundary — the spring is compressed to the bottom, get ready for a bounce!"
Representative Conditions: #2, #3, #4, #5, #6, #14
Classic Lines:
- Condition #3:
close < BB40 lower band AND bbdelta > close * 5.3%"Bollinger Band opens its mouth, price drops to the chin, volatility is high — this is a rebound signal!"
📈 Category 3: EMA Difference Party (5 conditions)
Core Logic: EMA26 is above EMA12, and the difference is large enough — this indicates strong trend momentum.
Plain English:
"The fast moving average is above the slow one, and the gap is wide — this means the trend is strong. A pullback is an opportunity!"
Representative Conditions: #5, #6, #7, #14, #15
Classic Lines:
- Condition #6:
EMA26 - EMA12 > open * 3.8% AND close < BB lower band * 98.1%"Moving average difference is wide enough, and price has dropped below the Bollinger Band lower band — this is an oversold opportunity within the trend!"
🐊 Category 4: Alligator Hunters (1 condition)
Core Logic: Alligator three-line bullish alignment, all rising.
Plain English:
"The alligator's mouth is open, three lines pointing up — time to eat!"
Representative Condition: #8
Classic Lines:
- Condition #8:
lips > teeth > jaw AND all three lines rising AND RSI < 30.4"The alligator mouth is open, price is bullish, RSI oversold — close your eyes and buy!"
🌊 Category 5: EWO Wave Riders (4 conditions)
Core Logic: Use Elliott Wave Oscillator to identify wave positions.
Plain English:
"The wave indicator says we're at the bottom now — let's bottom-fish!"
Representative Conditions: #12, #13, #16, #17
Classic Lines:
- Condition #12:
EWO > 5.9 AND RSI < 30.2"Positive EWO indicates upward momentum, RSI is oversold — this is the start of a wave!"
- Condition #13:
EWO < -11.0"EWO is deeply negative — severe oversold, a rebound is coming!"
4. Protection Mechanisms: 31 Layers of "Safety Airbags"
Each entry condition is equipped with a protection parameter set, like giving each passenger a parachute:
Dip Protection (Anti-Catching-Falling-Knife)
| Protection Type | Function | Plain English |
|---|---|---|
| Normal | 4-period pullback detection | "Pullback shouldn't be too deep" |
| Strict | Tighter thresholds | "Pullback must be very shallow" |
| Loose | Looser thresholds | "A deeper pullback is acceptable" |
# 4-period pullback detection
1 period: Current candle decline < 3.2%
2 periods: Max decline over 2 candles < 5.3%
12 periods: Short-term max decline < 35.8%
144 periods: Long-term max decline < 24.8%
Plain English:
"If this coin drops too deeply, I'm not buying — who knows how much further it can fall!"
Pump Protection (Anti-Chasing-Highs)
| Time Window | Function | Plain English |
|---|---|---|
| 24h | Detect last 24-hour surge | "Don't chase if it surged too much in one day" |
| 36h | Detect last 36-hour surge | "Don't chase if it surged too much in a day and a half" |
| 48h | Detect last 48-hour surge | "Don't chase if it surged too much in two days" |
# Pump protection logic
Surge < threshold OR pullback deep enough = Safe
Surge > threshold AND no pullback = Dangerous, don't buy
Plain English:
"Coins that surged too much, I won't chase — unless they've pulled back enough, then I'll consider getting on board."
This strategy's protection mechanism is more verbose than an insurance company — but it's precisely this verbosity that has helped it dodge countless cases of chasing highs and getting burned.
5. Exit Logic: More flamboyant than the entries
5.1 Tiered Take-Profit: How Much Profit Triggers an Exit?
Profit > 23.7% AND RSI < 39.31 → Run! (signal_profit_11)
Profit 11%~23% AND RSI < 42.94 → Run! (signal_profit_10)
Profit 8%~11% AND RSI < 54 → Run! (signal_profit_9)
...
Profit 1%~2% AND RSI < 38 → Run! (signal_profit_1)
Profit 0%~1% AND RSI < 32 → Run! (signal_profit_0)
Plain English:
- Making a lot (>23%) → RSI threshold loosens, let it ride longer
- Making a little (<2%) → RSI threshold tightens, take it and run, don't be greedy
5.2 Special Scenario Exits
| Scenario | Trigger Condition | Plain English |
|---|---|---|
| Below EMA200 | close < EMA200 with profit | "It's below the moving average, take the profit if you have one" |
| Post-Pump Exit | 24h/36h/48h surge exceeds threshold | "Surged this much, time to exit" |
| SMA Decline | SMA200 in downtrend | "Big trend is bad, take profits when you can" |
| Trailing Exit | Profit drawdown exceeds threshold | "Profit has been given back, lock it in" |
| Stop-Loss | Post-pump loss + bad trend | "If you're wrong, admit defeat" |
5.3 Basic Sell Signals (8)
Classic Lines:
-
Signal #1:
RSI > 64.9 AND 6 consecutive candles > BB upper band"Six consecutive candles above Bollinger Band, RSI is also overbought — time to exit!"
-
Signal #3:
RSI > 90"RSI is at 90 — isn't this overbought? Run!"
-
Signal #7:
1h RSI > 93.7 AND EMA death cross"1-hour RSI is off the charts, moving averages also death-crossed — double confirmation for selling!"
6. This Strategy's "Personality Traits"
✅ Pros (The Praising Section)
- Rich Conditions: 17 entry conditions — if one doesn't work, another will
- Solid Protection: Dip + Pump dual protection — chasing highs and catching falling knives are nearly impossible
- Refined Take-Profit: 12-level dynamic take-profit, profit management as detailed as peeling an onion
- Customizable: Each condition can be independently switched on or off
⚠️ Cons (The Ranting Section)
- Too Many Conditions: 17 entry conditions — your eyes glaze over, you don't know which to trust
- Parameter Explosion: 150+ parameters — your head hurts when optimizing
- Hard to Understand: Without some technical foundation, you can't figure out what this strategy is doing
- Resource Intensive: Requires loading 400 candles — takes up some memory when running
7. When to Use It: Applicable Scenarios
| Market Environment | Recommended Action | Reason |
|---|---|---|
| Slow Bull | Full power, run freely | Many trend pullback opportunities, strategy matches perfectly |
| Ranging | Only EWO conditions | Wave strategies may be somewhat useful |
| Bear Market | Turn it off, don't use | Trend strategies in bear markets are just giving money away |
| Wild Swings | Enable Strict protection | Protection mechanisms filter risk for you |
8. Summary: What Do You Think of This Strategy?
One-Line Rating
"So many conditions you question your life choices, but every condition has its reasoning — this is what a professional quantitative strategy looks like."
Who's It For?
- ✅ Quantitative traders with some experience
- ✅ People willing to spend time researching each condition
- ✅ Those with sufficient VPS memory
- ✅ Trend-following strategy enthusiasts
Who's It NOT For?
- ❌ Quantitative beginners
- ❌ People wanting "one trick to make money forever"
- ❌ People who get a headache from code
- ❌ People with old computers that can't handle it
My Recommendation
- First run backtesting with default parameters: See the historical performance
- Deeply understand a few conditions: Don't enable everything at once
- Verify with dry-run: Good backtesting doesn't mean good live trading
- Optimize gradually: Adjust parameters after you understand
9. What Markets Can This Strategy Make Money In?
9.1 Core Logic: Building a "Defense Network" Through Complexity
NFI46 is a member of the NostalgiaForInfinity series. The series is known for "many conditions, many protections, refined take-profit." Code volume 800+ lines — what does that mean? It's equivalent to writing a small research paper.
Its Money-Making Philosophy: Better to miss than to be wrong.
- Trend First: Most conditions require EMA50 > EMA200
- Pullback Entry: Find oversold opportunities within trends, don't chase rallies
- Protection Bottom Line: Dip/Pump protection filters out high-risk entries
9.2 Performance in Different Markets (Plain English Version)
| Market Type | Rating | Plain English Explanation |
|---|---|---|
| 📈 Slow Bull | ⭐⭐⭐⭐⭐ | Many trend pullback opportunities, strategy performs perfectly |
| 🔄 Ranging | ⭐⭐☆☆☆ | Trend conditions hard to satisfy, signals are few |
| 📉 Bear Market | ⭐☆☆☆☆ | Trend is downward, entry conditions barely trigger |
| ⚡️ Wild Swings | ⭐⭐⭐☆☆ | Protection mechanisms filter many opportunities, but also avoid losses |
One-Line Summary: This strategy is designed for slow bulls — you enjoy it in bull markets, don't touch it in bear markets.
10. Want to Run This Strategy? Check These Configs First
10.1 Trading Pair Configuration
| Config Item | Recommended Value | Commentary |
|---|---|---|
| Number of Pairs | 40~80 pairs | Too few signals insufficient, too many can't handle |
| Concurrent Positions | 4~6 | Official recommendation, balanced risk and return |
| Blacklist | Leveraged tokens | *BULL, *BEAR — don't touch these |
| Timeframe | Must use 5m | Don't change it, changing it breaks the strategy |
10.2 Key Config File Settings
# config.json key settings
"timeframe": "5m", # Must be 5 minutes
"use_sell_signal": true, # Must enable
"sell_profit_only": true, # Recommend enabling
"ignore_roi_if_buy_signal": true # Must enable
10.3 Hardware Requirements (Important!)
This strategy has enormous computational load and has requirements for VPS memory:
| Number of Pairs | Minimum Memory | Recommended Memory | Experience |
|---|---|---|---|
| 40 pairs | 4GB | 8GB | Not bad |
| 80 pairs | 8GB | 16GB | Smooth |
| 100+ pairs | 16GB | 32GB | Only then can it run |
Warning: Old computers may freeze to the point of questioning your life choices
10.4 Backtesting vs. Live Trading
Backtesting looks good ≠ Live trading makes money
Reasons:
- Too many parameters → Easy to "memorize answers" (overfitting)
- Market orders → Live trading has slippage
- Complex calculations → Possible signal delays
Recommended Process:
- Backtesting shows historical performance
- Dry-run for at least one month
- Small-funds live test
- Gradually increase position
Don't go all-in right away, even the best strategy needs a break-in period!
11. Easter Eggs: The Strategy Author's "Little Thoughts"
Looking carefully at the code, you'll find some interesting things:
-
Condition naming: buy_condition_1 to buy_condition_17
"I just like naming with numbers, want to fight me?"
-
Three types of protection: Normal / Strict / Loose
"I've prepared choices for people with different risk appetites"
-
Take-profit signal naming: signal_profit_0 to signal_profit_11
"Take-profit tiers are like school rankings, from zero to full score"
-
custom_sell function: Over 200 lines
"Exit logic is more complex than entry logic — this strategy practices 'buying is for apprentices, selling is for masters'"
12. The Final Final
One-Line Rating
"NFI46 is like a fully-armed special forces soldier — well-equipped, comprehensive protection, but complex operation requiring professional training to use well."
Who's It For?
- ✅ Quantitative veterans
- ✅ Trend-following enthusiasts
- ✅ People with enough time to research
- ✅ People with reliable VPS
Who's It NOT For?
- ❌ Quantitative beginners
- ❌ People wanting to lie back and earn
- ❌ Old clunker computers
- ❌ People wanting to bottom-fish in bear markets
Manual Trader Recommendations
If using NFI46 signals manually:
- Focus on Condition #1: Trend pullback, simple and reliable
- Focus on Condition #8: Alligator breakout, trend initiation signal
- Strictly follow Dip/Pump protection: Don't chase highs, don't catch falling knives
- Set take-profit targets: Don't wait for signals, take profits when you've made some
⚠️ Risk Re-Emphasis (Must Read This Section)
Backtesting Looks Great, Live Trading Requires Caution
NFI46's historical backtesting performance is often extremely impressive — but there's a trap:
Because there are many parameters, the strategy can easily "fit" the optimal solution for past market conditions, but this doesn't mean it can definitely profit in the future.
Simply put: You memorized all the answers before the exam, but the next exam's questions are completely different.
Hidden Risks of Complex Strategies
In live trading, complex logic may cause:
- Execution delays: Slower calculations mean signals arrive after the price has moved
- Overfitting trap: Perfect backtesting, poor live performance
- Parameter sensitivity: Changing one parameter slightly changes performance dramatically
My Recommendations (Sincere Advice)
1. First run backtesting with default parameters, take it with a grain of salt
2. Deeply understand 2-3 conditions, don't be greedy with too many
3. Dry-run for at least one month, verify real performance
4. Start with small funds, don't go all-in right away
5. Check strategy performance regularly, switch if it's not working
Remember: No matter how good a strategy is, the market won't give you a heads-up when it comes to teach you a lesson. Test with light positions — survival is the most important thing!
Final Reminder: NFI46 is a powerful trend-following tool, but it's not a holy grail. In slow bull markets, it helps you capture trend pullback opportunities; in bear markets or ranging markets, it may completely fail. Understanding the strategy's core logic is more important than blindly trusting backtesting data.