Free backtesting software: test and optimise strategies in the browser
Free backtesting software in the browser: run Pine-compatible strategies with commission and slippage, read the full report and optimise inputs at no cost.
SuperCharting works as free backtesting software in the browser: you write or paste a Pine-compatible strategy, add it to a chart, and the Strategy Tester shows a full report with key stats, an equity curve, trades analysis and every trade. An optimiser searches your inputs, and you can forward-test the idea in the Paper Trading panel without real money. The account is currently free, and the tester and optimiser are part of it, not an add-on.
What free backtesting software should include
A backtest is only useful if it is honest about costs and shows enough detail to find its weak points. When you compare free tools, look for:
- Costs: commission and slippage settings, because a strategy that trades often can turn from profit to loss once they are counted.
- Realistic fills: orders filled on the next bar's open, not at the signal bar's close you could not have traded.
- A full report: drawdown, profit factor, win rate, average trade, and the list of trades so you can check them on the chart.
- A date range: so you can keep some history aside for an out-of-sample check.
- An optimiser with restraint: one that searches inputs but also lets you filter results, so you do not keep only the luckiest setting.
The Strategy Tester report
When a strategy is on the chart, the Strategy Tester panel shows the report in four parts:
- Key stats: Total PnL, max drawdown, total trades, profitable trades and profit factor at the top, with the equity curve.
- Performance: returns, buy and hold comparison, Sharpe and Sortino ratios, and the strategy against a benchmark.
- Trades analysis: winning and losing streaks, trade durations, adverse and favourable excursions, and time patterns such as the best hour or day for entries.
- List of trades: every entry and exit with price, time and result. Click a trade to show it on the chart.
The Testing period can be the entire history, the last 7, 30, 90 or 365 days, or a Custom date range. Export saves the report data. More in the strategy tester guide.
Properties that change the result
In the strategy's settings, the Properties tab holds Initial capital, Default order size, Pyramiding, Commission, Slippage, leverage for long and short, and how limit orders and script execution are handled. Set these to match your broker before you trust a number.
How to backtest a strategy in SuperCharting
- Open
NSE:NIFTYon the 1D interval. - Click Script Editor in the right-hand widget bar, choose New blank indicator, and replace the text with the strategy below.
- Click Add to chart. The two EMAs draw on the price, entry and exit marks appear, and the Strategy Tester fills in.
- Open the strategy's Settings, go to Properties, and check Initial capital (100,000 in this script), Commission (0.03% here) and Slippage (1 tick).
- In the Strategy Tester, read Key stats, then open List of trades and click two or three trades to check them on the chart.
- Set the Testing period to a Custom date range that leaves out the last year. Note the result, then switch to the last year only and compare.
//@version=6
strategy("EMA cross test", overlay = true, initial_capital = 100000, commission_type = strategy.commission.percent, commission_value = 0.03, slippage = 1)
fastLen = input.int(20, "Fast EMA", minval = 2)
slowLen = input.int(50, "Slow EMA", minval = 3)
fast = ta.ema(close, fastLen)
slow = ta.ema(close, slowLen)
plot(fast, "Fast", color = color.teal)
plot(slow, "Slow", color = color.orange)
if ta.crossover(fast, slow)
strategy.entry("Long", strategy.long)
if ta.crossunder(fast, slow)
strategy.close("Long")
The engine supports market, limit, stop and stop-limit entries, strategy.exit with profit, loss and trailing stops, strategy.close and close_all, and pyramiding. A worked tutorial is in write your first strategy.
Optimising without fooling yourself
Click Optimise in the Strategy Tester to open Optimise strategy. Tick the inputs to search, here Fast EMA and Slow EMA, and give each a From, To and Step, for example Fast 5 to 40 step 5 and Slow 30 to 200 step 10. Choose the result to maximise or minimise (net profit, profit factor, max drawdown and others) and a method: Random, Random improvement, Sequential improvement, Annealing or Brute force. Each cycle is a full backtest; nothing on the chart changes until you click Apply best to chart.
Two habits keep this honest. Use a Result filter or Save criteria, for example at least 30 trades and a max drawdown you could live with, so a setting with three lucky trades is not kept. Then run the best setting on a date range the optimiser did not see. If the result falls apart there, the setting was fitted to noise. The strategy optimiser and backtesting guide pages go further.
Past results do not guarantee future results. A backtest is a test of an idea on history, not a forecast.
Forward-testing with paper trading
After a backtest, the next step is to watch the idea on new bars. The Paper Trading panel lets you place market and limit orders with brackets on any chart, tracks positions, balance, equity and margin, and can be reset at any time. No real money is involved. You can also put an alert on the strategy with Add alert on strategy so each order fill notifies you. See paper trading.
Is it really free?
Yes, currently. The Strategy Tester, the optimiser and paper trading are on every account, and SuperCharting has no paid plan you must buy today. Paid plans may come later. TradingView is a trademark of TradingView, Inc.; SuperCharting is not affiliated with it.
Frequently asked questions
Can I backtest Indian stocks and indices?
Yes. Any symbol with history works, including NSE:NIFTY, NSE:BANKNIFTY and NSE or BSE stocks, as well as XAUUSD and EURUSD.
How much history does a backtest use?
The bars loaded on the chart, up to 40,000 per chart as far back as the data feed goes.
Is there walk-forward testing?
Not as one button. Do it by hand with Custom date range: optimise on one period, then test the chosen setting on the next.
Does the optimiser change my chart?
No. It runs each test separately and changes the chart only when you click Apply best to chart.
Can I test strategies written for TradingView?
Open-source Pine strategies you may use can be pasted into the Script Editor. Many run as Pine-compatible scripts; unsupported lines are reported by line number.