Your on the right path. Just remember simple, simple and more simple. The only system that will stand the the test of time will be extremely robust among most instruments and incorporates a methodology that gives you a statistical edge. I would not risk trading real money until you have an absolute minimum of 200 trades as a sample, 500-1000 would be wiser. Dont give up, your going to get hit in the stomach in this business, you always have to get up. Here is my baby that I trade on the er2 everyday.
Stop worrying! Make a little table: PnL % of days -$1000 0.01% -$800 0.02% -$600 2% -$400 8% . . . $1000 4% $1200+ 1.3% something like that. When you feel emotional about today's result, refer back to the table and reflect. Great thread. Good luck. My 2c : go back to Method 1, but I don't understand why you can't do Method 1 and Method 2 simultaneously. Back off position size if things are going badly, but over a timescale of weeks, not days. Bet small enough that 2xhistorical max DD will not leave you reeling (if you're not doing this, then this is the problem!). Stop worrying
Nice job apex! That's a beauty of a curve. Looks like you average 25 trades per day and $333 profit per trade. Care to shed any light on what your are doing and how many contracts you trade at a time? I hope to be at this level some day!
I've read this thread with interest as you seem to be experiencing similar problems to myself. A while back I tried to write an automated FX trading bot to trade any CCY pair - but I concentrated on EUR/USD for my testing. I had about one year of tick by tick data which I downloaded from gain capital http://ratedata.gaincapital.com/ With EVERY system - in backtesting they ran a profit for 60-90% of the time - sometimes spectacular - only to lose it all and more in a single week or two. The only way to protect against this was to lower the agressiveness of the money management which then meant that the bot's profits were far less than I can get swing trading (which is how I currently trade at the moment). I tried tweaking the models - which invariably led to more parameters - which resulted in over-fitting to a set of data (I always back tested with different data to which I used to optimise the algo) or the bot got to the point where it would go a week without opening a trade. In the end many of them had so many parameters it was impossible to manage. I tried loads of systems - here are the ones I can remember.... 1. A combination of schotastic and RSI indicators, tweaking the buy/sell levels 2. Simple moving average crossover, tweaked to look at rate of change of the moving averages and other friggs. 3. Tweaking the moving average so that the less the price moves the fewer periods it uses to calculate. It means the moving average keeps up with the actual price better when there's a big move. 4. Looking for trend chanels in the price movement. When the channel has reached a pre-determined length the trade is opened (if the channel points up or down enough) The price is then monitored and when it jumps out of the channel the trade is closed. 5. Swing trading using tick/1min/5min data. Looking for higher highs & higher lows, or lower highs lower lows. 6. Opening a tiny buy & sell on every tick change, no stop but a take profit order a few points away. Runs up fantastic profits on a ranging market. However if it's trending sharply up or down kiss your account goodbye. Tried techniques of limiting exposure in a particular direction but it didn't stop the rot. 7. Trying out Gann theory on 1 min and 5 min data. Anyway I wish you luck - I've given up on the bot - I'm now a discretional swing trader using EOD data. I find it stress free and simple to manage my risk while still gaining a respectable profit.
My take: we've got an incredibly gifted programmer here that has built an auto trading platform....something that many have tried, and many have failed. However, given all of the existing trading platforms that can be auto-traded and backtested, I believe the time spent building the platform could have been better spent on testing his system (and the premise) and doing a better job of "what-if" and statistical analysis. The basic issue at the moment is ... does the current system have a positive expectancy over a long period of time ? That should have resolved with a high degree of certainty up-front. Another problem is the fact that the system only trades one-lots....there is no ability to scale-in or scale-out or to apply bet-sizing to the strategy....which is usually the key to trading success.
I would first like to comment on all the great posts that have been made in this thread. I may not respond to every individual post, but I am definetly reading them all and trying to absorb their content... and i hope the ideas and interest keep flowing.... All things considered I have gone back to method #1.....I just have to bite the bullet and survive the draw down period... I really think come january the markets will start to move in a more conducive way for this strategy....... If I can survive to then I will be ok i think.... syswizard, I knew coming in before I ever went live that the system has a positive expectancy over the long term... the long term was never the issue... going back to my first post in this thread i stated its the draw down periods that frighten me and which will make me have a hard time keeping the bot live when they come...... The long term I never had doubt, its just sticking with it for that time to come.... and I never expected the draw down period to come within the first few weeks of going live....
It's imperative that you understand that you do NOT know this. What you know is that if you had been able to make the series of trades you've studied IN THE PAST, you'd have made the money that your backtests say. But now, you see that making those same types of trades in REAL TIME isn't easy at all. But even if you can, you DO NOT KNOW if it will be profitable. This is why your testing framework and analytics are at least as important as the specifics of your strategy. You need to know how the current drawdown compares to theoretical ones. How long? How deep? What kinds of conditions? Win/loss %? Only when you can answer all those types of questions will you be able to figure out if market conditions have changed. If you think they have, you modify the system or pull the plug. If they haven't, then you keep trading it. Right now, you're flailing. Simply put, you don't know if your system is acting "right". You can't make good decisions until you do.
Based on the above, this system probably was not ready for "prime-time" real trading....and with further extensive testing, you probably would have been able to calculate the probability of the drawdown period coming within X weeks of the start-up. Also, did you know the average frequency and standard deviation of the drawdown periods ? What about the drawdown average amount and standard deviation of that amount ? See...you've got to spend more time on this statistical stuff....as probability is the name of the game here.