Building trading tools that are useful.


Below you will find my offerings for trading. Many are FREE!, including source code. Some items are for sale.

Most things I do are in MQL5. I started with MQL4 but realized that despite its longevity, it would evenutally be phased out. It is my personal recommendation that all beginners start with MQL5.


I am fairly active on the forum. While there is no gaurantee you will receive an answer from me, a well-written question is usually given sound advice from someone on the forum.

If I have saved you time, and/or you found one or more of my tools useful, buy me a cup of coffee!

What's new?


A ForEx Trading Plan

Updated: 2018.10.23!

eBook is currently available on Smashwords

A trading plan is a business plan. When you start a business, you write a business plan. When you become a professional trader, you write a trading plan. This is a full-fledged trading plan, at 40 pages so far. This is like a pamphlet chock full of information. You will learn by reading it. This trading plan will likely save you dozens of hours by giving you a fully-fleshed-out trading plan.
You could call this a "sample trading plan" or an "example trading plan," but this trading plan is NOT: - a bare-bones template - a "how-to" article telling you how to write a trading plan - an article expounding on the virtues of having a trading plan.
This trading plan encompasses the detail you must think about before you will become a successful trader. Although you will probably not trade the same way I do, and you cannot expect to use this trading plan exactly as written, you will gain benefit from reading it. You will likely borrow the parts you need, and you can consider alternatives for what you don't need. This trading plan gives you a starting point. You will see sections on psychology, disaster recovery, tax status, and I will even tell you which broker I chose. While you still have to do the work, you don't have to re-invent the wheel.

MT5 NR7 and NR7IB Indicator

NR7 and NR7IB Indicator

Buy the Full 1.10 version from

This indicator shows the narrowest bar within a range of the past seven bars, which is known as NR7 in the literature.
The range is variable; thus, you can show any range, e.g. NR3, NR5, NR11, etc. For the description of this indicator, I will continue to use the default of seven (7).
If an NR7 bar also happens to be an Inside Bar, it gives a stronger signal. Thus NR7IB are denoted in another color. Sometimes this is known as NR7ID (for Inside Day). I kept the description generic because you can use this indicator on any time frame.
As a bonus, I have added the ability to show the:
  • Highest bar (HI7)
  • Lowest bar (LO7)
  • Widest bar (WI7)
within the range N.
Does not repaint and works in the Tester.

Geany configuration

Geany Configuration For MQL5


Download configuration files (7Zip file; 10KB)
I had been using SciTE for MQL4 for some time. It works, but I was missing some features. So I gave geany a try.
I found someone else's configuration file(s) for geany, I forget where, then changed it to suit my needs for MQL5. I also created my own colorscheme based upon what I used with SciTE for MQL4.

BB-Trend Indicator


The BB-Trend MQL5 Indicator uses two Bollinger Bands™ to signal both trend and direction.

See a Screenshot of BB-Trend. (Indicator is in the sub-window)

Download the MQL5 source code of BB-Trend.

lower = MathAbs(lowerBB(20) - lowerBB(50))
upper = MathAbs(upperBB(20) - upperBB(50))
BBTrend = (lower - upper) / middleBB(20)
I'd enjoy hearing how your use this indicator.

OtherPairs Indicator


OtherPairs MQL5 Indicator

From a given currency pair, determine the base currency, then determine how many of the "other" pairs having that base currency have 20EMA above 50EMA.

In cases that the base currency is actually the quote currency of the test pair, reverse the order, i.e. 20EMA below 50EMA.

For example: USDCAD has base currency USD.

  • If USDCAD has 20EMA above 50EMA, that's +1.
  • If EURUSD has 20EMA below 50EMA, that's also +1, because USD is the quote currency

Download the MQL5 source code of OtherPairs.

This is a good example of how to program a multi-currency indicator in MQL5.

BB-Flat Indicator


The BB-Flat MQL5 Indicator shows when the Bollinger Bands™ are stable or flat.

See a Screenshot of BB-Flat. (Indicator is in the sub-window)

Download the MQL5 source code of BB-Flat.

Force Index for MT5 - Indicator


The Force Index MQL5 Indicator is a direct replacement for the Force Index supplied by MetaQuotes. Their formula is not Elder's formula. This fixes that.

Download the MQL5 source code of Force Index.

Index Finder for MT5 - Indicator


The Index-Finder 1.03 Indicator is a tool to find the index number of any bar. I use this indicator ALL THE TIME! Seriously. One of the simplest indicators that's actually useful.

Download the MQL5 source code of Index Finder for free.

For more information, see the MQL5 post that prompted this tool.

This is perhaps the simplest possible MQL5 indicator. If you are a beginner to programmer, you may find reviewing this code to be instructive.

Simple Moving Median for MT5 - Indicator


The Simple Moving Median 1.04 Indicator is similar to a Simple Moving Average (SMA), except it shows the median instead of the average.

Download the MQL5 source code of Simple Moving Median for free.

For more information, see the MQL5 post that prompted this indicator.

Self-Tuning Envelopes for MT5 - Indicator


Download Version 1.01 version from

The Self-Tuning Envelopes Indicator is similar to the Envelopes indicator that ships with MT5. The key difference is that it tunes based upon how many bars you want to "poke through" the bands.

Sorry, I am not sharing the source code for this indicator.

How to write a multi-timeframe indicator


I wrote a simple test Indicator that synchronizes data from the server and displays the next time frame (nextTF) high on the current chart.

Find the discussion and code example here

Contact Anthony Garot: