I would have to agree with Pedro on this. I started with my own bespoke code - mainly because I wanted to use P&F analysis on forex and the standard packages didn't really offer it. However it became a real pain to implement my ideas this way, so that code has taken a back seat for now and I am working purely in MT4 at the moment. I have longer term plans to build that initial work into MT4 - but that is taking a back seat at the moment.
Building your own indicators is fine - but I'm dubious of the value. From my experience the actual indicator itself is really not that important. The importance lies in understanding what each indicator does and being able to build a program that is able to use them properly. For example does it matter if you use ATR or bollinger to measure volatility - my opinion is not really - what is more important is using the concept of volatility correctly.
The problem with an algorithm is also not all about in getting it to do what you want it to do - it's as much about it being able to have decide when it shouldn't do it. Normally this is called 'discretion' - but actually a person applies discretion when there is some facet in the market (be it volatility, excessive momentum etc) that an algorithm can also take into account. Provided, of course, that the person coding it understands the problem fully in the first instance.
Building your own indicators is fine - but I'm dubious of the value. From my experience the actual indicator itself is really not that important. The importance lies in understanding what each indicator does and being able to build a program that is able to use them properly. For example does it matter if you use ATR or bollinger to measure volatility - my opinion is not really - what is more important is using the concept of volatility correctly.
The problem with an algorithm is also not all about in getting it to do what you want it to do - it's as much about it being able to have decide when it shouldn't do it. Normally this is called 'discretion' - but actually a person applies discretion when there is some facet in the market (be it volatility, excessive momentum etc) that an algorithm can also take into account. Provided, of course, that the person coding it understands the problem fully in the first instance.