Backtester Suite (Plug & Play)

Request Your Trial

(⬇️ Please click on the banner below ⬇️)


This indicator is available only to our VIP-12 months users. YES! We said indicator, and not strategy or backtest for a perfect reason.
We wanted to make it as generic as possible, and allow anyone to connect any indicator of his/her choice in a few clicks only.
This is NOT possible (in TradingView) with a strategy/backtest, but only with an indicator - that's why we worked on recoding the whole backtest logic as an indicator.

For more information, regarding our packages, please visit our Pricing page

Video Tutorial

This video summarizes very well what the indicator does.
Though, we still recommend our customers to read the content below, as it gives way more critical details we didn't include in the video.

The amazing benefits of our Plug & Play

Issue #1 : IT'S EXPENSIVE - Hiring a developer to code a custom indicator is costly. For a custom backtest it's even more expensive as those scripts are very often way more complicated.
Now imagine, that now that you see your idea live on a chart, you'll realize you'll have to finance another backtest system as the one you have is not compatible with your new idea.

We will never guarantee your success on the market, but THIS we stands by it any day any hour.
You can connect any indicator or your choice by updating your indicator slightly, and connecting to our Backtest engine.

Even if someone is doing all the coding for you, it might require days/weeks depending on your overall trading strategy/idea.
Without even counting the time for you to test/validate the work done, and all the back-and-forth to fix all the issues.

We wish it could be as easy as going from weeks of coding to 1 single click :)
We did the heavy-lifting, but you'll have to make the last effort the cross the finishing line.
We made it easy for you to play with it, and find a configuration that makes sense to YOU, and for your strategy/asset/timeframe
Having a different configuration per asset/timeframe is totally normal

Issue #3 : IT'S COMPLICATED - Someone did a backtest code for you, but... you can't update it because you either :
- don't know anything in programming
- ..., and don't have time to learn (most of us have a job/family/
- The system you have is way too specific for one of your previous idea, but can't be updated easily for your next trading ideas.

Solution #3 : WE MADE IT EASY AND FUN.
Best Trading Indicator has the goal to externalize the technical stuff that you don't want to take care of - so that our customers can finally focus on their trading, and optimizing their ideas.

In case you're wondering, no we're not reading your mind :), but we're also traders who didn't know how to code before, and had to hire external programmers to do the heavy work for us.
You can be sure that most of the frustrations (trading, technical, ...) you have/had, we had them also, and that's why we created Best Trading Indicator™

Our Plug & Play feature and TradingView

To connect your external indicator to our indicators, we're using a native TradingView feature which is not available for all users.
It depends on your TradingView subscription plan (More info here).
The image below shows the total number of "indicator on indicator" you can have on your TradingView account. If you intend to use our Algorithm Plug&Play indicator and/or our Backtest Plug&Play suites, then you must upgrade your TradingView account to enjoy those features.
We value our relationship with our customers deeply, and that's why we're warning you that a compatible TradingView account type is required

TradingView Compare-Plans
TradingView Compare-Plans

The user input fields


Access Key Backtest

Here you'll need to insert the access key you received by email (within 2 business days after the date of order) This key has been generated for you according to your subscription package, and have a specific expiration date included in it.

If the key inserted is incorrect or expired, the indicator displays an orange label inviting you to subscribe again

Connect your own external indicator to the Backtest

Connect any external indicator to our Backtest

On the left screenshot, we're showing how to connect your Algorithm Builder to our Backtest engine, but the process is exactly the same for any other indicator.
Our subscribers will receive the tutorial for updating their indicator quickly, and then connect it to our Backtest Engine.
For the Algorithm Builders, you won't have anything to do - this is already included.
This is not magic, nor is sorcery, but certainly is way beyond the most remarkable technical trading tool we've ever developed on TradingView (even across all brokers we know).

For very basic general examples, you can use this tutorial to update your indicator with 2 lines of code only.

For the explanations below, we set our Algorithm Single Trend+ with the dummy configuration :
- Timeframe (m30)
- Supertrend (11, 8)
- Moving Average Cross : SMA 20/SMA50
This is only a dummy example to show what our backtest can do, and MUST NOT be understood in any way as a universal, and valid configuration.

Unconnect/Hide your Backtest Engine
Unconnect or hide your Backtest

To unconnect or hide your backtest, you have 2 possible ways :
1) Next to Entry Sytem, select None 2) Or click on the 👁️‍🗨️ (eye icon) next to the Backtest indicator name on your chart.

Display the Backtest entries/exits/Take Profits and Stop Loss levels

Display profits/stop-loss levels, entries and exits

Now we're getting right into the fun stuff.
Let's explore briefly each display option (symbolized by a 👁️‍🗨️ in the Backtest UI) :

- Color Traded Background : Color the chart background in green when in a BUY trade, in red when in a SELL trade. If the Backtest is not in a trade, then the background won't be colored.

- Show Entry/Exit Markers : Displays the entries (Enter Long/Enter Short), and exits (Exit Long/Exit Short) labels.

- Show Entry Level : Displays a blue level line to easily identify the entry price of a trade.

- Show Take Profit Level : Display a purple line to visualize where the Take Profit level is (we'll explain below how to set it up).

- The orange lines on the left screenshot are the stop-loss levels. We're going to explain how to set them a bit further down also.

Backtest Filters

↑ Trade Direction ↓
Trade direction

- Both : The backtest takes the BUY, and SELL trades.

- Longs only/Short only : To be used if the trader wants to take the trades in a unique direction only


Pyramiding has many names such as : Re-entry, secondary trend, Additional entry, ... It refers to entering multiple times in the same trend.


- Pyramiding is Allowed :
1. On same entry - Allows multiple positions at the same candle
2. On different entry - Allows multiple positions at different candle only
3. At every opportunity

As an example, the Algorithm Builders only enter once per candle so options 2. or 3. works better with those indicators - other indicators (and certain conditions) would perhaps require the 1. option

- Maximum Number of Pyramiding Entries : The max number of re-entries in the same trend. For instance if set to 2, then depending on the signals, you'll get at most 2 re-entries in the same trade direction.

- Position Size Multiple of Original Entry Position : Option to add X multiples of the original position size for the re-entries.

Example: Position size multiple = 2, and First entry size is $100. Then, the re-entries position sizes will be ($100 X 2 = $200).

▄ █ Position sizing █ ▄

To explain how it works, let's assume an initial capital of $100,000, and the configuration as shown below.

Position Sizing

- 1. % of Equity : If selected, the position size used is the input to the right of 1. % of Equity.
Example: The trader starts with a capital of 100K. After a winning trade, your total capital is $103K - for the next trade the position size will be 3% of $103K

- 2. % of Capital : If selected, the position size used is the input to the right of 2. % of Capital.
In other words, the position size will always be the same position size as calculated on the initial capital.

Example: The trader starts with a capital of 100K. After a winning trade, your total capital is $103K - for the next trade the position size will be 5% of $100K. (As 100K is the initial capital used in our dummy example)

⛔ Show Entry Stops ⛔

We didn't reinvent the wheel here. Any good backtest should offer an entry stop-loss, and an in-trade stop-loss.
Giving only here also an example among all the use cases. For instance, the trader sets a stop-loss 2% at the time of entry on your trade, but once the trade moves in the desired direction, the trader might want a trailing stop-loss using a 4% input.
Example: A trader goes LONG on only 1 "ABC" stock evaluated $10 per share.
1) The entry-stop loss will be 2% away so set at $8
2) A candle
3) The trailing stop will activate, and move the stop-loss from the entry stop-loss level (=$8) to $8.32 (=4% move up from $8) - and so on, and so forth for each time the price moves 4% up
The entry, and in-trade stop losses can be identicals. There is no universal rule, and as always you know the drill - all depends on your backtest, and indicator configurations as a whole.

Last, but not the least, selecting an Entry stop-loss is mandatory, but the in-trade stop-loss is not. Up to you to decide if the in-trade SL is needed for our Backtest system need the Entry SL (for calculating risk/reward ratio, and other stuff explained in the Data Window section).

Entry stops management

The trader should link the entry-stop loss type, and the inputs using the reference number ID (1, 2, 3). On the left image, if the trader selects 3. Supertrend, he/she only needs to update the input fields related to the 3. reference number.

The Entry Stop-loss can be set using either a :

1. Fixed percentage value. If selected, sets the entry stop-loss X% away from the entry price.
2. Fixed value. If selected, sets the entry stop-loss X units away from the entry price. On the left screenshot, and assuming the backtest is applied on BTC/USD, it sets the stop-loss 40 USD away from the entry-price.

3. Supertrend. We're known on TradingView of our Supertrend scripts, and we think it's a great tool to be used as a trailing stop (again not a financial advise).

⛔ Show In-Trade Stops ⛔
In-Trade stops

The trader should link the In-trade-stop loss type, and the inputs using the reference number ID (1, 2). On the left image, if the trader selects 3. Supertrend, the backtest uses the Supertrend defined at the previous Entry stop-loss step .

The In-Trade Stop-loss will trail the stop-loss value from the entry stop-loss level.
The options are:

0. None. If selected, there won't be any trailing applied to Entry stop-loss, and the SL value will stay set at the Entry SL level
1. Trailing at %. If selected, will trail the stop-loss from the Entry SL level using the percentage value next to the label 1..
2. Trailing at value. If selected, will trail the stop-loss from the Entry SL level using the units value next to the label 2..
3. Supertrend. If selected, will trail the stop-loss from the Entry SL level using the Supertrend defined at the step before.

We know it's a lot to digest ..., but hopefully the tutorial videos help speeding up your learning curve.

❌ Hard Exits ❌

Our Backtest VIP Suite offers to invalidate your trades on :

2. Trend Direction
3. RSI divergence (Regular, and Hidden)

We included the hard exit indicators in the backtest - as we also did for the Algorithm Builders.
The hard exit (or invalidation) is a fundamental part of the Best Trading Indicator™ method. We explained numerous times on TradingView, our website, and social media channels why we "love" this concept so much, and how it saved our capital numerous times from getting savagely wrecked by the market.

Note: We'll be adding new Hard Exits indicators, and as you might know already; the subscribers will benefit from the upgrades for free :) - as explained on our Pricing page)

❌ Hard Exits - MACD ❌
Hard Exit MACD

On the left image, we use a MACD 20/50/50 as a dummy example.

Rule #1: A trader must keep using his/her logic : If enabled, the hard exit MACD has to make sense with your indicator signals. For example, if a trader uses entries based on a MACD 12/26/9, but invalidates using a MACD 20/50/50 - what do you think will happen ?
Answer: Probably nothing sensible because the hard-exit MACD 20/50/50 is more significant than the entries given by the MACD 12/26/9.
Without going any further into this edge case, our point is : the feature works if it has been thought of to exit a trade before a SL gets hit.

Rule #2: Must be used to reduce your losses - not your wins
A MACD is a momentum indicator - meaning when there is a decrease in the trend strength/velocity, the MACD will drop, and might turns negative - When in a LONG trend, this is a valuable input as it alerts the trader the trend might goes south (perhaps a time to move up the SL and take a bit of profits or closing the trade if not already with a positive balance on that trade).

- We can see on the left image, (once again, this is only an example and not a general rule) - that the Hard Exit MACD 20/50/50 allowed the trader to exit his/her LONG position with a better exit compared to a stop-loss based on this Supertrend.
- However, on the right part of the image, it exits the SHORT position way too soon.

There the example is simple and we hid a lot of graphical elements to simplify. But we think you got our point.
That's precisely why we cannot recommend a specific value for any indicator - here a MACD 20/50/50 could work overtime if combined with a good configuration/money/risk management etc.

❌ Hard Exits - TREND DIRECTION ❌
Trend Direction Hard Exit

This hard exit is based on my Trend Signal Indicator available as an open-source script.

This is an indicator used to detect whenever a higher high or lower low trendline (also called oblique) is broken and a change of trend might occur.

❌ Hard Exits - RSI ❌
Hard Exit RSI Divergence

The 3. RSI exits a signal whenever a regular or hidden RSI divergence in the opposite direction of the trade will be detected.

In the left example, we see the backtest exits the SHORT because a Regular RSI divergence invalidated the trend.

If you're looking to display those R(egular) and H(idden) small labels, I recommend that RSI divergence detector script from my great friend Ricardo Santos

💲💲 Take Profit 💲💲
Take Profit Backtest

We only included 1 level of Take Profit so far. We'll work on adding at least one more soon.
You can set your Take Profit level based on either a 1- Fixed value or on a 2 - Percentage value

📆 Date Range Filtering 📆
Date filtering Backtest

If enabled, the backtest only uses the data between the starting and the ending dates.
Using the example from the left image, we see that no trade is used by the backtest engine before Sept 1st, 2019.

⏱️ Hourly Range Filtering ⏱️

Please note that the hours filtering is based on the broker time - not on your chart time.
In other words, if your chart is UTC+1, but you're trading an asset from a US EAST COAST broker, then the timezone used is the UTC-4 timezone.
You'll must be wary of this when filtering and probably do a quick (but simple) calculation before setting up this option.
The easiest would be to set your chart timezone on the broker local timezone (and no math is needed).

Hourly range

Put limits the backtesting to a delimited starting and ending time.

❗❗ Fees and Slippage ❗❗
Fees and Slippage

Too often entirely ignored by many traders, the fees can eat gains out quickly/deepen one's capital faster than expected.
⚠️The fees vary between brokers and asset traded - it could be recommended to check on your broker page what are the fees for the asset on your chart and insert that percentage number.
You'll likely find the entry spread fee only available publicly - but the exit slippage is often hidden (for reasons that I won't explain in this guide, but likely later in another one ^^).

Another cost ignored even more is the Slippage. Brokers aren't always our friends and they might be trying to steal a trader capital with silly ways - i.e. think about a Stop-Loss being hit and we're so confused because we see on the chart that NEVER the price came even close to your SL level, but... it got hit anyway.
Yes! We know how frustrating it is, but that's the game we're playing and trading should never be about blaming the game, but only blaming the players/traders/ourselves.

Blaming the game always is likely to not end with excellent performance results, but accounting for this "risk" and being able to quantify it is an incredible hedge.

🔔 Alerts 🔔

By design, the alerts aren't available for strategy scripts. But this script is an... indicator so why not enjoying all the cards in our hands the fullest.
We enabled the alerts on those Backtest Entry/Exit signals, but we cannot activate them for you. You'll need to create for each asset and each timeframe the alerts to capture the signals given by the Algorithm Builder

The number of alerts you can set for your TradingView account depends on your TradingView subscription type. You can figure out how many alerts you can have activated simultaneously from that documentation.

Setting up alerts 1
Setting up Alerts - 2

You'll have to create 1 alert per event (buy or sell) per asset (BTC, DOW, APPL, ...) per timeframe (m5, m15, ...).

For instance, if you add your [BTI] Backtest to your chart. You could create 4 alerts:

1. Entry Long
2. Entry Short
3. Exit Long
4. Exit Short

Depending on your TradingView subscription type, you might receive the alerts by email and by SMS

VIP Alerts

Same principle as explained above. We enabled the alerts on the re-entries and the hard exits.

You're welcome :)

🔔 Dynamic Alerts and TradingView automation 🔔

Here are the list of third-parties capturing TradingView alerts and forwarding them to many CFD/Crypto/Stocks brokers.
The process to connect the Algorithm Builder entries/exits signals to those systems is fairly easy.
You'll find more insight to make your alerts compatible with those systems here.

More information to create and manage custom alerts here

Data Window : how to visualize the results

✔️Now the cherry on the cake if we might say so. A backtest is cool, but visualize results is the end goal here.

The Data Window is dynamic - it means whenever you'll mouseover at a give time on your chart, the data on that panel get automatically updated.
Let's assume you're backtesting your idea between Sept 1st, 2019 and Oct 1st 2019.
If your mouse cursor is located (or hovered) at a candle on Sept 14th, 2019 (data chosen randomly for this example), then the data displayed only include the results between Sept 1st and Sept 14th.
The video gives a beautiful demonstration of how it works.
We explained in the video (very top of this page) how to use it, but you'll find below some brief explanations for how to access the results and to interpret them.

The VIP Backtest offers way more analytics than the PRO Backtest.
We added new metrics like PEA, Number of Long/Short Hard Exits, Per Trade Analytics and much more...
We feel it's too complicated (and too long) covering all of them in writing so we strongly encourage you to check out our tutorial video at the top of this page.

Data Window TradingView

Without going into too many details, let's review a few major metrics :

-Average Profitability Per Trade (RISK): (APPT) This value is inspired by the @Pinecoders account on TradingView and is fundamental to evaluate a stategy performance. It represents the returns that can be expected from your strategy for each unit of risk incurred. Example: your APPT (also called average risk-to-reward ratio) is 2.0, thus for every unit of currency you invest in a trade, you can on average expect to obtain 2 after the trade. If it is negative, your strategy is losing, even if your win rate is outstanding (it means your winning trades aren’t winning enough, or your losing trades lose too much, or both).
-Profit Factor: Gross of winning trades/Gross of losing trades. The trading strategy is profitable when > 1. Not as useful as the APPT because it doesn’t take into account the win rate and the average win/loss per trade. It is calculated from the total winning/losing results of this particular backtest and has less predictive value than the APPT. A good profit factor together with a poor APPT means you just found a chart where your system outperformed (=> not a good result).
-Win Rate: Percentage of winning trades out of all trades. Taken alone, it's not useful. A trader can have a win rate of 99%, but 1 trade only could ruin him/her because of poor risk management. It can be useful to gauge if the system fits your personality.
-Equity (curr): This the sum of initial capital and the P&L of your system’s trades, including fees and slippage.
Return on Capital is the equivalent of TradingView’s Net Profit figure, i.e. the variation on your initial capital. Maximum drawdown is the maximal drawdown from the highest equity point until the drop.

Request Your Trial

(⬇️ Please click on the banner below ⬇️)

Request your trial for 10 euros only