Intraday Checks and Hidden Edges
What is an intraday check? It is a phrase I am trying to coin, but I will explain the concept here..
There are certain rules (mainly for intraday strategies) that I believe should be applied to each strategy to check if there are any “hidden edges” in the underlying strategy.
Intraday Trading Checks
So what are these rules? And how can we test them? Well, Build Alpha now offers a test that allows users to test any intraday trading strategy to find out if it is as efficient as it can be or if there are any “hidden edges” within the strategy as I like to call it. Here are the additional intraday rules or checks.
- Time windows. Is the strategy improved by only trading between certain times of the day?
- Max Trades per day. A maximum number of trades per day count. Is the strategy improved by limiting the number of trades per day?
- Minimum P&L per day. Is the strategy improved by limiting the amount of money it is allowed to lose per day? For example, automatically turn the strategy off for the day once you’ve lost $500 today.
- Maximum P&L per day. Is the strategy improved by stopping the trading when an amount of money is earned per day? For example, automatically stop trading for the day once you’ve made $2,500 today.
Obviously, these tests are common and obvious ideas to look for hidden edges and strategy improvements – and of course, with all things, we need to use proper data analysis techniques (in vs out of sample, sample size, etc.) which I am not going to get into in this post as I have other posts regarding that.
Test Setup in Build Alpha
The Intraday Checks test can be easily configured by clicking on the “Test Settings” button and configuring the right-hand side of the pop-up window seen below:
The coolest feature of this addition to the software is the ability to add any of the newly found rules to the generated code for any of the supported Build Alpha platforms. For example, if you find a rule (or few rules) that improves the original strategy then you can double-click the test result and BuildAlpha will automatically incorporate those rules when generating trading code for TradeStation, MultiCharts, Ninjatrader or MetaTrader.
Build Alpha Intraday Checks Example
Here is a photo after selecting (double-clicking) on a test result which would then add this test’s rules to the exportable code. The highlighted red (selected) strategy’s rules can be seen at the bottom of the graph.
This selected strategy would add the rules
- Max Trades per day: 2
- Only take entries between 2:00 am and 12:00pm
- Stop trading each day after losses reach $1,000 per day
Finally, the histograms below the graph show the distribution of all the tests on the intraday rules. This is important to make sure you’re not just selecting an outlier but that the underlying distribution/simulation itself was strong. Again, this post is not meant to get into selection bias and other potential pitfalls as I have other content about that.
All in all, it is important to search every nook and cranny to make sure we’re not leaving money on the table or missing an easy edge or strategy filter. This test aims to help in that regard.
For those interested in more Intraday Trading tools take a look at the Intraday Edge test.
Thanks for reading
Great Article David as I am currently searching, programming and data analyzing for intraday strategies. I am a newbie developer.
Question:
1. My available data is 2006 to 2017 and my in sample data I train on is 2006 to 2011. All strategies I test are intrady and return lots of trades, like 2000 – 3000 trades. Is this a good or bad thing to have so much data to analyze? Sometimes, I be thinking “wow, how can i find a profitable strategy which so much data” lol
Common sense would say, the more trades I am able to train on the better. What are you thoughts?
Thank you
Yeah, generally speaking more is better! For example, imagine trying to determine if a coin is rigged. You watch the first ten flips and heads comes up seven times… is that enough to say it is a rigged coin? Probably not. However, now imagine you watched 1,000 coin flips and witnessed 700 heads.. I’d be fairly certain that coin was rigged!! That’s how I think of it at least. Hope this helps!