U.S. economy adds 64,000 jobs in November, delayed BLS data shows
All of my previous posts have been strictly focused on end of day trading. With this post I want to elaborate on how to test & trade intraday using limit orders. Furthermore I want to discuss the validity of the system presented with you.
Strictly uses previous bar information in order to avoid look ahead bias, based on daily bars
In case open is bellow limit order, open will be the execution price
Based on NDX100 stocks (survivorship free: historical index adjustment + delisted stocks)
No commission / slippage
Explanation of the key performance indicators being used

The main issues with the system presented is the approach of taking (ranking) the trades according to previous bar’s ROC(20). In reality the limit orders won’t be hit in yesterday’s ROC(20) order. Using daily bars there is no way one can figure out the “real” sequence of the limit orders. So I decided to simulate the sequence by randomizing the selection. That can be easily done in AmiBroker by assigning a random variable as POSITIONSCORE. This way I’ve no influence (bias) what stocks are selected (as long as the low is lower than the initially defined limit). I’ve run the test 1000 times using randomized selection, bellow you find the randomized results. The results appear to be pretty stable regardless how the stocks are being picked. Even the “worst” run shows decent performance.

The basic idea
- Buying oversold stocks intraday using limit orders.
- Oversold is defined when today’s price falls below yesterday’s close – 0.9 ATR(21)
- Buy top 5 stocks using ROC(20) for ranking
- All trades are closed at end of day
The test: Too good to be true?
Strictly uses previous bar information in order to avoid look ahead bias, based on daily bars
In case open is bellow limit order, open will be the execution price
Based on NDX100 stocks (survivorship free: historical index adjustment + delisted stocks)
No commission / slippage
Explanation of the key performance indicators being used

So what’s wrong?
The main issues with the system presented is the approach of taking (ranking) the trades according to previous bar’s ROC(20). In reality the limit orders won’t be hit in yesterday’s ROC(20) order. Using daily bars there is no way one can figure out the “real” sequence of the limit orders. So I decided to simulate the sequence by randomizing the selection. That can be easily done in AmiBroker by assigning a random variable as POSITIONSCORE. This way I’ve no influence (bias) what stocks are selected (as long as the low is lower than the initially defined limit). I’ve run the test 1000 times using randomized selection, bellow you find the randomized results. The results appear to be pretty stable regardless how the stocks are being picked. Even the “worst” run shows decent performance.

