I have decided to record my very first system development. I've done programming in my other life for the previous 20 years and have opted to take the plunge and try to develop a trading system using MQL.

I have been reading a book by Dr Emilio Tomasini and Urban Jaekle called'Trading Systems: A New Approach to System Optimisation and Portfolio Construction'. It's a really good read and reveals the step on the best way to go from thought, into development through to analyzing and deciding if the system is really worth trading. It got my own development juices flowing so hopefully I shall pick some MQL abilities along the way whilst developing my very first mechanical trading system.

That I plan to use the example system provided in the publiion and will be able to replie the books findings and might be, just might be, enhance on the system.

To start with I will explain the system and establish the basic logic that I will be able to code and test. From there I shall carry out the a variety of test explained in the novel and add a few of my own.

If anybody wishes to join in or follow along, please feel free. The further help / pointers I've in the right direction the better

significant point to consider: I am not a seasoned trading system developer!!


Method Description:
This really is a simple moving average (MA) crossover system with a slight twist. Rather than the MA crossover being a signal to put in a transaction this system will utilize the high/low of this closed pub as soon as the MA crossed because the trigger price to enter the trade. An order in the opposite direction will close the present position resulting in a reversal of the transaction.

Inserted Code #91;b#93;Signal:#91;/b#93; FastMA#91;1#93; gt; SlowMA#91;1#93; FastMA#91;2#93; lt;= SlowMA#91;2#93; BuyPrice = High#91;1#93; One Status = GoLong FastMA#91;1#93; lt; SlowMA#91;1#93; FastMA#91;2#93; gt;= SlowMA#91;2#93; SellPrice = Reduced #91;1#93; # 1 Status = GoShort #91;b#93;Order Trigger:#91;/b#93; IF (Price gt;= BuyPrice Status = GoLong) IF (Ranking = Short) Then Close Brief Position at Market END-IF Buy (with a Market Order) #8230; Permit 3 pip slippage Ranking = Long #8230;#8230;#8230;. IF (Price lt;= SellPrice Status = GoShort) IF (Ranking = Extended ) Then Close Long Position at Market END-IF Sell (with a Market Order) #8230; Permit 3 pip slippage Ranking = Brief Notes:
Just Market orders are to be utilized. No BuyStop or SellStop orders.

The logic above reveals a signal in the opposite direction will close 1 place and open another from the opposite direction.

Extern variables for SL, TP and Trailing stop should be made available and applied to the order at time of order entry.

Cheers,