Learn how easy it is to build automated trading strategies using Build Alpha's point
and click interface. No programming necessary.
Configure your search. Select Long/Short. Market(s) of Choice. Exit Conditions. Fitness Function. Test Settings.
Then select what entry and exit signals to test. The database consists of over 5,000 signals to choose from. Point and click allows the trader/money manager to throw whatever ideas they have against the wall. Select anywhere from 2 signals to all 5,000+ at once. Create multiple parameter settings and variations of each.
Then hit simulate to let Build Alpha search the millions of possible combinations of strategies to find the best ones.
The output interface allows the trader or money manager to quickly sift through hundreds of generated strategies with the click of a button or arrow keys. Easily navigate the in-sample, out of sample and combined result. View equity curves, drawdowns, and run every strategy through advanced robustness testing capabilities of Build Alpha. The right-hand side of the output interface will be covered in depth below.
Equity Curve and Monte Carlo Equity Curve
The Button “Individual Equity Curve” will generate the graph on the left. The button “Monte Carlo Equity Curve” will generate the graph on the right. The blue line in both cases is this specific strategy’s backtested equity curve or cumulative account growth. The red lines in the right graph display a projection of where the equity curve will be in 50 trades into the future with 95% confidence.
The red lines are created using a Monte Carlo technique randomly selecting 50 trades from the backtest over 1,000 times and then displaying the 5th and 95th percentile of the results. All these numbers 50, 1000, 5 and 95 can be adjusted by the user to whatever is desired.
It can be said there is a 95% chance of exceeding the lower red line and a 5% chance of exceeding the upper red line.
Traditionally, the Monte Carlo Equity Bands are used as a threshold of when/where a strategy is starting to misbehave and needs to be reevaluated/taken off-line. For example, say live trading starts to perform worse than the lower red band – the red band should have been exceeded in 95% of all possibilities – this means performance is unlikely, uncharacteristic and warrants reevaluation.
A major fear of system trading is “over-fitting” the data. That is, finding a trading system that too accurately fits the historical data and will not do well on new, live data.
A key test to find systems that generalize well on all data is test ideas and build strategies across markets. The ideas is if it works well on a few markets then the strategy generalizes well enough and the trader/money manager can have confidence the trading rules are not too specific to any individual market’s data but will work on new data and other markets as well.
Build Alpha allows the trader/money manager to compare the generated strategies vs. strategies generated with random signals. This feature allows the trader/money manager to discern whether the generated strategies were found by random chance (curve-fit) or actually possess some edge greater than could be found by random chance.
The dark blue line is the specific strategy’s equity curve. The blue lines are the top 100 strategies from the real signals. The red lines are the equity curves from the random strategies.
The trader/money manager has the ability to turn off and on the plotting of the real strategies AND the random strategies with the click of a button.
Build Alpha also plots every fitness function’s distribution of the real strategies against the random signal strategies’ fitness function’s distribution. This allows another check to lower the probabilities of curve fitting by comparing how the distribution of all strategies found compares to the randomly generated ones.
Ideally, strong predictive edge and robust strategies should show a more positive skew and greater mean(average) than the random strategies. This would indicate the signals used to generate the real strategies possess real, predictive power and contain some capture-able edge.
In the above example, Net PP&L was the selected Fitness Function. Notice how much stronger the real strategies (blue) are compared to the best random strategies (red).
Edge Ratio or E-Ratio measures how much a trade goes in your favor vs. how much a trade goes against you. The x-axis is the number of bars since the trading signal. A higher y-value signifies more “edge” at that step in time.
Measurements are normalized for volatility with 1 being the baseline. That is, the y-axis is an expression of how many units of volatility more or against you your trade gets. A measure of 1.2 would indicate 0.2 units more of favorable volatility and a measure of 0.8 would indicate 0.2 units more of adverse movement.
The blue line is for the selected strategy’s signal and the red line is for the “random” strategy for the same market. The red line is to serve as a baseline to beat. Build Alpha may find good strategies, but have an E-Ratio less than the red baseline then we can be less confident that it will withstand the test of time.
For a more detailed explanation (with calculation example) check out this blog post: Build Alpha – Edge Ratio
Monte Carlo Tests
Monte Carlo tests are a powerful feature that allows the trader/money manager to discern useful information. First, the chart on the left is a simple Monte Carlo that reshuffles the order of the backtest’s trade results. The purpose of this is to see how the system would fair assuming a different order of trades and can give insights into the future possible paths the system may experience. Additionally, and admittingly hard to see, in the bottom left of the leftmost chart displays the best drawdown, worst drawdown and average drawdown of all the Monte Carlo simulations – this is just another way to create better risk expectations moving forward.
The middle chart takes the entry signals and re-trades them. However, in each of the Monte Carlo runs the exit criteria will be randomly selected. For example, in the first Monte Carlo run the system may use an exit of 2 bars for the first entry signal, 4 bars for the second entry signal, 5 bars for the third entry signal, etc. The second Monte Carlo run (of 1,000) may use an exit of 6 bars for the first entry signal, 1 bar for the second entry signal, 7 bars for the third entry signal, etc. (Assume original strategy only had simple time exit). The point of the “Randomized Monte Carlo” test is to raise confidence we did not curve-fit the exits. It is ideal to see all paths of the RMC positive as we can now say the signal we found was strong enough to be profitable with random exits.
The chart on the right creates 11 equity curves. It will “re-trade” the entry signal but the first line will use 1 bar exits, the second line will use 2 bar exits, etc. The legend on the graphs is for the third chart. The Monte Carlo test, “1-10”, shows how the system does if we simply use timed exits of 1 bar, 2 bar,… 10 bars on the entry signals. This test is another check that we did not randomly find good “random exits” in the Randomized Monte Carlo test. Positive equity curves here again raise the odds that the entry signals show real edge and are not dependent solely on the exit criteria. We want the exit criteria to add edge, but not be our entire edge.
Monte Carlo Drawdown Analysis
Monte Carlo analysis can be done with the click of a button in less than 1 second. Monte Carlo analysis reshuffles or resamples the trade results creating 1,000 hypothetical equity curves and evaluating the new drawdowns of each. This analysis serves to better estimate potential drawdown of a trading system as well as better understand the capital required to trade a particular system.
The x-axis demonstrates the % drawdown. The green histogram displays how many drawdowns were of that percent. In this example, there were 60 drawdowns (out of the 1,000) that were 10%. The blue line sums the green bars as it moves left to right – a cumulative distribution.
In this example, the user selected $30,000 as his/her account value. This was selected along the right hand side of the output interface in the Test Settings or ‘Monte Carlo Drawdown’ section prior to hitting the button.
The red X, for the demonstration only, shows the point where 95% of the drawdowns occurred. That is, the blue line is equal to 95 on the y-axis. In this instance, that corresponds to 20% drawdown (x-axis). The trader or money manager can conclude by saying there is only a 5% chance the drawdown will be greater than 20% or 95% of drawdowns from the Monte Carlo simulation were less than 20%.
If the trader is uncomfortable with a 5% chance of losing 20% then they should increase his/her account size before trading this example strategy. This analysis can help a trader or money manager make sure they are using sufficient capital for a strategy. In fact, this helps the trader or money manager create more realistic expectations about a strategy’s possible outcomes moving forward.
Build Alpha comes with many proprietary “stress testing” methods. This one is named Variance Testing. This is a unique forward simulator that simulates how well a trading strategy should do over the next N trades. It creates hypothetical equity curves into the future based on the distribution of the backtest results.
The trader or money manager can predetermine how much to vary the win rate, how many trades into the future to look, and the number of simulations to run.
For example, a trader or money manager can vary his win rate and see how likely a certain strategy is to make $X over the next 100 trades or how likely said strategy is to lose $X over the next 100 trades given a certain fluctuation in the winning percentage.
This type of stress testing can help determine if a strategy had an unrealistic backtest or is part of a stable distribution poised to perform near desired expectations moving forward.
Similarly, one of our goals is to prevent our clients from saying “all my systems ail when they go live”. The problem may very well be the trader or money manager had unrealistic expectations heading into live-trading. For example, did the strategy display a distribution like the one on the left picture above or the distribution like the right picture above? If you do not know then you are not prepared and likely will say, “all my systems fail when they go live”.
More technically, Variance Testing also displays the likelihood a strategy will be profitable over N trades, likelihood it will hit a certain drawdown over N trades, the average profit and drawdown over X number of simulations, and a 95% confidence interval for both profit and drawdown based on the simulation’s results. All of these data points can help create better expectations moving forward while helping traders and money managers avoid fatal (and avoidable) mistakes.
Build Alpha users can adjust the number of trades looking forward, the number of simulations, the drawdown amount, and the win rate’s variance to build their own custom stress test on every strategy AND portfolio constructed.
The bold red line on the right graph has been manually drawn to demonstrate the equity curve from the combined in and out of sample backtest – which is pictured as a single blue line on the left chart.
The single backtest’s equity curve, the blue line on the left, looks like a viable strategy alone. However, after running our Variance Test – or one future simulator – we can conclude these results seen in the backtest are unlikely to occur again moving forward.
Expecting to make $100,000 in the next 350 trades (as our backtest did) is highly unlikely; it would be prudent to adjust our expectations – the average profit from our simulation on this strategy was only $20,000 or one fifth the backtest results.
Just another way Variance Testing and Build Alpha can assist the trader and money manager to build alpha (get it).
The Noise Test is another proprietary test that adds or subtracts user selected amounts of “noise” (volatility) to the original price data. The software then re-trades the selected strategy on the 1,000 newly generated price series that have varying amounts of noise.
The idea is to see if we change the amount of noise in the data does the strategy still perform well or does it fall off a cliff?
The trader or money manager is granted the freedom to control how much noise is added and how frequently price bars are adjusted. An example may be… let’s adjust 70% of the price data by 20%. So in this example, we’d adjust 70% of the open, high, low, close prices by up to 20% (in either direction) of the average true range on that date.
If the strategy does well on new 1,000 adjusted noise data series then it is to have found a true signal in the data and not be ‘fitted’ to the noise.
The user can then reconfigure the settings and re-run this test in an instant.
Build Alpha can now create intraday strategies. However, there are often overlooked and often missed intraday edges that can be found by only trading during certain times during the day, or limiting the maximum amount of trades per day, or even limiting the amount the strategy can win or lose per day.
Build Alpha now allows the trader/money manager to test any strategy for these ‘hidden’ intraday edges. The software will show the test results and allow the user to select on any one they choose (highlighted selection in red).
The highlighted strategy’s rules will then appear at the bottom of the display. This example shows the strategy with the added rules of trading between 2:00 am and 12:00 pm, only allowing 2 trades per day, and stopping trading after a $1,000 loss was reach per day.
Additionally, the user can view the distributions for the entire intraday rule tests below the equity curves. There are distribution plots for total P&L, drawdowns, and average trade. These distributions allow us to avoid trading a lucky outlier.
These hidden intraday edges can be the difference between alpha and a new career when it comes to intraday.
Meta Systems – Equity Curve Trading
A Meta-System is simply a trading system that attempts to trade or time another trading system. That is, can we improve performance by analyzing the patterns in the trading results.
For example, can we achieve smoother risk-adjusted returns by only trading this strategy after the last trade was a loser? How about if the last two trades were losers? What if we only traded this strategy when its equity curve was below the 5 trade moving average of the equity curve?
You can see above we can achieve smoother risk-adjusted returns while only trading this strategy once its equity curve falls below the trade moving average of the equity curve (the pink line). This might warrant further research or increased leverage/position size when the strategy’s equity curve begins to dip, for example.
Delayed Entries and Exits
A simple, but often overlooked, robustness test is to delay the entries and/or exits to determine how sensitive a trading strategy may be to these changes.
Build Alpha allows the trader and money manager to view each and every strategy with a multitude of varying entries and exits. For example, this particular strategy remains profitable while adjusting the entries and exits. Furthermore, this strategy actually has a greater absolute return had we lagged our exit by 3 bars (Entry lag 0 and Exit lag 3).
Breakdown and Seasonality
After Build Alpha runs, you will be able to view a breakdown of performance and a seasonality report for each and every strategy.
The display on the left shows how the selected strategy did on each day of the test, each month of the test, each quarter of the test and each year of the test.
The display on the right shows how the selected strategy did per day of the week, per month of the year, per quarter of the year and per year. These are cumulative totals for the history of the test dates.
These displays can help you find periods of time that may require further attention or seasonal edges that can be exploited.
Randomized Out of Sample Testing
Randomized Out of Sample testing is a simple check that a strong trend in our out of sample test period did not contribute too greatly to our favorable out of sample results. For example, it may be very easy for a strategy to pass out of sample tests if the underlying price data exhibits a very strong up trend.
Randomized Out of Sample testing runs 1,000 tests where each iteration selects random, non-continuous dates to serve as our out of sample period. This ensures we do not have a strong trend or pattern in our out of sample period that allowed a weak strategy to pass out of sample testing. It also allows us to view a distribution of outcomes vs. a single backtest’s out of sample results.
For a more specific and detailed explanation of this testing method please view this post: Randomized Out of Sample
Easy Language Code
Build Alpha can generate TradeStation EasyLanguage Code and MultiChart’s Power Language code that is ready to trade and automate with the click of a button. Just click the ‘Generate EL Code’ button on the output interface or portfolio interface windows.
NinjaTrader 7 & 8 Code (C#)
Build Alpha can generate NinjaTrader C# code that is ready to trade and automate with the click of a button. Just click the “Generate NT Code” button on the output interface or portfolio interface windows.
MetaTrader4, Pro Real Time, and Quantopian Python Code
Build Alpha can generate code for MetaTrader4, Pro Real Time, and Quantopian that is ready to trade and automate with the click of a button. Just click on the appropriate button on the output interface or portfolio interface windows.
Advanced Optimization Techniques and 3D Surface Graphs
Build Alpha allows the trader/money manager to see how sensitive each parameter setting may be and the ability to optimize parameters across a basket of instruments instead of just one price series. This leads to more robust parameter settings and strategies. Zoom in on any area of the 3D Surface plot and Build Alpha will generate trading code for that specific point on the graph in a single click.
Build Alpha also allows the trader/money manager to optimize across noise adjusted data sets in addition to the original data series. This provides the trader with an additional method to combat overfitting leading to more robust parameter selection. This method is not available anywhere else, giving Build Alpha traders a distinct advantage.
Any strategy can be added to the portfolio. Inside Portfolio Mode traders and money managers can turn strategies on/off, view individual and combined equity curves, rand run all the stress tests (Monte Carlo, Variance, etc.) on the entire portfolio. Finally, the Print button inside Portfolio Mode prints code for all the strategies to co-exist. A unique feature to help combine uncorrelated strategies to produce Alpha.
You can switch back to individual strategies by selecting In Sample, Out of Sample or All. Seemlessly add and subtract strategies. Strategies added to the portfolio will be saved and stay in the portfolio even AFTER you have shut down the software.
Your portfolio can be accessed from both the Input and Output interface windows.
Minimum Variance Portfolio
Minimum Variance Portfolio or Modern Portfolio Theory is a simple test that optimizes your portfolio giving each strategy inside the portfolio an optimal weight in order to optimize the portfolio’s risk-adjusted return or Sharpe Ratio.
The trader or money manager can scroll over the points on the graph and view the individual weights given to each strategy to create that specific point.
The highlighted red point is the result f the using even weights on each strategy in the portfolio.
Build Alpha also allows you to view each and every strategy against the underlying asset’s buy and hold as well as the S&P500 buy and hold performance. The chart on the left shows a Crude Oil strategy (blue) against the S&P500 buy and hold (red) over the same period.
The middle chart shows the same Crude Oil strategy (blue) against the underlying Crude Oil market’s buy and hold (grey) performance.
The right chart shows the same Crude Oil strategy (blue) against both the aforementioned benchmarks.
There is no point in trading a strategy that cannot outperform buy and hold.
The Correlation Matrix resides inside the Portfolio Mode window. The CM allows traders and money managers the ability to view how correlated individual strategies have been. This gives the trader or the money manager the ability to construct portfolios of uncorrelated strategies.
The correlations are calculated using marked to market daily returns. This is an industry standard method and allows Build Alpha to compare/contrast strategies of different styles, holding periods, and exits.
Out of Sample Highlighting
Build Alpha now highlights out of sample period results to give a clear view of the performance differences in both in and out of sample testing.
Regime Switching Models
The graph on the left goes long the S&P500 when the market enters into a bullish regime. When the market enters into the bearish regime most long trading systems go flat.
However, Build Alpha allows you to test the same trading idea but invest in a second market instead of being flat. The idea being… this can often lead to more profits, reduced drawdown, and an overall smoother return on capital.
The graph on the right shows the equity curve going long the S&P500 when the market enters into a bullish regime and going long US 10 Year Note Future when the market enters into the bearish regime.
NO other software or platform allows users to create market regime switching strategies.
View the strategy’s drawdown in comparison to buy and hold’s drawdown. No point in trading a strategy unless it offers a better risk-adjusted return than simply parking the money in some asset.
Create Your Own Custom Signals
Build Alpha consists of over 5,000+ entry and 5,000+ exit signals to choose from – all point and click. I am also constantly expanding the signal library with every update. However, if you want to be creative you can create your own signals to test.
There are two ways you can create and add custom signals to the Build Alpha strategy engine.
First, you can use the drag and drop builder to create your own custom signal or rue. You can create custom signals and designate them as an entry signal or as an exit signal or as both.
Second, you can create any custom signal using python. You can use any and all python libraries to create custom signals and then pass them into the strategy engine to see if it can be used in combination with any of the other custom or built-in Build Alpha signals.
Ensemble and Hedging Strategies
Build Alpha now allows traders and money managers to create Ensemble Strategies. These are strategies that use other strategies as input signals. The simplest way to describe ensemble strategies is a voting system.
You have 5 Crude Oil strategies that you monitor. However, it may be better to only take a position when 3 of the 5 are in agreement. Build Alpha can now check for this and find out if improvements can be had when 2, 3, 4 or 5, etc. are in agreement. Build Alpha can check thousands of systems, if desired.
Ensemble Strategies do a tremendous job of reducing curve fitting and smoothing performance. Ensemble approaches are widely believed to be superior approach (with evidence to back it up) to most machine learning, prediction and data science problems.
Rebalance strategies rank a universe of symbols on a specific criteria and then enter positions in the top ranked (or bottom ranked) symbols on the rebalance date, then re-rank the universe of symbols at the next rebalance date, and adjust the positions accordingly.
These strategies do not need a specific entry or exit signal; however, you can use entry and exit signals to provide a strategy overlay on top of the rebalance logic.
For example, we have the Dow 30 stocks as our universe and want to trade the top 5 each month based on last month’s performance. We can buy and hold for the entire month, rebalancing into the next top 5 the following month. We can also find which are the top 5 symbols each month and then apply a strategy to only these 5 symbols for the duration of the month, re-ranking at the start of the next month and the only apply the strategy to the current month’s top 5 symbols. Build Alpha can test and find the best ranking method, rebalance period and amount of symbols to trade in the universe.
Signal Breakdown digs on step further into the rules and features that are driving trading performance. This gives the trader and money manager an unique view into the guts of a trading strategy. View the frequency at which EVERY signal occurs on both winning trades and on losing trades of any trading strategy.
Signals that occur much more frequently on losing trades than winning trades are good candidates to exclude from your trading strategy. Additionally, signals that occur much more frequently on winning trades than losing trades may be good candidates to add to tradings systems to improve performance.
How come Build Alpha does not find these signals in the strategy building process? It does! But the user can limit the number of rules Build Alpha uses per strategy to avoid potentially over-fitting. If the user sets Build Alpha to use a maximum of three rules per strategy then all the strategies Build Alpha creates will only use up to three entry rules. After viewing the Signal Breakdown, the user can right-click on any strategy and choose to add an additional fourth, fifth, etc. rule. Of course all of this is done with NO programming – all point and click.