Accurate Scalper Development : What Needs to Be Done to Reliably Develop Scalping Strategies

I have often been criticized by people because of my total opposition to scalper trading in the Metatrader 4 platform. Every month I get one email or two asking me about why I have such a position if there are “several scalpers” that have shown profitable results for even “a year” or more on several Metatrader 4 brokers. My answer to this has always been that I do not develop nor trade scalpers in Metatrader 4 because I do not have clear idea about their long term profit and draw down targets as their simulations  – even on tick data (99% quality) – are not reliable. I have written a few posts in the pasts explaining the unreliability of their simulations and the inherent disadvantages of scalping strategies. Trading a strategy without knowing its long term characteristics is a BAD idea since you do not know when to stop trading it as you lack accurate worst-case estimations based on sound statistical criteria. Often the bad risk to reward ratios also make traditional statistical criteria – such as Monte Carlo simulations – predict that a wipe out is necessary in order to assert that the system is not behaving correctly anymore. However today I want to give this topic a “spin” and write not about the problems of MT4 but about what needs to be done to reliably develop a scalping strategy. For the purpose of this article I will talk about scalping systems as systems that trade below the 30 minute time frame and exit positions in the 10x spread range.

There are a few important problems with scalpers which need to be solved in order to obtain reliable simulations that allow us to accurately determine profit expectations and their long term trading characteristics, worst case scenarios, etc. The first thing we need to understand is that accurate simulations of lower time frame trading require ALL of the items below to be fulfilled in order for simulations to be accurate :

1. Separate Bid/Ask tick feeds : In order to simulate a scalping strategy accurately there is no question that we NEED adequate separate Bid/Ask tick data feeds in order to be able to adequately track spread changes and how these changes affect the exits and entries of our strategy. Scalping strategies – or any strategy on lower time frames for that matter – simply CANNOT be simulated accurately if you are missing separate Bid/Ask spreads, this is something I have tested several times, showing that even on 99% modeling quality you can build a system that takes 100 USD to 10 billion USD in 3 years, a totally unrealistic representation caused by the lack of adequate and separate Bid/Ask feeds.

2. Random Inclusion of  slippage : On top of the above Bid/Ask separate tick feeds we also need to have a random inclusion of slippage in simulations to account for losses caused by this problem. Slippage is bound to cause important losses for scalping strategies and it is therefore very important to stress-test the system against some random slippage that shows if it is robust enough to withstand some of the inherent problems of live execution.

3. Broker simulated, broker traded : A problem with scalpers is that they are inherently very sensitive to the data they are being simulated on. On lower time frames differences between bars between two brokers can be VERY important since even a 1 pip difference on a bar close can constitute 20% of a traded bar. For this reason the data you develop your system on needs to belong to the same feed you’ll be running your system on. Simulating a system on the Bid/Ask tick feed and running it on another is bound to bring failure as a system can change completely merely due to broker dependency.

4. Volume or 2nd level market depth. When using a scalping strategy it is very important to take into account the volume around the bars being traded – or if possible the 2nd level market depth – in order to be able to know if your entry signals would have enough liquidity to get executed. A big problem with the development of scalping strategies is often that an inefficiency becomes untradable because of the lack of enough volume to execute orders. For this reason trading only on hours with enough volume to have our orders executed is vital for adequate simulation.

From the above it becomes clear that the Metatrader platform (4 or 5) does not have the necessary capabilities to adequately simulate scalpers, this is a fact when looking at its capabilities and comparing them with the above needs. This platform does NOT allow you to simulate SEPARATE Bid/Ask data and it does not allow you to include random slippage, etc. The lack of these features makes it very easy to exploit inefficiencies based on the lack of accuracy, even if running on 99% modeling quality.

If you however are serious about the development of scalping strategies with reliable simulations then you will probably need to develop your own C++ code (or any other language you like) to adequately simulate the strategies. However this is perhaps the least problematic step as getting accurate Bid/Ask tick feeds from a given broker will most likely be the determining step in achieving accurate simulations. Because of the inherent broker dependency in Forex, people who develop mechanical scalping strategies prefer markets such as futures or stocks where there is only one central exchange and separate Bid/Ask tick data can indeed be purchased at a reasonable price and with the certainty that there is only ONE set of Bid/Ask tick data to work with.

In the end you must understand that if you are working with Metatrader 4/5 and using mechanical scalpers you are betting your money since adequate simulations for scalpers on these platforms are not possible and you will always be ignorant of the long term statistical characteristics of whatever system you’re trading, greatly overestimating profits and underestimating draw downs, a very dangerous game indeed. If you are truly interested in trading with mechanical strategies on such low time frames then trading on stocks or futures might be a better option as the development of such strategies is much easier since there is only ONE set of Bid/Ask tick data which is available from reputable sources along with order books and TRUE market trading volume information.

Of course you’ll find that this is the reason why most (all I know for that matter)  large market participants who use algorithmic trading in Forex do not use low time frame or scalping trading strategies but high frequency trading strategies which are based on triangular arbitrage or such other similar opportunities which have a very high probability of giving profit due to the fact that they are based on sound arbitrage concepts such as the one price rule, strategies which are out of the reach of retail Forex participants due to their extremely low lifetime and the very high speeds needed to obtain profit from them (never obtainable from a retail Forex broker, even an STP or ECN broker). You can read more about why MT4/5 scalping and low time frame strategies are very different to high frequency trading here.

If you would like to learn more about my work and how you to can develop sound trading strategies which do give reliable simulations on the HIGHER time frames please consider joining, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach to automated trading in general . I hope you enjoyed this article ! :o)

Print Friendly, PDF & Email
You can leave a response, or trackback from your own site.

5 Responses to “Accurate Scalper Development : What Needs to Be Done to Reliably Develop Scalping Strategies”

  1. jacob says:

    hi daniel,
    interesting article!
    how about scalping strategies made in dukascopy’s java based platform… are those possibly better than mt4 / 5 or just as bad?

    • admin says:

      Hi Jacob,

      Thank you for your comment :o) I am not aware of the backtesting capabilities of the Dukascopy platform. It is worth mentioning that the problem here lies in getting accurate simulations for the systems and not on their execution, which can be quite good for either Dukascopy jforex or MT4 (depending on the broker). If the Dukascopy platform allows you to do backtests with separate Bid/Ask data and you can obtain Bid/Ask (the two separate streams) from Dukascopy then this might be a way to come up with a better approach than Metatrader. However the best thing here – if you can get long term Dukascopy tick data with separate Bid/Ask feeds – is to develop your own backtesting so that you can include random slippage and such other necessary implementations (such as second level market depth or volume checks). Perhaps a better choice might be FXCM’s Strategy trader which can evaluate separate Bid/Ask streams although I am unaware if it allows the importing of tick data. I hope this answers your inquiry ! Thanks again for your comment Jacob :o)

      Best Regards,


  2. jacob says:

    I meant the so called ‘jforex’ platform;-)

  3. Hi Daniel-

    When I first saw your article, I was excited because I thought you were coming over to the ‘Dark Side’. But my hopes were dashed by the end of the article.

    Anyway, all systems have some degree of broker dependency and I agree that scalpers are more broker dependent than others. But as a system developer, don’t you still control the risk/reward ratio? If you set small TP and a large SL, I think you can prove statistically that the TP is much more likely to get hit then the SL – particular at certain times of the day. And if the win/loss ratio is large enough (how about 92%) you can easily overcome the unfavorable risk/reward ratio.

    Maybe you could turn this into some type of challenge. Code a system with an unfavorable risk/reward ratio, great back and demo results and see how it trades live. You might be surprised because as you know back-testing has limitations and to limit your world view based on the limitations of the back-tester seems a bit myopic.

    Finally, I know some professional forex traders that make 2-4% per day day-trading by scalping EUR/USD with a 10-pip TP and SL. Sometimes they let the winners run beyond 10-pips when a trend gets going. Amazing but true!


Leave a Reply

internal_server_error <![CDATA[WordPress &rsaquo; Error]]> 500