Indicator to EA converter

This simple but powerful project started with a simple idea:
“How to convert any indicator to EA automatically and without programming”. So after many hours of coding and testing, here it is:

The Arrow Hunter EA V04

ArrowHunterEa cover

This EA can turn any of your fancy indicators into an automated trading system with only few clicks of the mouse. No coding or programming is required. Download DEMO version first to test compatibility with your indicator.

Many Great Features:

OnChart mode: In this mode the EA can look for new signals which are displayed by any indicator on the chart. After signal detection the EA will open a trade in direction that is suggested by the indicator

Indicator-bufffer mode: In this mode the EA can read the status on internal indicator buffers and execute new order using a simple “if lower than” and “if greater than” logic, based on the values calculated by an external indicator (not necessary attached to the chart).

Misc: This EA has several different modes of operation like: trade reversal on each new signal, stoploss and takeprofit, trailing stoploss and breakeven mechanism.


What is new in ArrowHunterEA V04 version?
  1. EA controls up to 5 external indicator parameters. 
  2. Indicator parameters / strategy optimization is now possible!
  3. ECN broker support. 
  4. Email or notifications on indicator signal detection.
  5. CloseAfterXBars mechanism.
  6. Advanced money management mechanism.
  7. Optimization using profit-stability factor!


Can I get a demo version?

Yes a DEMO version of this EA is available in the download link below. After a short registration you can test it with your favorite indicator on AUDUSD pair. Read the installation manual below!

Does it run on multiple MT4 accounts?

After purchasing the ArrowHunterEa, you will get your own Licesne Key which will be linked to your personal MT4 account. This means 1 License Key is valid only on 1 MT4 account, at a time. You can always change your MT4 accounts, by sending me an email (without any additional costs).

Which brokers are supported?

The ArrowHunterEA is compatible with all brokers that are compliant with MT4 interface. ECN accounts are also supported.

I’ve downloaded a DEMO version, but still do not know what to do next?

Please read carefully the EA manual that is provided below. If you are not able to find proper EA settings, in order to get ArrowHunterEA working with your MT4 indicator, I am here to help you. Note that some additional costs will be applied: €20 / indicator setting. Just click on the “Contact” link in the menu above.

ArrowHunterEA is great tool, but I still do not know how to find profitable settings

My personal mission is to educate other traders about automatic (or algorithmic) trading. The fact is that most indicators will not be profitable out-of-the-box, since most systems require optimization for each currency pair. Auto-trading is not simple and requires some specialized knowledge. In the near future I will provide my advanced algorithmic trading course to people that follow me, so stay tuned (subscribe to my news letter on the main page)! B.t.w: you can always ask me questions. Just write me an email, I will do my best to answer all your questions. 




How To Get It?

Note: Before you contact me please make sure you have tested and verified your indicator, from my statistics 95% of all indicators (especially Forex) do not work in the long term. This EA is only a converter-tool, your indicator/strategy will decide if it will make money or not.

And if you are tired of losing money trading some simple indicators on shady MT4 brokers, you should try learn real algo-trading using professional tools like: StrategyQuant. Read more HERE! See my live trading results HERE!

Purchase options:

1. If you are interested in this project and need some coding help please see my fiverr gig:-> visit

2. ArrowHunterEa is also available on the MT4 market it can be downloaded directly from MT4! Search for: ‘ArrowHunterEa”

ArrowHunterEA on MT4 market

Note EA has enabled a demo strategy logic, you need to set ‘RunDemoStrategy’ option to ‘false‘ in the EA settings to start using it!

3. And finally if you are interested how to get it for FREE, just let me know, there is a way you can ‘earn’ your free license.



Video 1: Installation of ArrowHunterEA (FromIndicatorBufferMode)

Download example indicator and example setting file here:

Video 2: Indicator parameter optimization example

Download example indicator and example setting file here:

Video 3: Installation of ArrowHunterEA (FromChart mode)

Download example indicator and example setting file here:

Video 4: Advanced EA optimization method part I

Note: The CoensioBBandWidthRatioIndicatorV03 indicator and setting files are available for ArrowHunterEA users only.

Video 5: Advanced EA optimization method part II

Note: The CoensioBBandWidthRatioIndicatorV03 indicator and setting files are available for ArrowHunterEA users only.

Video 6: Advanced EA optimization method part III

Note: The CoensioBBandWidthRatioIndicatorV03 indicator and setting files are available for ArrowHunterEA users only.


User Manual of Arrow Hunter EA (F.A.Q)

1. Installation and activation

2. Overview of EA parameters

3. Common issues / F.A.Q

4. Last words

1.Installation and activation

1a) Make sure the EA is installed in your local MQL/Experts directories. Depending on your system configuration this will be one of the following directories:

Instalation step 2a

Make sure the Auto trading and DLL imports are enabled:

Instalation step 2b

1c) Activate your EA:

DEMO version: If you are running demo version make sure the LicenseKey EA parameter is set to ‘DEMO’ and you have entered valid email address in EmailAddr field. After that go to your mailbox and activate this product by clicking on the provided link in the welcome email. Check your spam!

FULL version: If you have purchased this product you should have received a welcome email together with a valid LicenseKey code. Enter this code into EA LicenseKey parameter and then just run the EA.

Note: If you did not get any email, check your spam folder as well.

2.Overview of EA parameters

Bellow an overview of the EA parameters and functions:

2a) ReverseOnOppositeSignal:
This parameter enables and disables the automatic trade reversal mode. For example if EA is trading ‘long’ and an external indicator displays new ‘short’ entry signal on chart (e.g.: a down-arrow), then the current BUY order is closed and a new SELL is opened immediately.
When ReverseOnOppositeSignal is set to ‘true’ the TakeProfit and Stoploss EA settings need to be configured in such way that they do not interfere with the reversal signals (e.g.: by setting SL and TP to very high values: 200pips)

2b) AnalyzeEveryTick:

This parameter enables and disables the Tick logic execution. When set to ‘true’ all logic is analyzed at each market tick, when set to ‘false’ the logic is analyzed only on new candle. Note that setting this flag to ‘true’ can dramatically slow down backtesting speed. However some indicators provide new signals within last candle and so require fast signal execution.

2c) EmaEntryFilterPeriod:

This parameter enables an additional EMA based entry signal filtering mechanism. The following figure explains its operation:
EMA filtering example

2d) SignalEntryMode:

This parameter has two options: ‘FromChart‘ and ‘FromIndicatorBuffer‘. Those options tell the ArrowHunterEA where it must look for its entry signals.

FromChart mode: In this mode the EA will look for entry signals by analyzing the objects that are displayed on chart by any external indicator. IMPORTANT NOTE: in order to make it work the displayed objects like : arrows, dots, thumbs up/down etc..must be real chart objects, and must be ‘clickable’. You can easily check if the object on chart is clickable by clicking on it and displaying its object parameters (right mouse click). See parameters in point 5.

FromIndicatorBuffer mode: This is an advanced mode of operation. In this mode the EA will access and use the internal buffers of an external indicator with a given name. The indicator buffers and their values can be displayed by pressing ‘CTRL+D’ on chart where a selected indicator is attached. This operation mode is required in case when the attached indicator does not display ‘clickable’ chart objects, but only shows the internal buffer data. Read more at point 3h) and the following.

Demo strategy mode:  In this mode EA will run a built in demo strategy (for demonstration purposes only!). In order to use ArrowHunter functions (Trading based on a configured external indicator), set ‘RunDemoStrategy’ option to ‘false’ in the EA settings!

2e) CheckPreviousCandles: (When SignalEntryMode=FromChart)
This parameter indicates how many previous candles need to be checked for potential entry signals. In most cases we only need to check up to 6 previous bars and look if there are any signals on chart. Note that this parameter becomes handy in case when you need to deal with delaying indicator, that displays delayed signals.

2f) LongArrowCommonString and ShorArrowCommonString: (When SignalEntryMode=FromChart)
This setting tells the ArrowHunterEa, what object names it should analyze while looking for valid entry signals. Note that each ‘clickable’ object has its own name and in most cases the signals share a common string like: “BUY/SELL” or “long/short”. This setting will help EA to filter out only objects that need to be used as entry signals. See figure below, where an object contains a “BUY” string as common signal name:

Convert Indicator To EA

In this case we would set LongArrowCommonString=BUY and ShorArrowCommonString=SELL.

2g) LongArrowCode and ShorArrowCode: (When SignalEntryMode=FromChart)
This setting is very similar to the ‘Long/ShortArrowCommonString’ parameter, however in this case the EA will look for chart objects with a specific code. Example:

Indicator To EA converter

In this case we would set LongArrowCode=233 and ShorArrowCode=234.

2h) IndicatorName: (When SignalEntryMode=FromIndicatorBuffer)
This parameter defines the name of selected external indicator, like: “Scapler V2.0” or “traderdream” etc..This name will be used to call the internal indicator buffers from the EA code. This is an advanced option ans should be used only by experienced users who know how to deal with indicator buffers.

2i) NumberOfBuffer1/2: (When SignalEntryMode=FromIndicatorBuffer)
Those parameters define the internal buffer numbers of the selected indicator. To display the indicator buffers you need to attach the selected indicator on chart and hit ‘CTRL+D’. Below an example of internal indicator buffers:

Indicator buffers example

The figure above shows a typical setup of the internal indicator buffers. In this case we would like to work with Buffer1 (NumberOfBuffer1=0) indicating BUY condition and Buffer2 (NumberOfBuffer2=1) indicating a SELL condition. See next point.

2j)Buffer1/2ValueGreaterThan,Buffer1/2ValueSmallerThan: (When SignalEntryMode=FromIndicatorBuffer)
After that internal buffer access is defined (see previous point), this set of 4 parameters can be used to define desired entry condition. In this example we can see that the indicator changes the value of Buffer1 from 0 to actual bid price during a ‘long’ entry condition, and Buffer2 value is changed from 0 to actual ask price during a ‘short’ entry period. We need to tell the ArrowHunterEA when to execute BUY and SELL trades. For this special example we will set the following:

Open BUY order when:
Buffer1ValueGreaterThan=0 AND Buffer1ValueSmallerThan=10000

Open SELL order when:
Buffer1ValueGreaterThan=0 AND Buffer1ValueSmallerThan=10000

This settings will tell EA when to open BUY and SELL without looking on chart objects.

2k) NumOfParameters

Defines the number of the external indicator parameters that need to be controlled by the ArrowHunterEa. Note that ArrowHunterEa supports up to 5 external parameters. The reason for this limitation is simple: optimizing more than 5 external parameters will result in too many degrees-of-freedom and so it will lead to unwanted curve-fitting.

2l) ParamXType (Param1Type to Param5Type)

Those input parameters are used to specify desired type of the external indicator parameters. The supported types are:
BOOL = boolean
INT3 = integer
DOUBLE3 = double
STRING3 = string
EMPTY3 = no value
Those 5 different input types will make possible to control the majority of the indicators.

2m) ParamXValue (Param1Value to Param5Value)

Those input parameters together with ‘ParamXType’ are used to specify the desired external indicator parameter values.

NumOfParameters = 1;
Param1Type = INT1;
Param1Value = “14”;
Param2Type = EMPTY2;
Param2Value = “”;
Param3Type = EMPTY3;
Param3Value = “”;
Param4Type = EMPTY4;
Param4Value = “”;
Param5Type = EMPTY5;
Param5Value = “”;

2n) CheckPreviousBars (When SignalEntryMode=FromIndicatorBuffer)
This setting tell the EA how many of previous candles need to be analyzed while looking for a valid entry condition. (Similar to ‘CheckPreviousCandles’ setting when SignalEntryMode=FromChart).

2o) EA locking settings:

Some times it is desired to lock the EA during selected marked hours or close all orders at specified date. This is possible using these settings:

AllowedTradingHours: Defines the allowed trading hours separated by comma: 12,13,14,15,16,20,22,
AllowLongTrading: Disables and enables trades in ‘long’ direction
AllowShortTrading: Disables and enables trades in ‘short’ direction
MaxSpreadPoints: Defines the maximum allowed spread in points when opening new trades
TimeToCloseOrders: Defines date and time when all open trades need to be closed
OptimizeUsing1Hour: Defines if strategy tester optimization needs to be done per hour as defined by: ‘OptimizationHour’
OptimizationHour: Defines at what trading hour optimization needs to be performed when ‘OptimizeUsing1Hour’ is set to true.

2p) Common EA settings:

Those are the common EA settings, and are in most cases self-explanatory. Below the list of common EA settings:

MagicNr: Defines your selected magic number
LotSize: Defines selected Lot size for all orders
MmRiskPerc: When different than 0, the EA will calculate the LotSize automatically using the percentage of accounts balance and defined StopLoss. E.g.: set it to 2 to risk only 2% of your account balance with selected StopLoss level.
TakeProfitPips: Take profit level in pips
StopLossPips:  Stop loss level in pips
TrailingStopLossPips: Trailing stop loss step in pips, when set to 0 trailing is disabled
BreakEvenPips: breakeven level in pips from entry price, when set to 0 break even is disabled
CloseAfterXBars: when set to’X’ bars the EA will close all open positions ‘X’ bars/candles after the opening candle
SlippagePoints: slippage level in points
SendEmailOnSignal: When set to ‘true’, email notification is send upon each positive indicator signal detection
SendNotificationOnSignal: When set to ‘true’, a MT4 notification is send upon each positive indicator signal detection

3.Common issues / F.A.Q

3a) ‘I can not download my DEMO EA, and my browser displays strange code’:

This ‘page of code’ is the actual ArrowHunterEA in ex4 format. This means your browser does not recognize this binary ex4 format, in that case you need to safe this page of code as ‘CoensioArrowHunterEaV041.ex4′. Please do not change the name of this file it will not work under a different name.

3b) ‘I enter my email address in
EmailAddr filed but do not received any email’:

Please make sure you enter a valid email address! I see a lot of people entering fake email addresses with hope that EA will activate itself. Check also your spam folder for any messages from:

3c) ‘I got an activation link in email, but the link does not work saying ‘Undefined offset’:

This is probably ‘link formatting issue’ :
“Undefined offset: 1 in /public/sites/ on line 71.”
In order to fix this please copy the whole activation link from email and paste it to any text editor, remove all “white spaces and ‘%20’ codes”, examples:


Solution1: As you can see this is not a valid link, copy it and paste manually to your browser and remove ‘%20’ characters from link:

3d) ‘How can I see that my EA is initialized properly?’:
You can see it by displaying the ‘Experts’ tab on your MT4 platform, if everything is ok you should see the following:

4.Last words

Please note that this project is not an easy EA to work with and it requires some patient and practice. If you will find any bugs or errors please let me know and I will fix it for you. And finally:

If you will find a profitable setting + indicator please share it here with our great community!

[DISCLAIMER]: This site contains valuable and informative high quality material, that can be used for any kind of trading. The presented information is meant for non-commercial, informational and personal purposes only, and all of freely downloadable materials are meant for non-commercial home use only. To the maximum extent permitted by applicable law, in no event shall, or its suppliers be liable for any special, incidental, indirect, or consequential damages whatsoever (including, without limitation, damages for loss of business time, business profits, business information, or any other kind of loss) arising out of the use of, or inability to use the Software developed by, or the failure to provide support services, even if Software, or one of its supplies has been advised of the possibility of such damages. Copyright © 2021 The majority of the links in posts and sidebar are affiliate program links. This means that (most of the time) when you purchase a product linked from my site, owner(s) of this website receive a commission. CFTC RULE 4.41 – HYPOTHETICAL OR SIMULATED PERFORMANCE RESULTS HAVE CERTAIN LIMITATIONS. UNLIKE AN ACTUAL PERFORMANCE RECORD, SIMULATED RESULTS DO NOT REPRESENT ACTUAL TRADING. ALSO, SINCE THE TRADES HAVE NOT BEEN EXECUTED, THE RESULTS MAY HAVE UNDER-OR-OVER COMPENSATED FOR THE IMPACT, IF ANY, OF CERTAIN MARKET FACTORS, SUCH AS LACK OF LIQUIDITY. SIMULATED TRADING PROGRAMS IN GENERAL ARE ALSO SUBJECT TO THE FACT THAT THEY ARE DESIGNED WITH THE BENEFIT OF HINDSIGHT. NO REPRESENTATION IS BEING MADE THAT ANY ACCOUNT WILL OR IS LIKELY TO ACHIEVE PROFIT OR LOSSES SIMILAR TO THOSE SHOWN. [OUR PRIVACY POLICY]: READ HERE