Run Backtest simulates a strategy against historical price data so you can
see how it would have performed before you ever run it live.
Strategy
Pick a Strategy and, optionally, a specific Version — leave the
version on its default and it uses whichever version is currently marked
ACTIVE (see Versions). The rest of the page
is there from the start. Only the strategy’s own parameter fields further down
stay empty until you pick a strategy, because they’re specific to each one.
Data
Source — where the price history comes from: the app’s own database
(covering crypto, stocks, forex, and commodities), a live pull from Binance
for crypto, or a live pull from Yahoo Finance for stocks and forex.
When using the database, a DB Source filter narrows the symbol picker to
one market group (commodities, crypto futures, forex, or one of the listed
stock indexes) or leaves it open to all of them.
Symbol and Timeframe.
Period — either a rolling number of days back from today, or a fixed
date range.
Engine & Parameters
A Heikin-Ashi toggle switches the candles the strategy sees to
Heikin-Ashi instead of regular candles. Below it, the strategy’s own
parameter fields appear — these are defined by the strategy’s Pine Script
code, so they differ from strategy to strategy.
Exit Method
Choose how open trades exit during the simulation:
Standard — a fixed take-profit and stop-loss, each entered as a
percentage of the entry price in the Bracket Order section. The trade
closes when price reaches either one.
Pro Exit — the Stop Loss section, the Take Profit section
and the Pro Exit Modules box on this form, or an Execution
Policy picked from a dropdown. See
Exit Rules for what the stop-loss and
take-profit choices do. Picking a saved policy makes the backtest simulate
that policy’s exit rules; leaving it on “None” keeps the fields on this form
in charge, same as before.
The Bracket Order section shows only under Standard. With Pro Exit it is
hidden, and the stop-loss and take-profit come from the Pro Exit fields or the
policy instead.Under Pro Exit, a Reverse Signal Behavior setting sits above the Pro
Exit Modules box, with the same two choices as on the policy form: Close
and flip or Keep the position. The backtest follows whichever you pick.
With Keep the position, a trade stays open through opposite signals and
ends only through its stop, its take profit or another exit rule. With Close
and flip, an opposite signal closes the trade and opens the other side.
Picking a saved policy fills the setting in from the policy and locks it.
Standard has no such setting and always closes and flips. See Exit
Rules.Every simulated trade is charged a trading cost: an allowance for the spread
you cross on the way in and out, plus a commission. The cost is chosen from the
symbol’s market, because a crypto perpetual, a currency pair, a share and a
futures contract do not cost the same to trade. The Breakdown panel under
the result names the market it used and the total cost of opening and closing
one position, so a result always states what it assumed.This matters most when your stop sits close to your entry: there, the cost of
trading is a large share of what a losing trade loses, and a strategy can look
worse than it is if the cost does not fit the market.Under Pro Exit the backtest applies the modules you tick. Heikin Ashi
Reversal Close closes trades, and Time-based Stop Loss Tightening
tightens stops, as they do on a live bot. Trailing and Chandelier stops are
tested at the start of each candle, at the level earlier candles set, and only
then moved for the next candle. A candle that opens beyond the stop exits at its
opening price, not at the stop price. Trade times are recorded in UTC; see
Reading the Results.Some rules are not simulated: Wait Before Entering and Skip Spike-and-Fade
Signals. When your policy turns one on, a notice
above the results, Some rules in this policy were not simulated, lists it
and says a live run can differ. A saved run keeps the result it had when it was
calculated; to see a setup under the current rules, run it again.A backtest simulates your exit rules, and a simulation can differ from live
trading, so read the result as a guide rather than a guarantee.
Capital & Leverage
Set the initial capital for the simulation, the leverage, and what percentage
of capital each position uses. These only affect the dollar figures in the
result; they don’t change which trades the strategy takes.
Running it
Run Backtest requires a symbol — without one, the run is refused rather
than started against nothing. A Debug Events checkbox next to the button
adds a detailed per-event log to the run for closer inspection afterwards.Once it finishes, see Reading the Results
for what the output means. Every run is also saved and shows up on
History.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Vole.bot Help Center","colors":{"primary":"#16A34A","light":"#07C983","dark":"#15803D"},"logo":{"light":"https://mintcdn.com/vole-bot/Qa_dWn7HRAh1bTCc/images/volebot_logo_w.svg?fit=max\u0026auto=format\u0026n=Qa_dWn7HRAh1bTCc\u0026q=85\u0026s=6b95699704e58cad53ed35ddee2320dd","dark":"https://mintcdn.com/vole-bot/Qa_dWn7HRAh1bTCc/images/volebot_logo.svg?fit=max\u0026auto=format\u0026n=Qa_dWn7HRAh1bTCc\u0026q=85\u0026s=29bdcd1aad6d18e5a6b60e574a13e3dd"},"favicon":"https://mintcdn.com/vole-bot/syb4ZHPu-Ff-StC8/favicon.svg?fit=max\u0026auto=format\u0026n=syb4ZHPu-Ff-StC8\u0026q=85\u0026s=51a2c624a32042fba556f85bdd6fe007","contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"vole-bot","hasAudioNarration":false,"actualSubdomain":"vole-bot","customDomains":["help.vole.bot"],"gitSource":{"type":"github","owner":"bulentpartal","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"}},"buildId":"6ad88df02a28a0c748461e29","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"Execution Rules","count":15},{"language":"default","tag":"Pro Exit modules","count":7},{"language":"default","tag":"Trading Bot","count":7},{"language":"default","tag":"Analytics","count":5},{"language":"default","tag":"Account \u0026 Security","count":4},{"language":"default","tag":"Backtest","count":4},{"language":"default","tag":"Getting Started","count":4},{"language":"default","tag":"Strategy Manager","count":3},{"language":"default","tag":"Indicators","count":2},{"language":"default","tag":"Signal Bot","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"en/backtest/run-backtest","slug":"/en/backtest/run-backtest","pageMetadata":{"title":"Run Backtest","description":null,"href":"/en/backtest/run-backtest"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,em:`em`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Note}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);return _jsxs(_Fragment,{children:[_jsx(Note,{children:`This screen is part of the Vole Bot package.`}),`\n`,_jsx(_components.p,{children:`Run Backtest simulates a strategy against historical price data so you can\nsee how it would have performed before you ever run it live.`}),`\n`,_jsx(Heading,{level:`2`,id:`strategy`,children:`Strategy`}),`\n`,_jsxs(_components.p,{children:[`Pick a `,_jsx(_components.strong,{children:`Strategy`}),` and, optionally, a specific `,_jsx(_components.strong,{children:`Version`}),` — leave the\nversion on its default and it uses whichever version is currently marked\nACTIVE (see `,_jsx(_components.a,{href:`/en/strategy-manager/versions`,children:`Versions`}),`). The rest of the page\nis there from the start. Only the strategy’s own parameter fields further down\nstay empty until you pick a strategy, because they’re specific to each one.`]}),`\n`,_jsx(Heading,{level:`2`,id:`data`,children:`Data`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Source`}),` — where the price history comes from: the app’s own database\n(covering crypto, stocks, forex, and commodities), a live pull from Binance\nfor crypto, or a live pull from Yahoo Finance for stocks and forex.`]}),`\n`,_jsxs(_components.li,{children:[`When using the database, a `,_jsx(_components.strong,{children:`DB Source`}),` filter narrows the symbol picker to\none market group (commodities, crypto futures, forex, or one of the listed\nstock indexes) or leaves it open to all of them.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Symbol`}),` and `,_jsx(_components.strong,{children:`Timeframe`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Period`}),` — either a rolling number of days back from today, or a fixed\ndate range.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`engine-\u0026-parameters`,children:`Engine \u0026 Parameters`}),`\n`,_jsxs(_components.p,{children:[`A `,_jsx(_components.strong,{children:`Heikin-Ashi`}),` toggle switches the candles the strategy sees to\nHeikin-Ashi instead of regular candles. Below it, the strategy’s own\nparameter fields appear — these are defined by the strategy’s Pine Script\ncode, so they differ from strategy to strategy.`]}),`\n`,_jsx(Heading,{level:`2`,id:`exit-method`,children:`Exit Method`}),`\n`,_jsx(_components.p,{children:`Choose how open trades exit during the simulation:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Standard`}),` — a fixed take-profit and stop-loss, each entered as a\npercentage of the entry price in the `,_jsx(_components.strong,{children:`Bracket Order`}),` section. The trade\ncloses when price reaches either one.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Pro Exit`}),` — the `,_jsx(_components.strong,{children:`Stop Loss`}),` section, the `,_jsx(_components.strong,{children:`Take Profit`}),` section\nand the `,_jsx(_components.strong,{children:`Pro Exit Modules`}),` box on this form, or an `,_jsx(_components.a,{href:`/en/execution-rules/execution-policies`,children:`Execution\nPolicy`}),` picked from a dropdown. See\n`,_jsx(_components.a,{href:`/en/execution-rules/exit-rules`,children:`Exit Rules`}),` for what the stop-loss and\ntake-profit choices do. Picking a saved policy makes the backtest simulate\nthat policy’s exit rules; leaving it on “None” keeps the fields on this form\nin charge, same as before.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Bracket Order`}),` section shows only under Standard. With Pro Exit it is\nhidden, and the stop-loss and take-profit come from the Pro Exit fields or the\npolicy instead.`]}),`\n`,_jsxs(_components.p,{children:[`Under Pro Exit, a `,_jsx(_components.strong,{children:`Reverse Signal Behavior`}),` setting sits above the `,_jsx(_components.strong,{children:`Pro\nExit Modules`}),` box, with the same two choices as on the policy form: `,_jsx(_components.strong,{children:`Close\nand flip`}),` or `,_jsx(_components.strong,{children:`Keep the position`}),`. The backtest follows whichever you pick.\nWith `,_jsx(_components.strong,{children:`Keep the position`}),`, a trade stays open through opposite signals and\nends only through its stop, its take profit or another exit rule. With `,_jsx(_components.strong,{children:`Close\nand flip`}),`, an opposite signal closes the trade and opens the other side.\nPicking a saved policy fills the setting in from the policy and locks it.\nStandard has no such setting and always closes and flips. See `,_jsx(_components.a,{href:`/en/execution-rules/exit-rules`,children:`Exit\nRules`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Every simulated trade is charged a trading cost: an allowance for the spread\nyou cross on the way in and out, plus a commission. The cost is chosen from the\nsymbol’s market, because a crypto perpetual, a currency pair, a share and a\nfutures contract do not cost the same to trade. The `,_jsx(_components.strong,{children:`Breakdown`}),` panel under\nthe result names the market it used and the total cost of opening and closing\none position, so a result always states what it assumed.`]}),`\n`,_jsx(_components.p,{children:`This matters most when your stop sits close to your entry: there, the cost of\ntrading is a large share of what a losing trade loses, and a strategy can look\nworse than it is if the cost does not fit the market.`}),`\n`,_jsxs(_components.p,{children:[`Under Pro Exit the backtest applies the modules you tick. `,_jsx(_components.strong,{children:`Heikin Ashi\nReversal Close`}),` closes trades, and `,_jsx(_components.strong,{children:`Time-based Stop Loss Tightening`}),`\ntightens stops, as they do on a live bot. Trailing and Chandelier stops are\ntested at the start of each candle, at the level earlier candles set, and only\nthen moved for the next candle. A candle that opens beyond the stop exits at its\nopening price, not at the stop price. Trade times are recorded in UTC; see\n`,_jsx(_components.a,{href:`/en/backtest/reading-the-results`,children:`Reading the Results`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Some rules are not simulated: `,_jsx(_components.strong,{children:`Wait Before Entering`}),` and `,_jsx(_components.strong,{children:`Skip Spike-and-Fade\nSignals`}),`. When your policy turns one on, a notice\nabove the results, `,_jsx(_components.em,{children:`Some rules in this policy were not simulated`}),`, lists it\nand says a live run can differ. A saved run keeps the result it had when it was\ncalculated; to see a setup under the current rules, run it again.`]}),`\n`,_jsx(_components.p,{children:`A backtest simulates your exit rules, and a simulation can differ from live\ntrading, so read the result as a guide rather than a guarantee.`}),`\n`,_jsx(Heading,{level:`2`,id:`capital-\u0026-leverage`,children:`Capital \u0026 Leverage`}),`\n`,_jsx(_components.p,{children:`Set the initial capital for the simulation, the leverage, and what percentage\nof capital each position uses. These only affect the dollar figures in the\nresult; they don’t change which trades the strategy takes.`}),`\n`,_jsx(Heading,{level:`2`,id:`running-it`,children:`Running it`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Run Backtest`}),` requires a symbol — without one, the run is refused rather\nthan started against nothing. A `,_jsx(_components.strong,{children:`Debug Events`}),` checkbox next to the button\nadds a detailed per-event log to the run for closer inspection afterwards.`]}),`\n`,_jsxs(_components.p,{children:[`Once it finishes, see `,_jsx(_components.a,{href:`/en/backtest/reading-the-results`,children:`Reading the Results`}),`\nfor what the output means. Every run is also saved and shows up on\n`,_jsx(_components.a,{href:`/en/backtest/history`,children:`History`}),`.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Run Backtest","description":null,"href":"/en/backtest/run-backtest"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Strategy","slug":"strategy","depth":2,"children":[]},{"title":"Data","slug":"data","depth":2,"children":[]},{"title":"Engine \u0026 Parameters","slug":"engine-\u0026-parameters","depth":2,"children":[]},{"title":"Exit Method","slug":"exit-method","depth":2,"children":[]},{"title":"Capital \u0026 Leverage","slug":"capital-\u0026-leverage","depth":2,"children":[]},{"title":"Running it","slug":"running-it","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"vole-bot","siteName":"Vole.bot Help Center","title":"Run Backtest - Vole.bot Help Center","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-14T21:10:08.448Z","originalFileLocation":"en/backtest/run-backtest.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"Vole.bot Help Center\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Run Backtest - Vole.bot Help Center\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Vole.bot Help Center\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://help.vole.bot/en/backtest/run-backtest\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://vole-bot.mintlify.site/_mintlify/api/og/v2?division=Backtest\u0026amp;title=Run+Backtest\u0026amp;theme=5b2caf5e8adfbd49d8bb66d1\u0026amp;signature=8a9bdc121c5a67ff3671aa40aa86160d6caaacdd9d6492d11c2eed43eb1ad50f\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Run Backtest - Vole.bot Help Center\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://vole-bot.mintlify.site/_mintlify/api/og/v2?division=Backtest\u0026amp;title=Run+Backtest\u0026amp;theme=5b2caf5e8adfbd49d8bb66d1\u0026amp;signature=8a9bdc121c5a67ff3671aa40aa86160d6caaacdd9d6492d11c2eed43eb1ad50f\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/vole-bot/2Ots7zFE-gcT8yJb/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Vole.bot Help Center\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#16A34A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://help.vole.bot/en/backtest/run-backtest\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/en/backtest/run-backtest.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://help.vole.bot/#organization\",\"name\":\"Vole.bot Help Center\",\"url\":\"https://help.vole.bot\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/vole-bot/Qa_dWn7HRAh1bTCc/images/volebot_logo_w.svg?fit=max\u0026auto=format\u0026n=Qa_dWn7HRAh1bTCc\u0026q=85\u0026s=6b95699704e58cad53ed35ddee2320dd\"}},{\"@type\":\"WebSite\",\"@id\":\"https://help.vole.bot#website\",\"name\":\"Vole.bot Help Center\",\"url\":\"https://help.vole.bot\",\"publisher\":{\"@id\":\"https://help.vole.bot/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://help.vole.bot/en/backtest/run-backtest#webpage\",\"url\":\"https://help.vole.bot/en/backtest/run-backtest\",\"name\":\"Run Backtest\",\"dateModified\":\"2026-10-14T21:10:08.448Z\",\"isPartOf\":{\"@id\":\"https://help.vole.bot#website\"},\"breadcrumb\":{\"@id\":\"https://help.vole.bot/en/backtest/run-backtest#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://help.vole.bot/en/backtest/run-backtest#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Vole.bot Help Center\",\"item\":\"https://help.vole.bot\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Run Backtest\",\"item\":\"https://help.vole.bot/en/backtest/run-backtest\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://help.vole.bot/en/backtest/run-backtest#article\",\"headline\":\"Run Backtest\",\"name\":\"Run Backtest\",\"url\":\"https://help.vole.bot/en/backtest/run-backtest\",\"mainEntityOfPage\":{\"@id\":\"https://help.vole.bot/en/backtest/run-backtest#webpage\"},\"dateModified\":\"2026-10-14T21:10:08.448Z\",\"publisher\":{\"@id\":\"https://help.vole.bot/#organization\"},\"isPartOf\":{\"@id\":\"https://help.vole.bot#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Vole.bot Help Center\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Vole.bot Help Center\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/en/backtest/run-backtest.md","siteName":"Vole.bot Help Center","nav":{"global":null,"pages":[{"group":"Getting Started","pages":[{"title":"What is Vole Bot","href":"/en/getting-started/what-is-vole-bot"},{"title":"Set Up Your Account","href":"/en/getting-started/set-up-your-account"},{"title":"Get to Know the Dashboard","href":"/en/getting-started/get-to-know-the-dashboard"},{"title":"Why Can't I See Some Screens","href":"/en/getting-started/why-cant-i-see-some-screens"}]},{"group":"Account \u0026 Security","pages":[{"title":"My Account","href":"/en/account-security/my-account"},{"title":"Profile","href":"/en/account-security/profile"},{"title":"Forgot Your Password","href":"/en/account-security/forgot-your-password"},{"title":"Appearance","href":"/en/account-security/appearance"}]},{"group":"Indicators","pages":[{"title":"Indicators","href":"/en/indicators/indicators"},{"title":"Connect TradingView","href":"/en/indicators/connect-tradingview"}]},{"group":"Strategy Manager","pages":[{"title":"Strategy Manager","href":"/en/strategy-manager/strategy-manager"},{"title":"Versions","href":"/en/strategy-manager/versions"},{"title":"Strategy Detail","description":null,"href":"/en/strategy-manager/strategy-detail"}]},{"group":"Backtest","pages":[{"title":"Run Backtest","href":"/en/backtest/run-backtest"},{"title":"Reading the Results","description":null,"href":"/en/backtest/reading-the-results"},{"title":"History","href":"/en/backtest/history"},{"title":"Debug","href":"/en/backtest/debug"}]},{"group":"Trading Bot","pages":[{"title":"Instances","href":"/en/trading-bot/instances"},{"title":"Instance Detail","href":"/en/trading-bot/instance-detail"},{"title":"Positions","href":"/en/trading-bot/positions"},{"title":"Trade History","href":"/en/trading-bot/trade-history"},{"title":"Strategy Report","href":"/en/trading-bot/strategy-report"},{"title":"Account","href":"/en/trading-bot/account"},{"title":"Bot Settings","href":"/en/trading-bot/bot-settings"}]},{"group":"Execution Rules","pages":[{"title":"Execution Policies","href":"/en/execution-rules/execution-policies"},{"title":"Pro Exit Catalog","href":"/en/execution-rules/pro-exit-catalog"},{"group":"Pro Exit modules","pages":[{"title":"Heikin Ashi Reversal Close","href":"/en/execution-rules/pro-exit-modules/heikin-ashi-reversal-close"},{"title":"Time-based Stop Loss Tightening","href":"/en/execution-rules/pro-exit-modules/time-based-stop-loss-tightening"},{"title":"Close on a Trend Reversal","href":"/en/execution-rules/pro-exit-modules/close-on-a-trend-reversal"},{"title":"Close When the Signal Goes Neutral","href":"/en/execution-rules/pro-exit-modules/close-when-the-signal-goes-neutral"},{"title":"Close on Reverse Signal","href":"/en/execution-rules/pro-exit-modules/close-on-reverse-signal"},{"title":"Volume Spike Rule","href":"/en/execution-rules/pro-exit-modules/volume-spike-rule"},{"title":"Skip Spike-and-Fade Signals","href":"/en/execution-rules/pro-exit-modules/skip-spike-and-fade-signals"}]},{"title":"Exit Rules","href":"/en/execution-rules/exit-rules"},{"title":"Entry Monitor","href":"/en/execution-rules/entry-monitor"},{"title":"Edge Rule Center","href":"/en/execution-rules/edge-rule-center"},{"title":"Edge Rule Review","href":"/en/execution-rules/edge-rule-review"},{"title":"Edge Lab","href":"/en/execution-rules/edge-lab"},{"title":"Edge Pattern Cards","href":"/en/execution-rules/edge-pattern-cards"}]},{"group":"Analytics","pages":[{"title":"Chart Lab","href":"/en/analytics/chart-lab"},{"title":"What-If","href":"/en/analytics/what-if"},{"title":"Trade Performance","href":"/en/analytics/trade-performance"},{"title":"Market Lens","href":"/en/analytics/market-lens"},{"title":"Deep Analytics","href":"/en/analytics/deep-analytics"}]},{"group":"Signal Bot","pages":[{"title":"Signal Strategies","href":"/en/signal-bot/signal-strategies"},{"title":"Signals","href":"/en/signal-bot/signals"}]},{"group":"Troubleshooting","pages":[{"title":"Common Issues","href":"/en/troubleshooting/common-issues"},{"title":"My Bot Isn't Opening Trades","href":"/en/troubleshooting/bot-not-opening-trades"}]}]},"basePath":"","title":"Run Backtest - Vole.bot Help Center","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}