{"id":212275,"date":"2024-09-29T11:09:55","date_gmt":"2024-09-29T15:09:55","guid":{"rendered":"https:\/\/ibkrcampus.com\/campus\/?p=212275"},"modified":"2024-09-29T11:09:10","modified_gmt":"2024-09-29T15:09:10","slug":"youre-probably-backtesting-wrong","status":"publish","type":"post","link":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/","title":{"rendered":"You&#8217;re Probably Backtesting Wrong"},"content":{"rendered":"\n<p><em>The article &#8220;You&#8217;re Probably Backtesting Wrong&#8221; was originally posted on <a href=\"https:\/\/www.davemabe.com\/youre-probably-backtesting-wrong\/\">Dave Mabe&#8217;s blog<\/a><\/em>.<\/p>\n\n\n\n<p>I\u2019ve worked with a lot of traders over the years, many of whom are quite smart and able to backtest their ideas to generate successful trading strategies. But when I look at their backtesting routine, almost all of them completely ignore the most productive step for creating profitable models with a strong and durable trading edge.<\/p>\n\n\n\n<p>Backtesting this way is like riding a horse compared to walking while not realizing that airplanes exist: you can travel a long way on horseback (even across the entire country, in theory) and you\u2019ll leave mere walkers in the dust. However, if you\u2019re unaware of air travel then you may as well be a sloth who has no idea that he can travel at least 100 times faster by plane.<\/p>\n\n\n\n<p>Here\u2019s a standard backtest workflow that I see traders doing over and over:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Trading strategy idea generation<\/li>\n\n\n\n<li>Code the backtest<\/li>\n\n\n\n<li>Run the backtest<\/li>\n\n\n\n<li>Analyze aggregate metrics and equity curve<\/li>\n\n\n\n<li>Decide to trade it or return to step #1<\/li>\n<\/ol>\n\n\n\n<p>Let\u2019s look at these steps one at a time in detail.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-trading-strategy-idea-generation\">Trading Strategy Idea Generation<\/h2>\n\n\n\n<p>Generating ideas is the hardest part of trading for most since it starts off like a chicken and egg problem: ideas come from experience but to have good ideas you first need to have some experience. With enough practice, though, this becomes the easiest aspect of the whole process. I know some readers will find this hard to believe, but the more you\u2019re able to exercise your \u201ctrading idea muscle,\u201d&nbsp;<strong>the stronger it will be.<\/strong><\/p>\n\n\n\n<p>Because it takes regular practice and hard creative work, this step weeds out a lot of would-be traders.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-code-the-backtest\">Code the Backtest<\/h2>\n\n\n\n<p>For most traders, coding the backtest ranges from difficult to impossible. Even high-level traders who are excellent at coding have a hard time context-switching from trading (or other tasks) back to writing code. This is exacerbated by the fact that running the backtest takes so much time. You can\u2019t stay in a productive coding zone when you get interrupted by a backtest that takes an hour or more to run.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-run-the-backtest\">Run the Backtest<\/h2>\n\n\n\n<p>Depending on the markets and instruments you\u2019re running a backtest on, this part will likely be the most time intensive. If it does NOT take a long time to run, you\u2019re probably not scanning the entire market, thereby missing out on profitable trading opportunities.<\/p>\n\n\n\n<p>If your backtesting platform doesn\u2019t have the ability to scan the entire market, then \u2013 back to my analogy \u2013 you\u2019re on horseback. Better than walking? Yes, and certainly faster than a sloth, but you\u2019re not really in the same game as successful systems traders.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-analyze-aggregate-metrics-and-equity-curve\">Analyze Aggregate Metrics and Equity Curve<\/h2>\n\n\n\n<p>A lot of traders get tangled up here in deciding which aggregate metrics to focus on. There are plenty to choose from and it\u2019s tempting to try to find the \u201cfanciest\u201d one that supersedes all others. Rather than trying to find the perfect single metric, I look at a handful of metrics in this phase. (While important, how I choose my metrics is beyond the scope of this post. I\u2019ll outline my exact process in a forthcoming message to my newsletter.)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-decide-to-trade-it-or-return-to-step-1\">Decide to Trade It Or Return To Step 1<\/h2>\n\n\n\n<p>Using whatever criteria you\u2019ve settled on, you either move forward and trade the strategy as is, or you start the process over at step 1.<\/p>\n\n\n\n<p>Here\u2019s this workflow in visual form \u2013 note that the pink boxes represent particularly time-consuming parts of the process:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"308\" height=\"931\" data-src=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/backtesting-dave-mabe.png\" alt=\"\" class=\"wp-image-212280 lazyload\" data-srcset=\"https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/backtesting-dave-mabe.png 308w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/backtesting-dave-mabe-300x907.png 300w\" data-sizes=\"(max-width: 308px) 100vw, 308px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 308px; aspect-ratio: 308\/931;\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-the-step-you-re-missing\"><br>The Step You\u2019re Missing<\/h2>\n\n\n\n<p>This workflow is\u2026 fine. You\u2019re on horseback competing against walkers. But there\u2019s a very important phase of&nbsp;<em>my<\/em>&nbsp;routine that is completely missing from this workflow. How important is it?<\/p>\n\n\n\n<p>I call this the Filter Phase and I literally spend 95% of my overall backtesting time in this phase. It allows me to reduce the time I spend creating a strategy from&nbsp;<em>days and weeks<\/em>&nbsp;to&nbsp;<em>minutes and hours<\/em>. It\u2019s the reason I\u2019ve been able to create and trade 15+ (and counting) profitable strategies.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-the-filter-phase\">The Filter Phase<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"328\" height=\"1121\" data-src=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/backtesting-dave-mabe-filter.png\" alt=\"\" class=\"wp-image-212281 lazyload\" data-srcset=\"https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/backtesting-dave-mabe-filter.png 328w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/backtesting-dave-mabe-filter-300x1025.png 300w\" data-sizes=\"(max-width: 328px) 100vw, 328px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 328px; aspect-ratio: 328\/1121;\" \/><\/figure>\n\n\n\n<p><br>In order to add this step to your workflow, you\u2019ll need to be able to make a couple of small adjustments to your overall routine. Your backtesting platform&nbsp;<strong>must have the following capabilities<\/strong>, otherwise, you\u2019re stuck on horseback:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Export a trade list from the completed backtest to a CSV file<\/li>\n\n\n\n<li>Add a custom column to each trade in the backtest<\/li>\n<\/ul>\n\n\n\n<p>These features are not available in most backtesting platforms.<\/p>\n\n\n\n<p>Let\u2019s say you have a strategy based on an 8 and 20-period moving average crossover. Or maybe you\u2019ve created a&nbsp;<a href=\"https:\/\/www.davemabe.com\/create-a-profitable-chatgpt-trading-strategy\/\">basic strategy using ChatGPT as I did<\/a>. It works ok, but you want to improve it. You have a theory that, say, volume relative to average volume (a.k.a. Relative Volume) has an effect on the profitability of the strategy.<\/p>\n\n\n\n<p>Most traders at this point will \u201cguess and check\u201d \u2013 that is, pick a number that seems reasonable to them for relative volume and then they\u2019ll code it into the strategy such that the trade set you end up with in the backtest is&nbsp;<strong>a subset of the original<\/strong>. This is a subtle mistake that costs traders a ton of time and resources.<\/p>\n\n\n\n<p>Here\u2019s what you NEED to be able to do in your backtesting platform. Instead of modifying the original strategy, you simply&nbsp;<strong>add a column to the trades<\/strong>&nbsp;that end up in the resulting trade list. When you do this, the number of trades in your backtest DOES NOT change \u2013 you\u2019re only adding additional columns that capture the numerical value of different filters that you MIGHT decide to filter on later on in your process.<\/p>\n\n\n\n<p>For example, let\u2019s say your original backtest produced a trade set like this:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Entry Date<\/strong><\/td><td><strong>Symbol<\/strong><\/td><td><strong>Entry Price<\/strong><\/td><td><strong>Profit<\/strong><\/td><\/tr><tr><td>2023-05-22<\/td><td>MSFT<\/td><td>306.94<\/td><td>100.00<\/td><\/tr><tr><td>2023-05-21<\/td><td>META<\/td><td>231.96<\/td><td>50.00<\/td><\/tr><tr><td>2023-05-20<\/td><td>AAPL<\/td><td>172.78<\/td><td>-75.00<\/td><\/tr><tr><td>2023-05-19<\/td><td>TSLA<\/td><td>170.14<\/td><td>25.00<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>After you add your column, your new backtest looks the same as the original, but with a new column added that corresponds to the filter that you want to examine (see the column called&nbsp;<strong>Relative Volume<\/strong>).<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Entry Date<\/strong><\/td><td><strong>Symbol<\/strong><\/td><td><strong>Entry Price<\/strong><\/td><td><strong>Profit<\/strong><\/td><td><strong>Relative Volume<\/strong><\/td><\/tr><tr><td>2023-05-22<\/td><td>MSFT<\/td><td>306.94<\/td><td>100.00<\/td><td>1.50<\/td><\/tr><tr><td>2023-05-21<\/td><td>META<\/td><td>231.96<\/td><td>50.00<\/td><td>0.47<\/td><\/tr><tr><td>2023-05-20<\/td><td>AAPL<\/td><td>172.78<\/td><td>-75.00<\/td><td>2.55<\/td><\/tr><tr><td>2023-05-19<\/td><td>TSLA<\/td><td>170.14<\/td><td>25.00<\/td><td>0.24<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>The important thing to note here is that&nbsp;<strong>you\u2019re still including all the original trades<\/strong>&nbsp;even when you\u2019re confident you\u2019ll be filtering some of them out when you eventually go live with the strategy. It\u2019s not at all important to remove them from the trade list in the coding phase. When you have a Filter Phase in your backtest workflow it\u2019s a piece of cake to remove them in this step.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-ok-so-what-s-the-big-deal\">OK, So What\u2019s the Big Deal?<\/h2>\n\n\n\n<p>So you\u2019ve got some extra columns in your backtest. How does that help?<\/p>\n\n\n\n<p>Because you have the entire range of values for Relative Volume in your trade set, you can determine the optimal filter value&nbsp;<strong>without<\/strong>&nbsp;having to run a bunch of time-consuming backtests to find your answer. You\u2019ve gone from a brute force \u201cguess and check\u201d with at least hours between the guesses to learning and iterating on the knowledge you\u2019ve gained in seconds.<\/p>\n\n\n\n<p>The effect on your workflow is MASSIVE. This allows you to reduce the number of times you have to code and run a very time-consuming backtest from oftentimes several dozen to just\u2026&nbsp;<strong>one time<\/strong>. What once took days and weeks in backtesting, can now be accomplished in minutes and hours.<\/p>\n\n\n\n<p>As you can imagine, this opens up entire worlds of trading strategies to test (and learn from!) really, really quickly.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1100\" height=\"953\" data-src=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/with_versus_without_filter_phase-dave-mabe-1100x953.png\" alt=\"\" class=\"wp-image-212292 lazyload\" data-srcset=\"https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/with_versus_without_filter_phase-dave-mabe-1100x953.png 1100w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/with_versus_without_filter_phase-dave-mabe-700x606.png 700w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/with_versus_without_filter_phase-dave-mabe-300x260.png 300w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/with_versus_without_filter_phase-dave-mabe-768x665.png 768w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/09\/with_versus_without_filter_phase-dave-mabe.png 1307w\" data-sizes=\"(max-width: 1100px) 100vw, 1100px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1100px; aspect-ratio: 1100\/953;\" \/><\/figure>\n\n\n\n<p><br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-rapid-continuous-learning\">Rapid, Continuous Learning<\/h2>\n\n\n\n<p>When you add the Filter Phase to your routine, you\u2019ll get better and better at efficiently learning what makes a trading strategy tick. It allows you to go from answering a very simple question:<\/p>\n\n\n\n<p><strong>Should I trade this strategy? Yes or no?<\/strong><\/p>\n\n\n\n<p>to a much more powerful and profitable question:<\/p>\n\n\n\n<p><strong>Under what circumstances should I trade this strategy with full size?<\/strong><\/p>\n\n\n\n<p>To answer that question, you must thoroughly understand your trading system. If you\u2019re not using some form of the Filter Phase in your backtesting workflow, you\u2019re riding horseback in a world of airplanes.<\/p>\n\n\n\n<p>***<\/p>\n\n\n\n<p>To learn more about how you can use this concept to create your own trading strategies, <a href=\"https:\/\/www.davemabe.com\/youre-probably-backtesting-wrong\/\">sign up<\/a> for my free newsletter where I regularly share my techniques for doing so.<\/p>\n\n\n\n<p><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Generating ideas is the hardest part of trading for most since it starts off like a chicken and egg problem: ideas come from experience but to have good ideas you first need to have some experience. <\/p>\n","protected":false},"author":1519,"featured_media":169647,"comment_status":"open","ping_status":"closed","sticky":true,"template":"","format":"standard","meta":{"_acf_changed":true,"footnotes":""},"categories":[339,338,341],"tags":[851,4873],"contributors-categories":[17815],"class_list":{"0":"post-212275","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-data-science","8":"category-ibkr-quant-news","9":"category-quant-development","10":"tag-algo-trading","11":"tag-backtesting","12":"contributors-categories-dave-mabe"},"pp_statuses_selecting_workflow":false,"pp_workflow_action":"current","pp_status_selection":"publish","acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>You&#8217;re Probably Backtesting Wrong | IBKR Quant<\/title>\n<meta name=\"description\" content=\"Generating ideas is the hardest part of trading for most since it starts off like a chicken and egg problem: ideas come from experience but to have good...\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.interactivebrokers.com\/campus\/wp-json\/wp\/v2\/posts\/212275\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"You\u2019re Probably Backtesting Wrong\" \/>\n<meta property=\"og:description\" content=\"Generating ideas is the hardest part of trading for most since it starts off like a chicken and egg problem: ideas come from experience but to have good ideas you first need to have some experience.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/\" \/>\n<meta property=\"og:site_name\" content=\"IBKR Campus US\" \/>\n<meta property=\"article:published_time\" content=\"2024-09-29T15:09:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2022\/11\/backtesting_ai_webinar-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"563\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Dave Mabe\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Dave Mabe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\n\t    \"@context\": \"https:\\\/\\\/schema.org\",\n\t    \"@graph\": [\n\t        {\n\t            \"@type\": \"NewsArticle\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/#article\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/\"\n\t            },\n\t            \"author\": {\n\t                \"name\": \"Dave Mabe\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/32bd5f8e604d58d28bef196e19c7fa77\"\n\t            },\n\t            \"headline\": \"You&#8217;re Probably Backtesting Wrong\",\n\t            \"datePublished\": \"2024-09-29T15:09:55+00:00\",\n\t            \"mainEntityOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/\"\n\t            },\n\t            \"wordCount\": 1441,\n\t            \"commentCount\": 1,\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/11\\\/backtesting_ai_webinar-1.jpg\",\n\t            \"keywords\": [\n\t                \"Algo Trading\",\n\t                \"backtesting\"\n\t            ],\n\t            \"articleSection\": [\n\t                \"Data Science\",\n\t                \"Quant\",\n\t                \"Quant Development\"\n\t            ],\n\t            \"inLanguage\": \"en-US\",\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"CommentAction\",\n\t                    \"name\": \"Comment\",\n\t                    \"target\": [\n\t                        \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/#respond\"\n\t                    ]\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"WebPage\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/\",\n\t            \"name\": \"You're Probably Backtesting Wrong | IBKR Campus US\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\"\n\t            },\n\t            \"primaryImageOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/#primaryimage\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/11\\\/backtesting_ai_webinar-1.jpg\",\n\t            \"datePublished\": \"2024-09-29T15:09:55+00:00\",\n\t            \"description\": \"Generating ideas is the hardest part of trading for most since it starts off like a chicken and egg problem: ideas come from experience but to have good ideas you first need to have some experience.\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"ReadAction\",\n\t                    \"target\": [\n\t                        \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/\"\n\t                    ]\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"ImageObject\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/youre-probably-backtesting-wrong\\\/#primaryimage\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/11\\\/backtesting_ai_webinar-1.jpg\",\n\t            \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/11\\\/backtesting_ai_webinar-1.jpg\",\n\t            \"width\": 1000,\n\t            \"height\": 563,\n\t            \"caption\": \"Applying a Strategy or Model to Historical Data to Determine its Accuracy\"\n\t        },\n\t        {\n\t            \"@type\": \"WebSite\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/\",\n\t            \"name\": \"IBKR Campus US\",\n\t            \"description\": \"Financial Education from Interactive Brokers\",\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"SearchAction\",\n\t                    \"target\": {\n\t                        \"@type\": \"EntryPoint\",\n\t                        \"urlTemplate\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/?s={search_term_string}\"\n\t                    },\n\t                    \"query-input\": {\n\t                        \"@type\": \"PropertyValueSpecification\",\n\t                        \"valueRequired\": true,\n\t                        \"valueName\": \"search_term_string\"\n\t                    }\n\t                }\n\t            ],\n\t            \"inLanguage\": \"en-US\"\n\t        },\n\t        {\n\t            \"@type\": \"Organization\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\",\n\t            \"name\": \"Interactive Brokers\",\n\t            \"alternateName\": \"IBKR\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/\",\n\t            \"logo\": {\n\t                \"@type\": \"ImageObject\",\n\t                \"inLanguage\": \"en-US\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/logo\\\/image\\\/\",\n\t                \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2024\\\/05\\\/ibkr-campus-logo.jpg\",\n\t                \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2024\\\/05\\\/ibkr-campus-logo.jpg\",\n\t                \"width\": 669,\n\t                \"height\": 669,\n\t                \"caption\": \"Interactive Brokers\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/logo\\\/image\\\/\"\n\t            },\n\t            \"publishingPrinciples\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/about-ibkr-campus\\\/\",\n\t            \"ethicsPolicy\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/cyber-security-notice\\\/\"\n\t        },\n\t        {\n\t            \"@type\": \"Person\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/32bd5f8e604d58d28bef196e19c7fa77\",\n\t            \"name\": \"Dave Mabe\",\n\t            \"description\": \"Dave\u2019s background as a computer engineer and CTO for Trade-Ideas enabled him to design innovative algorithms for rules-based trading systems and process improvement. He trades 25+ trading models created using his unique backtesting framework. He has a free email newsletter on backtesting and strategy creation https:\\\/\\\/www.davemabe.com\\\/\u00a0and hosts the Line Your Own Pockets podcast https:\\\/\\\/www.lineyourownpockets.com\\\/\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/author\\\/davemabe\\\/\"\n\t        }\n\t    ]\n\t}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"You&#8217;re Probably Backtesting Wrong | IBKR Quant","description":"Generating ideas is the hardest part of trading for most since it starts off like a chicken and egg problem: ideas come from experience but to have good...","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.interactivebrokers.com\/campus\/wp-json\/wp\/v2\/posts\/212275\/","og_locale":"en_US","og_type":"article","og_title":"You\u2019re Probably Backtesting Wrong","og_description":"Generating ideas is the hardest part of trading for most since it starts off like a chicken and egg problem: ideas come from experience but to have good ideas you first need to have some experience.","og_url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/","og_site_name":"IBKR Campus US","article_published_time":"2024-09-29T15:09:55+00:00","og_image":[{"width":1000,"height":563,"url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2022\/11\/backtesting_ai_webinar-1.jpg","type":"image\/jpeg"}],"author":"Dave Mabe","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Dave Mabe","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/#article","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/"},"author":{"name":"Dave Mabe","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/32bd5f8e604d58d28bef196e19c7fa77"},"headline":"You&#8217;re Probably Backtesting Wrong","datePublished":"2024-09-29T15:09:55+00:00","mainEntityOfPage":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/"},"wordCount":1441,"commentCount":1,"publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2022\/11\/backtesting_ai_webinar-1.jpg","keywords":["Algo Trading","backtesting"],"articleSection":["Data Science","Quant","Quant Development"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/","url":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/","name":"You're Probably Backtesting Wrong | IBKR Campus US","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/#primaryimage"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2022\/11\/backtesting_ai_webinar-1.jpg","datePublished":"2024-09-29T15:09:55+00:00","description":"Generating ideas is the hardest part of trading for most since it starts off like a chicken and egg problem: ideas come from experience but to have good ideas you first need to have some experience.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/youre-probably-backtesting-wrong\/#primaryimage","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2022\/11\/backtesting_ai_webinar-1.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2022\/11\/backtesting_ai_webinar-1.jpg","width":1000,"height":563,"caption":"Applying a Strategy or Model to Historical Data to Determine its Accuracy"},{"@type":"WebSite","@id":"https:\/\/ibkrcampus.com\/campus\/#website","url":"https:\/\/ibkrcampus.com\/campus\/","name":"IBKR Campus US","description":"Financial Education from Interactive Brokers","publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ibkrcampus.com\/campus\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/ibkrcampus.com\/campus\/#organization","name":"Interactive Brokers","alternateName":"IBKR","url":"https:\/\/ibkrcampus.com\/campus\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/logo\/image\/","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/05\/ibkr-campus-logo.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/05\/ibkr-campus-logo.jpg","width":669,"height":669,"caption":"Interactive Brokers"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/logo\/image\/"},"publishingPrinciples":"https:\/\/www.interactivebrokers.com\/campus\/about-ibkr-campus\/","ethicsPolicy":"https:\/\/www.interactivebrokers.com\/campus\/cyber-security-notice\/"},{"@type":"Person","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/32bd5f8e604d58d28bef196e19c7fa77","name":"Dave Mabe","description":"Dave\u2019s background as a computer engineer and CTO for Trade-Ideas enabled him to design innovative algorithms for rules-based trading systems and process improvement. He trades 25+ trading models created using his unique backtesting framework. He has a free email newsletter on backtesting and strategy creation https:\/\/www.davemabe.com\/\u00a0and hosts the Line Your Own Pockets podcast https:\/\/www.lineyourownpockets.com\/","url":"https:\/\/www.interactivebrokers.com\/campus\/author\/davemabe\/"}]}},"jetpack_featured_media_url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2022\/11\/backtesting_ai_webinar-1.jpg","_links":{"self":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/212275","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/users\/1519"}],"replies":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/comments?post=212275"}],"version-history":[{"count":0,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/212275\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media\/169647"}],"wp:attachment":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media?parent=212275"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/categories?post=212275"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/tags?post=212275"},{"taxonomy":"contributors-categories","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/contributors-categories?post=212275"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}