If we take a look at professional trading platforms they all have a native market scanner such as:

Unfortunately, MetaTrader doesn't have it natively implemented, either MT4 or MT5.

If all of these professional platforms have a market scanner this means it is something that is needed for professional trading.

What is a market scanner? Why should you start using it?

In simple words, a market scanner is a configurable tool that allows you to create your own custom rules for any timeframes and any symbols to scan the entire market giving you an entire market view at a glance. This using any kind of indicators.

This is very useful in manual trading but not only... also in automatic trading as we will see...

Let's start with an example to see what it is and how it works in order to understand why you should start using it.

A simple strategy example

We start with simple examples.
Let's assume you have a simple strategy based on two moving averages:

  • SMA(15)
  • SMA(30)

With a simple strategy to enter when there is a cross, so after the cross you can have the following two cases:

  • SMA(15) > SMA(30)
  • SMA(15) < SMA(30)

In the first case we are in an up trend, in the second one we have a down trend. So, assuming we want to use just a simple trend following strategy we will have this kind of situations:

  • SMA(15) > SMA(30): we enter long (bullish)
  • SMA(15) < SMA(30): we enter short (bearish)
Simple SMA cross example

Of course, this is a simple strategy and we are looking only at entering conditions without keeping into consideration exit conditions.

But imagine being a manual trader using this strategy which is very simple to check, and you want to do it on different timeframes (for multi-timeframe analysis advantages) and on different symbols, how many times do you need to do it? You risk missing opportunities for the time wasted in searching operations and for human errors. This could be very frustrating.

It could be great to reduce this time and dedicate your effort to activities that bring value, such as real analysis activities and not stupid manual checking.

A possible solution

To do that you can develop a custom indicator or maybe an automatic trading strategy (expert advisor) so the trade management is fully automatized.

void OnTick()
      if(iMA(NULL, 0, 15, 0, MODE_SMA, PRICE_CLOSE, 0) > iMA(NULL, 0, 30, 0, MODE_SMA, PRICE_CLOSE, 0)){

bool CheckNoOpenOrders(){
	//trivial function to check if there are open orders, it's not implemented since it's out of scope of the article
Simple SMA cross automatic trading strategy (only entering conditions and done only for one symbol and one timeframe per time) in MQL

But you could tackle the following issues:

  • Develop a custom indicator or a custom automatic trading strategy is time-consuming
  • Maybe you do not have the technical skills needed to do it and you have to pay an external developer. That is a cost for you
  • You want to continuously rechange some basic ideas of the strategy
  • You just want to quickly analyze your basic ideas of your candidate strategy to decide whether investing time and money to develop an automatic system for that strategy. So also those who use automatic strategies have these issues
  • Or you are just a manual trader that wants to concentrate its effort looking only at charts where there is an opportunity

And this just with a simple example... imagine the effort required and issues for a complex strategy.

The market scanner allows you to perform this kind of checks (and also complex ones) for any symbols and for any timeframes at a glance without any programming skills. Continue reading to go deeper into it.


We have started to see what a market scanner is, what it can do and some simple use cases, where a market scanner is needed.

Continue to Part 2 to learn how it works analyzing also complex examples.

Don't have MT4Professional yet?