BacktestingApr 7, 20268 min read63 views

TradingView Backtesting Guide 2025: How to Test Any Strategy with Pine Script

A practical guide to backtesting trading strategies on TradingView using Pine Script. Covers the Strategy Tester, key performance metrics, common mistakes, and how to avoid curve-fitting.

Why Backtesting on TradingView Is Different

TradingView's Strategy Tester runs your Pine Script against historical OHLCV data bar by bar — exactly as it would execute in real time. This is bar-by-bar simulation, not vectorized backtesting, which means it catches intra-bar order execution and avoids certain look-ahead biases.

However, TradingView backtests execute orders at the next bar's open by default, not at the signal bar's close. This 1-bar delay models realistic execution. If you need signal-bar execution, use process_orders_on_close=true — but only if your broker guarantees fill at the closing price.

Tip

Set process_orders_on_close=false (the default) for realistic backtesting. Only override this if you understand the execution model implications.

The Key Metrics in TradingView Strategy Tester

TradingView shows a large number of statistics. Here are the ones that actually matter and what to benchmark against:

  • Net Profit — total P&L after commissions. Must be positive, but don't optimize for this alone
  • Profit Factor — gross profit ÷ gross loss. Good: > 1.5. Excellent: > 2.0
  • Sharpe Ratio — risk-adjusted return. Aim for > 1.0. Below 0.5 is poor
  • Max Drawdown — largest peak-to-trough equity drop. Keep below 20% for most strategies
  • Win Rate — % of trades that were profitable. Trend strategies: 35-50%. Mean reversion: 55-70%
  • Average Trade — net profit per trade. Must cover commissions and slippage comfortably
  • Total Trades — minimum 100 trades for statistical significance on any timeframe

Setting Up a Realistic Backtest

Most beginners run backtests with zero commission and no slippage — producing unrealistically good results. A realistic setup subtracts real-world costs before you evaluate performance.

strategy(
  title            = "Realistic Backtest Setup",
  overlay          = true,
  initial_capital  = 10000,
  default_qty_type = strategy.percent_of_equity,
  default_qty_value = 5,            // 5% risk per trade
  commission_type  = strategy.commission.percent,
  commission_value = 0.05,          // 0.05% per side (like most crypto exchanges)
  slippage         = 2              // 2 ticks slippage per trade
)

Tip

For crypto: 0.05-0.1% commission per side. For stocks: $0.01/share or $5 flat. For forex: account for the spread. Always include slippage — it reduces profits by 10-30% in high-frequency strategies.

The Biggest Backtesting Mistake: Curve Fitting

Curve fitting (also called overfitting) is optimizing your strategy's parameters so heavily on historical data that it loses its edge on new data. Signs of curve fitting: very high win rate (>75%), perfect equity curve, parameters that look suspiciously specific (e.g., EMA(37) instead of EMA(20)).

The correct approach: split your data into in-sample (IS) and out-of-sample (OOS) periods. Optimize parameters on IS data only. Test the result without any changes on OOS data. If performance degrades dramatically, the strategy is curve-fitted.

A rough guideline: use 70% of available data for IS optimization, 30% for OOS validation. If the strategy holds up on OOS with at least 60-70% of IS performance, it has a genuine edge.

Walk-Forward Testing in TradingView

Walk-forward testing is the gold standard for strategy validation. You roll a fixed IS window forward in time, re-optimize at each step, and use the OOS period immediately after. Repeating this across the full data range shows whether the strategy's edge is consistent or regime-dependent.

TradingView doesn't have built-in walk-forward testing, but you can simulate it manually by changing the Strategy Tester date range. Set your IS period, note the optimal parameters, then shift the range forward and test with those parameters.

Tools like TradePilot can help you rapidly generate and iterate on backtest scripts so you can test more variants in less time.

TP

TradePilot Team

Traders and engineers building the fastest way to go from idea to live Pine Script strategy, right inside TradingView.

More articles

Comparison

Free vs Paid Pine Script AI: Is It Worth Paying?

Read
Guide

Pine Script Generator vs Writing It By Hand: Which Is Faster?

Read
Guide

Why AI Gets Pine Script Wrong (And How to Fix It)

Read
Guide

The Best Pine Script AI for Beginners in 2026

Read
Comparison

Can ChatGPT Write Pine Script v6? We Tested It Properly

Read
Pine Script

Pine Script Compile Errors: The Most Common Causes and Exact Fixes

Read
Education

TradingView Pine Script Generator: How AI Writes Your Strategy Code

Read
Strategy

Pine Script Strategy Optimizer: How to Find the Best Parameters for Your Strategy

Read
Tutorial

How to Create a Pine Script Strategy with AI: Complete 2026 Guide

Read
Pine Script

Pine Script v6 Function Reference: ta.*, strategy.*, input.*, request.*

Read
Tutorial

How to Install TradePilot in TradingView (Step-by-Step Guide)

Read
Comparison

Best Free AI Tools for Pine Script in 2026 (Honest Comparison)

Read
Pine Script

Pine Script v6 Syntax Changes: Everything That Breaks Coming from v5

Read
Education

The Best TradingView Indicators and Strategy Types in 2025 (And How to Build Them with AI)

Read
Education

How to Backtest a Trading Strategy in TradingView (The Right Way)

Read
Education

Pine Script v6 Complete Guide: Strategies, Indicators, and Alerts That Actually Work

Read
Comparison

TradePilot vs ChatGPT for Pine Script: Why a Specialist Wins Every Time

Read
Product

Edit Any Pine Script Strategy with Plain English — No Coding Required

Read
Product

One Click to Fix Any Pine Script Error Inside TradingView

Read
Product

Stop Guessing Parameters. TradePilot's Strategy Optimizer Tests Them All.

Read
Product

We Built the Fastest AI Pine Script Generator Inside TradingView

Read
Pine Script

EMA Crossover Strategy in Pine Script v6: Full Code with RSI Filter, Stop Loss & Alerts

Read
AI Trading

AI Pine Script Generator: How to Create TradingView Strategies Without Coding in 2025

Read
Pine Script

Pine Script Strategy: The Complete 2025 Guide to Writing TradingView Strategies

Read

Ready to elevate your trading?

Join thousands of traders using TradePilot.co.in to generate profitable Pine Script strategies.

No credit card required1,000 free credits / monthWorks inside TradingViewCancel anytime