Building Trading Systems

Building profitable trading systems is possible, but difficult. We're here to help you!

​It's true. Building a profitable trading system is very difficult. I'm not going to sugarcoat it. It's a difficult project where most of your ideas will not work. To make matters worse, you're bombarded with misleading advertising, confusing claims, and simply bad information.

Learning a computer language to build a system is great, but that's not enough to build a successful system. Combining a few technical indicators with a buy order and adding trailing stops are not going to make you a profitable trading system. You are going to need an organized approach and perform specific steps to create a successful trading system. Often, this information is difficult to locate as most information on the web is geared towards outrageous get-rich-quick promises, equity curves that promise a smooth ride to weekly income and high pressure sales. In short, within the field of system development there exists a lot of noise, hype and misinformation that can take you astray.

So, how do you create a successful trading system? First, be sure you understand the basics. If you're new at system development or if you're not trading and making money at system trading, you're most likely a newbie. I would suggest you head over to, Getting Started Page, to review the material and jump start your journey to success. You need a solid foundation to build upon!

If you've read all the material on, Getting Started Page, you should have a good idea of what needs to be done. In this section we cover more topics in detail. Some of those topics include proper optimization and avoiding cure fitting. Others include testing techniques, ways to avoid whipsaws, position sizing, how to access multiple time frames and how to combine different systems into one strategy. 

Quick Guides on Building Profitable Systems!

Avoiding Curve Fitting and Proper Optimization

One way to help avoid curve fitting is to follow the steps in this free guide., Optimization Without Curve Fitting. This will give you very simple but powerful steps to help avoid curve fitting. 

Using Two Timeframes to Boost Returns

This one technique can turn a mediocre trading system into something amazing. Learning to program your strategy to take advantage of multiple time frames is a must!

The Essential Guide To Building
Systems That Work!

In this 100+ page step-by-step guide you learn the proper steps for building a profitable trading system. You discover many of the pitfalls to avoid and how to properly build a robust system. Example source code included!

Tools To Help Your Build Systems

Build unique arbitrage trading models for stocks and futures! 

Build Dynamic Trading Models In EasyLanguage

Build classic intra-day open range breakout trading models in minutes.

Proper Optimization and Curve Fitting

One of the biggest concerns with building trading systems is avoiding what's commonly called curve fitting. This is where you build a system that looks great on the historical backtest but, dies completely when you move to the out-of-sample or live market. This is often due to improper optimization, too many rules and/or introducing any number of biases into the backtest.

Optimizing Your Algo: Tips for Beginners
You have created a trading algo. The Algo is profitable in the backtester. Before unleashing it with real money, you’ve[...]
System Parameter Permutation – a better alternative?
When I wrote my Wagner Award winning paper, “Know your System! – Turning Data Mining from Bias to Benefit,” I[...]
System Parameter Permutation Beats Data Mining Bias
Recently, an interesting new perspective has emerged regarding trading system development. The National Association of Active Investment Managers (NAAIM) has[...]
Curve-Fitting and Optimization
– Michael Harris, Price Action Lab Blog The subject of optimization and curve-fitting has received a lot of attention by trading system[...]
System Optimization With Expectancy
In a recent article called Rank Your Trading System With Expectancy Score I discussed the concept of expectancy and expectancy score and[...]

Proper Backtesting

Are your backtest results fooling you?
Have you ever started trading a strategy that performs well in the backtests but delivers a very different result when you begin[...]
Finding Out What Works, And What Doesn’t Work – Part II
In Part 1 of this series, found here, I ran a simple study of a trading system, in order to[...]
System Performance and Confidence Interval
When you review the performance of a trading model, how do you know it’s worth trading for? How do you[...]
Finding Out What Works, And What Doesn’t Work
Many traders who try system trading have previously had difficulty at discretionary or manual trading. Most of these folks eventually[...]
9 Mistakes Quants Make that Cause Backtests to Lie
"I’ve never seen a bad backtest” -- Dimitris Melas, head of research at MSCI. A backtest is a simulation of[...]
Broken Strategy or Market Change: Investigating Underperformance
I recently had someone email me about the performance of a strategy I created back in late 2005/early 2006 and[...]
Secret Weapon of Stock & ETF System Development
This is the second article in a two-part series where I discuss the top three pitfalls when backtesting Stock &[...]
The Top Three Pitfalls of Stock And ETF System Development
During my nearly 25 years of experience in the trading business, I have talked to many traders about system development.[...]
In-Sample and Out-Of-Sample Testing
I am frequently asked if I do out-of-sample testing. The short answer is not always and when I do, it[...]
System Parameter Permutation Beats Data Mining Bias
Recently, an interesting new perspective has emerged regarding trading system development. The National Association of Active Investment Managers (NAAIM) has[...]
Fooled by Randomness Through Selection Bias
-- By Michael Harris, Price Action Lab There are software programs for traders that use some process that combines indicators with exit conditions[...]
Fooled by Monte Carlo Analysis
--by  Michael Harris from Price Action Lab Simple Monte Carlo analysis tools are often used to assess the risks of[...]
Deterministic Machine Design of Trading Systems With Strict Cross-Validation
-- by Michael Harris from Price Action Blog. A high win rate trading system for SPY was machined designed using a deterministic[...]
Win Rate: The Most Important Performance Measure
- Michael Harris, Price Action Lab Blog Shortly after my post on Kelly maximization I received a number of emails from traders[...]
Is The MAC System Overly Optimized?
In a recent article entitled, "Backtesting the MAC-System – How Long is Long Enough?", the author presented a simple rotational[...]
Seasonality And The Ivy-10 Portfolio
As the common saying states, "Sell in May and go away." As we are now in early August our seasonality[...]
Successful Backtesting Of Algorithmic Trading Strategies, Part 2
In the first article on successful backtesting we discussed statistical and behavioural biases that affect our backtest performance. We also[...]
Successful Backtesting of Algorithmic Trading Strategies, Part 1
This article continues the series on quantitative trading, which started with the Beginner's Guide and Strategy Identification. Both of these[...]
Self-Study Plan for Becoming a Quantitative Trader – Part I
Quantitative trader roles within large quant funds are often perceived to be one of the most prestigious and lucrative positions in the quantitative finance[...]
Testing The Ivy-10 Portfolio Ranking Score
It's been just about six months since I've had an Ivy-10 Portfolio update. In this article I want to give a performance[...]
Robustness of Algorithmic Trading Systems (That Work)
This is the first of a series of articles that will discuss in depth the topic of algorithmic trading systems[...]
Testing The Ivy 10 Trading System
[Tweet "Testing the Ivy 10 Trading System"] The Ivy Portfolio article posted several weeks back resulted in a lot of[...]
Measuring Success: Key Performance Metrics
When you see the performance of a trading system, how do you know it's good? How do you know it's[...]