Signal Pilot
🟢 Beginner • Lesson 4 of 82

Your Indicators Are Lying to You (The Repaint Problem)

Reading time ~12 min • Indicator Truth & Detection
0%
You're making progress!
Keep reading to mark this lesson complete

🎯 What You'll Learn

By the end of this lesson, you'll be able to:

  • Test indicators for repainting (screenshot signal before bar close, verify after)
  • Identify which TradingView indicators repaint (80%+ of retail indicators do)
  • Use only non-repainting tools (all SignalPilot indicators are non-repainting)
  • Walk-forward test on live data for 2-4 weeks before trusting any indicator
Part 1: The Repainting Nightmare

📉 CASE STUDY: Jake's $14,700 Repainting Indicator Disaster

Trader: Jake Morrison, 26, former marketing analyst ($32K account)

Strategy: "Ultimate Reversal Pro" TradingView indicator (47K downloads, 4.8★), 71.4% backtest win rate

Fatal flaw: Indicator was repainting—signals changed or disappeared after bar close

Result: Lost $14,700 (-45.9%) in 10 weeks when "perfect" backtest signals never existed live

The "perfect" backtest (Jan 2024): Backtested 18 months ES futures data. Results: 71.4% win rate, 3.2 profit factor, 3.8:1 R:R, -8.2% max DD, +247% return. "This is the edge I've been looking for!"

The disaster (Feb-Apr 2024, 10 weeks): Went live with $32K. Reality: 76 trades, 34.2% win rate (cut in HALF), 0.58 profit factor (negative expectancy), 0.92:1 R:R. Lost $14,700 (-45.9%). Account: $32K → $17.3K.

The breaking point (Apr 8, 2024): After 4 losing trades, Jake took screenshots of live signals, then compared after bar close. Every signal moved or disappeared:

  • 9:38 AM BUY: Signal at 5,186 → After bar close: moved to 5,179 (7 points lower!) • Lost $680
  • 10:52 AM SELL: Signal at 5,194 → After bar close: disappeared completely! • Lost $520
  • 1:15 PM BUY: Signal at 5,201 → After bar close: moved to 5,196 (5 points lower) • Lost $440
  • 2:43 PM SELL: Signal at 5,209 → After bar close: moved to 5,213 (4 points higher) • Lost $380

The investigation (Apr 9-15): Jake tested "Ultimate Reversal Pro" systematically. Visual test: 43 out of 47 signals moved (91.5% repaint rate!). Alert test: 17/20 alert prices didn't match historical locations. Code audit: Found request.security() without lookahead=barmerge.lookahead_off. Verdict: Indicator was HEAVILY repainting.

Recovery (May-Aug 2024): Stopped trading for 2 weeks. Researched deterministic indicators, switched to Signal Pilot's non-repainting tools. New rules: (1) ONLY use indicators with barstate.isconfirmed checks, (2) VERIFY with visual + alert tests, (3) REQUIRE lookahead_off for HTF data, (4) Paper trade 2+ weeks before live. Results over 4 months: 90 trades, 58.9% win rate, 1.94 profit factor, 2.1:1 R:R, +$12,820 profit. Account: $17.3K → $30.1K (+74.1% recovery).

Final results: Started $32K → Trough $17.3K (repainting indicators) → Final $30.1K (deterministic indicators). Net: -$1.9K (-5.9%) but learned $15K+ lesson.

Jake's advice: "I lost $14,700 because I trusted a repainting indicator. Backtest showed 71.4% win rate. Live: 34.2%. Why? Signals I saw live MOVED or DISAPPEARED after bar close. I traded ghosts. The 'perfect' backtest was a lie. Test EVERY indicator: (1) Screenshot live signals, compare after bar close—if they move, it repaints. (2) Set alerts, verify historical locations match. (3) Check Pine Script for lookahead_off and barstate.isconfirmed. (4) Paper trade 2+ weeks—if live doesn't match backtest, indicator is broken. If backtest looks TOO perfect (>70% win rate, <10% DD), it's probably repainting. Real edges are 55-65% win rates with honest drawdowns. Repainting indicators destroy more accounts than bad strategies ever will. NEVER trust, ALWAYS verify."

Case Study Quiz: Jake backtested "Ultimate Reversal Pro" indicator and got amazing results: 71.4% win rate, 3.2 profit factor, +247% return. He went live with $32K but lost $14,700 (-45.9%) in 10 weeks with only 34.2% win rate. What was his fatal mistake?

A) He should have used smaller position sizes to reduce risk
B) The indicator stopped working because market conditions changed
C) The indicator was repainting—signals he saw live MOVED or DISAPPEARED after bar close, so the "perfect" backtest signals never actually existed in real-time (91.5% repaint rate)
D) He traded too frequently—should have been more selective with entries

Correct: C. Jake's indicator showed 71.4% backtest WR, but 91.5% of signals moved/disappeared after bar close. He was "trading ghosts"—entries that looked perfect only because they repainted. Fix: screenshot-test live signals. If backtest looks too perfect (>70% WR), it's likely repainting. Real edges produce 55-65% win rates.

Part 2: Deterministic Indicators

What "Deterministic" Means (And Why It Matters)

Here's the thing: Most indicators are built by hobbyists who don't know about repainting. Or worse, by scammers who do know and don't care.

SignalPilot takes a different approach.

💡 Signal Pilot's Guarantee

Every SignalPilot indicator follows strict deterministic rules:

  • No future data: All HTF requests use lookahead_off and [1] offsets
  • Fixed signals: Once a signal prints, it never moves or disappears
  • Confirmed bars only: Signals wait for bar close (no intra-bar magic)
  • Open-source auditable: Code is available for independent review

Translation: What you see live is what you'll see in history. No tricks. No lies.

❌ Repainting Indicator

Backtest: 3.2R expectancy, 2.8 profit factor

Live trading: -0.8R expectancy, 0.6 profit factor

Problem: Signals change after bar close

Result: Wasted months, blown account

✓ Deterministic Indicator

Backtest: 1.8R expectancy, 1.6 profit factor

Live trading: 1.7R expectancy, 1.5 profit factor

Integrity: Signals never change

Result: Consistent, profitable edge

Notice: The deterministic indicator has a lower backtest expectancy. That's because it's honest. It doesn't cheat by using future data.

But live? It actually works.

Part 3: Audit Framework

Never Trust, Always Verify

Here's your step-by-step framework for auditing ANY indicator before risking real money:

✅ Indicator Audit Checklist

Before trading ANY indicator:

  1. Visual test: Watch 3-5 signals live, check if they move after bar close
  2. Replay test: Use Bar Replay to compare live vs historical signals
  3. Alert test: Set alerts, track 20+ instances, compare to history
  4. Code audit (if available): Check for request.security() red flags

Pass criteria: ALL tests must show consistent signals.

If ANY test fails → DO NOT USE → Find another indicator

🚨 Real Talk

This feels like extra work. It is. But consider the alternative:

Spend 2 hours testing → Save months of losses and psychological damage.

Skip testing → Blow account → Wonder why trading is "impossible."

Your choice.

🎓 Key Takeaways

  • 60-90% of indicators repaint — Test everything before trading it
  • Repainting = fake edge — Perfect backtests, disastrous live results
  • Use 4 detection methods — Visual, Replay, Alert, Code audit
  • Deterministic code matters — Signals often never change after bar close
  • SignalPilot guarantees it — No future data, no tricks, no lies
  • Audit before you trade — 2 hours testing saves months of losses
⚡ Quick Wins for Tomorrow (Click to expand)

Don't overwhelm yourself. Start with these 3 actions:

  1. Screenshot test 1 indicator — Take 3 screenshots of live signals, check in 10 mins
  2. Set 1 alert — Pick your main indicator, set an alert, verify it matches after bar close
  3. Journal it — "Indicator: [name]. Test: Screenshot. Result: Signals moved/didn't move."

After testing 3 indicators this way, you'll know which ones are lying. Remove the liars immediately.

Practice Exercise

🎯 Repaint Detection Practice

Exercise: Audit Your Current Indicators

Test every indicator you're using for repainting before risking real money:

  1. Visual Test: Screenshot 3 signals. Wait 10 minutes. Refresh. Did signals move or disappear?
  2. Replay Test: Use TradingView replay mode. Play forward. Do signals appear BEFORE or AFTER the move?
  3. Alert Test: Set alerts on live signals. 1 hour later, check chart. Are alerts still valid?
  4. Backtest vs Live: Paper trade for 20 trades. Compare expectancy to backtest. Large gap = likely repaint
  5. Document your findings: Which indicators passed? Which failed?
  6. Remove ALL repainting indicators from your charts immediately

Goal: Verify that every indicator you trade is deterministic. If you can't prove it doesn't repaint, assume it does.

Test Your Knowledge

🎮 Quick Check (No Pressure)

You backtest an indicator: 2.8R expectancy. You trade it live: -0.5R expectancy. What's the most likely cause?

A) Market conditions changed
B) The indicator repaints (signals changed after bar close)
C) You need more data for backtesting
D) Your execution was bad
Correct! A massive gap between backtest and live results (from profitable to losing) strongly suggests repainting. The indicator showed perfect signals in history that never existed live.

How do you test if an indicator repaints?

A) Just check the backtest results
B) Screenshot signals live, wait for bar close, verify they didn't move
C) Read the indicator description
D) Check the number of downloads
Correct! The visual test is the most reliable: screenshot signals during the bar, then check after the bar closes. If signals moved or disappeared, the indicator repaints.

What was Jake's main mistake?

A) He didn't backtest enough
B) He trusted a repainting indicator—91.5% of signals moved after bar close
C) He traded too large
D) He used the wrong timeframe
Correct! Jake's indicator showed perfect signals in backtests that never existed live. 91.5% of signals moved after bar close—his 71% backtest win rate became 34% live.

If you made it this far, you just saved yourself months (maybe years) of pain. Most traders never learn this. You just did.

Related Lessons
Intermediate #32

Backtesting Reality

Avoid repainting in backtests — test for look-ahead bias and curve-fitting

Read Lesson →
Beginner #3

Price Action is Dead

Use non-repainting order flow instead of lagging price action signals

Read Lesson →
Beginner #5

RSI Extremes

Learn how RSI works properly — and why "overbought" doesn't mean sell

Read Lesson →

⏭️ Coming Up Next

Lesson #5: RSI Extremes Are Not Reversal Signals

Learn why RSI >70 in an uptrend is often a potential BUY signal, and how regime determines everything.

Educational only. Trading involves substantial risk of loss. Past performance does not guarantee future results.

💬 Discussion (0 comments)

0/1000

Loading comments...

← Previous Lesson Next Lesson →