📊 The 4-Layer Signal Architecture
Winning signals are generated through four layers of analysis:
- Market Regime - What's the weather? (Trending vs Ranging)
- Directional Signal - Which way? (ML + On-chain + Technicals)
- Entry Timing - When exactly? (Microstructure + Sentiment)
- Risk Control - How much to bet? (Kelly + Volatility)
✅ BUY Signal Criteria
🟢 STRONG BUY (5-7 conditions met)
| Condition | Threshold | Why It Works |
|---|---|---|
| ADX | >25 (trending) or <20 (ranging) | Don't fight structure |
| ML Prediction | >1% (5-day expected return) | Statistical edge |
| NUPL | <0.5 (not euphoric) | Avoid buying tops |
| Exchange Flow | Outflows (negative) | Smart money accumulating |
| Fear & Greed | <40 (fear) | Contrarian opportunity |
| RSI | 30-50 (recovering) | Momentum building |
Expected Win Rate: 70-75%
🔴 SELL Signal Criteria
🟥 STRONG SELL (5-7 conditions met)
| Condition | Threshold | Why It Works |
|---|---|---|
| Distribution Phase | Detected | Smart money exiting |
| ML Prediction | <-0.5% (expected return) | Model predicts decline |
| NUPL | >0.75 (euphoria) | Dumb money FOMOing |
| Exchange Flow | Inflows spike (positive) | Retail buying top |
| Fear & Greed | >75 (greed) | Contrarian sell signal |
| RSI | >70 (overbought) | Exhaustion |
Expected Win Rate: 65-70%
💰 Position Sizing (The Secret to Survival)
Kelly Criterion Formula
def kelly_position(win_rate, avg_win, avg_loss, account_size):
b = avg_win / avg_loss # Payoff ratio
p = win_rate
q = 1 - p
kelly = (p * b - q) / b
half_kelly = kelly * 0.5 # Safer
position_pct = min(half_kelly, 0.20) # Cap at 20%
return account_size * position_pct
# Example: 65% win rate, 8% avg win, 4% avg loss, $10k account
# Result: $1,500 position (15% of account)
Quick Reference Table
| Account Size | Conservative (10%) | Moderate (15%) | Aggressive (20%) |
|---|---|---|---|
| $5,000 | $500 | $750 | $1,000 |
| $10,000 | $1,000 | $1,500 | $2,000 |
| $25,000 | $2,500 | $3,750 | $5,000 |
🛡️ Risk Management (Don't Blow Up)
⚠️ The Three Lines of Defense
1. Position-Level Stops (Every Trade)
- Stop Loss: -5% on every trade
- Take Profit 1: +5% (sell 50%)
- Take Profit 2: +10% (sell remaining)
- Trailing Stop: Lock in profits
2. Daily Loss Limit
- Max 3% of account per day
- Hit limit → Stop trading for the day
3. Drawdown Control
- At -7.5% drawdown: Reduce positions by 50%
- At -15% drawdown: Close all, reassess
📈 Expected Performance by Risk Level
| Metric | Conservative | Moderate | Aggressive |
|---|---|---|---|
| Win Rate | 65% | 62% | 58% |
| Avg Win | 6% | 10% | 18% |
| Annual Return | 15-20% | 25-35% | 40-60% |
| Max Drawdown | -12% to -15% | -18% to -22% | -28% to -35% |
| Sharpe Ratio | 1.3-1.5 | 1.1-1.3 | 0.9-1.1 |
🚫 What NOT To Do
Fatal Mistakes That Destroy Profits
| Mistake | Consequence |
|---|---|
| No stop losses | One -50% trade wipes out 10 winners |
| Risk >5% per trade | 4 losses = -20% (hard to recover) |
| Ignore on-chain data | You buy when whales sell |
| FOMO chase pumps | You buy at tops |
| Use too much leverage | 10x + 10% move = liquidated |
| Revenge trading | Emotional decisions = losses |
🎯 Simple Starter System
If You're Overwhelmed, Start Here (3 Rules Only)
1. BUY when:
- Fear & Greed Index < 30 (extreme fear)
- Price > 20-day moving average
- Bitcoin NUPL < 0.5
2. SELL when:
- Fear & Greed Index > 75 (extreme greed)
- Price < 20-day moving average
- Bitcoin NUPL > 0.75
3. Position size:
- Never more than 15% per trade
- Max 3 positions = 45% invested
- Stop loss at -5% on every trade
Expected Result: 15-20% annual returns with -15% max drawdown.
📋 Implementation Checklist
Week 1: Foundation
- Set up exchange accounts (Coinbase Pro, Binance, Kraken)
- Enable API access
- Create portfolio tracking spreadsheet
- Set up Fear & Greed alerts
- Bookmark Glassnode for on-chain data
Week 2: Build the Signal
- Code the 7-factor scoring system
- Connect to price data API
- Set up daily signal alerts
- Backtest on 1 year of data
Week 3: Risk Management
- Implement Kelly calculator
- Set up stop-loss automation
- Create daily P&L tracking
- Program daily loss limit alerts
Week 4: Paper Trading
- Run system on paper for 2 weeks
- Log every signal
- Calculate theoretical returns
- Refine thresholds
Week 5: Go Live
- Start with 10% of intended capital
- Trade only STRONG signals (score ≥5)
- Document every real trade
- Review weekly
💡 The Bottom Line
What Makes a Winning System
- EDGE (55-70% win rate) - ML + On-chain + Sentiment
- POSITION SIZING (Kelly + volatility) - Survive losing streaks
- RISK MANAGEMENT (Stops + limits) - Don't blow up
- CONSISTENCY (Follow the system) - Compound over time
Without all four, you will lose money.
🔗 Resources
Data Sources
- Fear & Greed: alternative.me/crypto/fear-and-greed-index
- On-Chain: glassnode.com or cryptoquant.com
- Prices: coingecko.com
- Charts: tradingview.com
Python Implementations
baby_strategies/ml_ensemble_strategy.py- ML signalsbaby_strategies/smart_execution_strategy.py- Executionregime_position_sizing.py- Position sizing
Deep Research Documents
DEEP_RESEARCH_ML_AI_TRADING.md- ML strategiesDEEP_RESEARCH_PORTFOLIO_CONSTRUCTION.md- Risk managementDEEP_RESEARCH_BEHAVIORAL_FINANCE.md- Sentiment analysisRESEARCH_LIBRARY_INDEX.md- All research