How do you develop a trading system and other questions

Hi guys, I’m pretty new to forex, have been reading any literature related to the topic that I can get my hands on. Just a couple of questions that I hope you could enlighten me about…

  1. How does one develop his/her own trading system (eg. which indicators to use, what kind of setup, entry and exit points etc)? By trial and error? Surely there must be a basis from which to start experimenting?

  2. What are some of the more successful systems out there that I can take reference from?

  3. How does backtesting work? Do you simply take the charts of a currency pair going back say 5 years, and plug your trading system in, and examine how well it works?

  4. Which charting software is recommended? I’ve been hearing lots about MT4, but what other options are out there?

Thanks in advance guys! :smiley:

These are extremely good questions, and seldom addressed. To get started it might be worth you reading some of Van Tharps material, particularly his seminar material on system development, it’s very general in nature, but it at least provides some sort of framework you can start to develop from.

Personally I use spiral type development methodology and I generate strategy ideas based on 3 key methods.

  1. Method 1 is basically research, taking ideas from books, forums, existing methods etc. Most of the stuff out there is crap, but you have to start somewhere. The results from later stages of the methodology will help you get a better idea of the problem that your trying to solve, and generate new ideas for research. It useful to think in terms of each component element of your system e.g. entry, exits, position sizing etc and how these typically interact and what works with what and when etc. A good book on TA is probably worth buying for basic ideas.

  2. Method 2 uses a reverse engineering approach to retrospectively identify potential trades, and attempt to identify factors responsible for those trades, this might be technical, fundemental, event driven, random chance etc. You can add in data mining, statistical analysis, or whatever floats your boat.

  3. The third method I use can be losely described as a walk forward self optimisation approach. I start with the simplest system imaginable, and based on the feedback from that system, I modify system components and parameters. Its kind of like a dumbed down GA approach but based on common sense, intuition and experience.

Personally I generate basic strategies through a synthesis of those approaches. Ideas that backtest well are incorporated into the self optimising model, and good (and bad) results from the self optimising models are subjected to further backtesting for verification. When I talk about back testing, I dont just mean focussing on profits, I mean focussing on if a given system component performs better than random. So I’ll ask questions such as does my indicator give me a better win rate than random, does my indicator allow me to use tigher stops, does my indicator allow me to squeeze more out of a move, does my indicator improve the distribution of consecutive gains and losses. The more you do this stuff the smarter the questions get, and the faster you’ll focus in to sensible area’s of research.

Testing systems in metatrader isnt really of much use as far as backtesting is concerned, its a bit more complex. Back testing gives one possible set of historical outcomes for a system, but its unlikely that future performance will match exactly. Once you have a bunch of trades from any of these approaches, I’d advise a resampling type approach to determine statistical confidence intervals on the systems performance. The better charting applications support this sort of stuff, and if your serious about autotrading, you need to take this crap into account, I highly reccommend a book titled Evidence Based Technical Analysis by David Aronson for info on resampling and bootstrapping techniques.

Once thats out of the way, you can start concentrating on optimising position sizing to achieve your objective of either maximising growth, or minimising varience etc. Again theres standard models and techniques you can apply, and its mainly a case of working out the strengths and weaknesses of each and how they impact a given trading model.

There are loads of charting options, people use MT4 generally because its free. The point about software is it all does pretty much the same stuff, and it wont be the software responsible for success or failure. Personally I’d say that to have the slightest chance of suceeding in developing a mechanical system you’ll need to develop your own tools. MT is definatly enough to get you started.

Its useful to see actual examples of systems being developed, but there’s not much out there. There used to be a reasonably good article on on the T2W forum about the development of a break out system, and a decent article on Elite Trader which focussed on the development of a basic trend following system using tradestation. The forum at wealth-lab.net is also a pretty good source of information.

Its hard to give specific advice, and there’s not much useful information in the public domain but hopefully that helps get you started. The key point I’d make is dont underestimate the effects that random chance can have on your results, and wherever possible try to apply basic statistical principles to the evaluation of your results, entries are the least important part of your syste, and diversification is good too !

I’d also say that developing a knowlege of manual discretionary approaches is extremely useful in understanding key trading concepts, by which I mean support and resistance, trend, price action etc. The reason that the programmers, mathematicians and statisticians fail is becuse they dont see the bleedin obvious, so start trading something, and critically evaluating the results even if its only a moving average cross.

Thanks for the in depth reply, simbafx! Some other questions that have been triggered:

  1. When you mentioned “better than random”, I assume that by “random” you mean a rate of 50% of getting the trade right (since you can either be right or wrong)? Of course we should be aiming for something better than 50%, but realistically what kind of figure is workable? 75%? 80%?

  2. How do you incorporate statistical analysis into backtesting? I can grasp the basics of statistics eg. testing for significance, confidence intervals etc, but I’m not too sure how to incorporate it. Will hit the library for David Aronson’s material meanwhile.

  3. So what exactly constitutes a trading system? For example, say my plan is to go long/short whenever the MAs crossover, combined with MACD and RSI for confirmation along with stop loss of 2% of my capital. Does this make a system or is it more in depth than that?

  4. I appreciate the need to understand discretionary trading approaches, but it seems to me that a number of them are subjective at best (eg. support and resistance levels may be defined differently by different individuals). How does one reduce this element of variance?

That said, one personal observation I’d like to make is that while demo trading is essential before plunging in with your real money, it lacks a certain element of realism. I’m thinking perhaps trading with a mini account and making the silly mistakes that most people do at the beginning would be an invaluable learning experience.

  1. By “random”, I mean a distribution of results obtained entirely by random chance, which may, or may not have a win rate of 50% depending on constraints you place on the random system.

I wouldnt get too hung up on win rate at this stage, what your interested in is developing positive expectancy, and the win rate can be below 50% if the the size of your average winners is greater than the size of your average losers. If your not familiar with the concept of expectancy its worth looking into. There are of course advantages to a higher win rate, its generaly psychologically comforting, and the probability of consecutive losses diminishes, but its not that important.

[I]2) How do you incorporate statistical analysis into backtesting? [/I]

To understand what I’m talking about I’d advise taking a look at one of these equity curve generators that are on various sites, in which you can enter a win rate, size of win, size of loss etc. If you play around with these you’ll realise that each time you simulate trades for a given system you get a different equity curve due to the random order in which the sytem generates its wins and losses, its exactly the same system, but random chance results in differences in performance. A backtest is just like one single curve out of a whole spectrum of what might have happened.

You’ll often find that a group of people trading the same automated system get massively different results due to minor differences in data feeds, or due to the time at which the tests start etc, random chance plays some strange tricks and you have to be aware of the possible effects.

The general idea is you generate a backtest (or better still a forward test), then you re-sample the results, to create multiple versions of the equity curve, and then you apply basic statistical analysis on those resuts to determine the variation that you might typically see, and that allows you to place confidence intervals around the equity curve. If you know some basic high school stats the Aronson book is pretty good place to start. I’d also reccommend you take a look at some of the webinars by a guy named John Jospeh which are available on a couple of trading websites, he’s got a good grasp on this stuff and although its pretty heavy going, he explains the procedures in very practical and understandable fashion. I’ll dig out links if your interested.

[I]3) So what exactly constitutes a trading system?[/I]

At the most basic level, I’d say you need to specify what instrument that your going trade, a set of entry criteria, such as your MA/MACD/RSI setup. An exit for taking profit, and an exit for taking a loss. You might also need to think about how you manage trades. A critical aspect of the system that you didnt mention is defining the size of your positions. From experience I find everyone focus’s on entry, and I’d advise that you pick something simple, and then put the effort into thinking about stops, targets, position sizing and diversification. There’s a free PDF knocking about that specifies the turtle trading system, that covers the basic elements that you’ll probably want to consider.

https://www.bsp-capital.com/documents/turtlerules.pdf

[I]4) I appreciate the need to understand discretionary trading approaches, but it seems to me that a number of them are subjective at best (eg. support and resistance levels may be defined differently by different individuals). How does one reduce this element of variance?[/I]

This is a difficult area and I understand where your coming from. I’m originally from an Scientific/IT background, and originally focused on developing mechanical strategies without much success. After a while I looked at discretionary approaches, and I have to admit that the effort spent watching charts, and gaining an understanding of the tools and techniques was for me at least extremely valuable. Until relatively recently I traded discretionary methods almost exclusively. What I will say is that my ongoing research into mechanical strategies was of of enormous benefit to my discretionary trading. I feel quite strongly that there are real synergistic benefit to approaching the problem from both ends. I’d probably argue that that the way you define something doesnt really matter that much as long as your consistant.

  1. [I]I’m thinking perhaps trading with a mini account and making the silly mistakes that most people do at the beginning would be an invaluable learning experience.[/I]

I definately agree. I dont like reccommending brokers but Oanda are great if you want to start small, but still have control over your position sizing.

This is a subject I myself am chewing through right now and YES, quite little is written about it if anything at all. This was one of the most frustrating things that I encountered when starting to trade, it was like “Okay, I know these candle sticks and moving averages and trendlines, now what the heck do I do with it?”

On one end, there is a strong desire to develop some system that I have back tested and can execute blindly with full confidence that I will walk away statistically ahead. On the other end, the past is the past, and if I happen to see something on a chart that everyone else sees is doing the same thing, soon enough the aggressive traders are going to hop on it early and the price will reverse sooner and sooner, thereby invalidating the signal.

On the other end, when you’re discretionary its all on you. You have no back testing to give you statistical records, there’s just you going forward into time and learning from your trading records what works best, what does not. After a streak of losses you have to watch out to make sure you’re not going to go funny.

I’m trying to strike some sort of middle ground here. Surely, testing in the past is at least going to show you some kind of pattern of behavior of a specific financial instrument, which should show you how some things are likely to happen in certain circumstances. At the same time, simply being in the market is going to give you a good feeling and first hand knowledge of how things behave.

Anyway, I’ll let you know when I’m making my 10% a month, lol

This is a fascinating and extremely useful thread. For me at least, it reflects the questions I have and the quandaries I am in right now. Thank you!

Thanks everyone who have contributed!

Regarding expectancy rates, I’ve done some digging on my own and thought I’d share what I’ve found with others who may be wondering what it is:
Expectancy of a stock trading system must be positive if you want to make a profit

The Turtle Rules pdf was a good read, but certain aspects of it elude me. For example, when they talk about position sizing, I haven’t been able to properly calculate my position size for a given currency pair using the formulas given. Maybe someone who understands it better could enlighten me?

Meanwhile I’ll fiddle around with my hypothetical system for abit, hopefully do some demo trading and post the results here for discussion. :slight_smile: