Quote from segv:
If it looks to good to be true, it IS too good to be true. Have you followed a scientific process? I suspect that you have not, given that you are posting on Elitetrader in an attempt to understand and validate your results.
1. Observe, Classify, and Define. Can you describe theoretically how your system is supposed to generate profits within the constraints of the marketplace (fair pricing, fair value, efficient market)? Is it arbitrage? Is it liquidity provision? Does it depend on the microstructure of the market in question? Can you classify the phenomena on which the system depends and track them discretely? Does the system use a weakness of some other theoretical framework?
2. Form a Hypothesis. Use your observations, theoretical reasoning, and phenomena to develop logic that can be tested empirically. Define the relationships. Does it predict or correlate? Does A cause B? If A changes does B change?
3. Test the Hypothesis Emperically. Define the test criteria, and identify the data that is to be collected. Think out of the box and create "stress tests" for your hypothesis. Intentionally invalidate your assumptions and observe the result. Is your data valid? Are there any outlier trades that are creating unusual results? Test the system with out-of-sample data, then with random data. Does it behave as you would have predicted? Why or why not?
In your post, you spoke only of the testing process, or Step 3 above. There are several problems with your testing thus far:
1. Insufficient Data. Three months of intraday data is simply not enough samples. You have already "curve fit" by having such a small sample.
2. Improper Testing. In your post, you said that you tested the same 3 month interval with different periodicity. This is not sufficient, you need to perform "walk forward" testing. That means taking a random sample of 3 months from 3 or more years ago, then testing each 3 month interval thereafter. You have confirmed only that your rules "work" during the period in question.
3. Invalid Assumptions. Your slippage is far too small. You have to account for computer, software, network, exchange, and human error somewhere. Using 5 or more ticks per trade will give you a better "stress case".
4. Data Validation. Is there an abnormal pattern of returns somewhere in your sample? Huge price swings or trades? Are all of your trades the right size?
5. Stress Testing. Permute the variables that are inputs to your testing. Does what you thought would happen actually happen?
I will say it again, just to make sure you heard me. If it looks to good to be true, it IS too good to be true. Just ask an option trader.
-segv