# Backtesting

Backtesting is the general method for evaluating a trading strategy, how well it would have done in the past. Backtesting assesses the viability of a trading strategy (the bot's settings) using historical data to run through the strategy, and generating the results as if the strategy was to be deployed in that time frame. It provides a measure of confidence to employ the same strategy going forward. But bear in mind a good historical performance is not an indicator of the future.

{% hint style="info" %}
A good backtest result does NOT guarantee good future performance
{% endhint %}

### Time Frame

Backtesting can be usually done in 6 different time frames, 1 Day, 1 Week, 1 Month, 3 Months, 6 Months, 1 Year. Longer time frame can weed out market noises over a period of time while shorter time frames can evaluate current prevailing  trends. It is good practice to draw conclusions from backtesting multiple time frames for each bot.

Backtest can only be done within the selected Time Frame from the day the Bot is created and going backwards in time. CFDHero supports custom date and time setting for Backtesting for users on our Professional Plan.

### Data Source

CFDHero uses live candlestick data pulled from their respective brokerages. Trade signals are evaluated with each candlestick's open value, determined by the frequency. Choosing a longer time frame with higher frequency (e.g. 15 minute) might take a longer time for CFDHero to evaluate the data as more candlesticks are involved.

| Candles Per Frequency / Time Frame | 1D  | 4H   | 1H   | 15M   |
| ---------------------------------- | --- | ---- | ---- | ----- |
| **1 Day**                          | 1   | 6    | 24   | 96    |
| **1 Week**                         | 7   | 42   | 168  | 672   |
| **1 Month**                        | 30  | 180  | 720  | 2880  |
| **3 Months**                       | 91  | 546  | 2184 | 8736  |
| **6 Months**                       | 182 | 1092 | 4368 | 17472 |
| **1 Year**                         | 364 | 2182 | 8728 | 34912 |

Note: Newly listed CFD instruments might not have enough data going back in time.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cfdhero.com/getting-started/backtesting.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
