Lessons Learned From Profitable System Development

Discussion in 'Strategy Building' started by TriPack, Sep 9, 2003.

  1. I came upon a system more or less by accident this week. I read about a system here posted by Ditch. The system basically entered a trade in the direction of a trend dictated by stochastics. You would only enter when the price hit the opposite side of the donchian channel of the trend direction. The exit was when the stochastics crossed.

    I was manually backtesting his system and I was getting frustrated on trendless days with numerous losses. Then I thought why not just enter when the price hit one side of the donchian channel and exit on the other side. Only take trades in the direction of the trend indicated by stochastic crossovers.

    I was a little frustrated at first when I read some of his posts because of missing details and examples. This made me realize that maybe it was better that way that he didn't tell all his secrets, he was forcing me to think for myself.
     
    #71     Oct 22, 2003
  2. Here is my small contribution.

    Most of systems have parameters.
    After you found a beautiful profit curve with a certain set of the parameters, observe how the performance would behave when you swing the parameters.
    You swing the parameters depending on the characters. If the profit curve and the other performance figures are not so much distrusted, the system is robust. If the performance gets ugly with a little change of parameters, it simply that the system output depends on the specific curve-fit parameters.
    Remember, for intraday systems, time-frame or bar is also parameter. When you develop a system using say, 15min bar, try 16 min, or 14min, so on. If the performance is spoiled by that minor change of timeframe, the system is curve-fit.
    It's not that systems that have fewer parameter are superior to complicated ones, however, more complicated a system become, more risk for curve-fitting and hard to examine the real value of the backtest result.
    Actually, a smaller number of parameters has advantage in actual trading. When you encounter the drawdown which does happen soon after the launch of the system with the account, probably it's hard to resist to tweak parameters which usually does not make sense in long run period. If the system is simple and has very few parameter which is essential and obvious why the figure is set so, there is no temptation to tweak and doubt the system itself.

    Good luck:cool:
     
    #72     Oct 22, 2003
    beginner66 likes this.
  3. I've attached a simple spreadsheet that I use for manual backtesting of trading ideas. I find it a lot quicker than trying to translate an idea to code and running an automatic backtest. There aren't any instructions with it but it should be pretty straightforward when trying to use it.
     
    #73     Oct 22, 2003
  4. Observation # 6)

    A dumb system can be more disciplined than the smartest trader if the trader doesn't stick with his plan. The system has no choice but to execute according to plan, no matter how crazy the trades might seem.

    Observation # 7)

    Systems do the dardest things - they sell bottoms, buy tops and do all kinds of crazy stuff. But they are more consistent at executing according to a predefined set of rules than a human trader can be and they can be automated, which a human can't be. But they lack intuition, but then again they also lack into-wishing.
     
    #74     Nov 18, 2003
  5. 8) A system doesn't have to be complex to make money. It is easier to determine if a simple system is working than if a complex system is working because of all the interrelated parts. Once you find something very simple that works, it is not too difficult to apply filters and improve upon the basic idea.

    9) The basic steps that I can see when designing a system are as follows:

    First Define the trend. This definition can be as complex or as simple as you want to make it. In fact this definition doesn't need to be much better than 50% to provide system stability. Then only take signals in the direction of the trend. This will eliminate much of the whipsaw problem.

    Second, Determine a favorable entry point that balances getting filled on trades with getting more profit on filled trades.

    Third, Define a trigger - something that will cause you to enter the market in the direction of the trend you have defined.

    Fourth, Institute a maximum loss stop. This stop should be far enough away that it is hit only in major disasters. Ideally opposing system entries will account for most of the system's loss exits rather than the disaster stop loss. Do a MAE study.

    Fifth, Adjust your system's parameters to the current volatility in the market. This is where optimization can come into play, or simply institute volatility based parameters in the first place.

    Sixth, Determine if setting a profit target will help the system's performance. Do a study of MFE. If it does so, institute a volatility based profit target.

    Seventh, Determine what other money management principles can be successfully applied to the system to improve its performance.

    Eighth, Compare the system performance between the simple base system and the "improved" system you have created. Make sure that it is really improved.

    Ninth, Forward test your system - get a feel for how it works in real-time. Do what it takes to get comfortable with following the system's signals.

    Tenth, Trade the system. Keep comparing your actual performance to the system's forward testing performance. If you aren't getting at least 70%, then either your fill/liquidity assumptions are flawed, or you need to read "Trading in the Zone" or "The Disciplined Trader" by Mark Douglas over and over until you start believing and living it.

    Here is an example of a system that follows most of the steps listed above:

    http://www.elitetrader.com/vb/showthread.php?s=&threadid=28391
     
    #75     Mar 2, 2004
    beginner66 likes this.