Abiroid Customizer Arrows and Scanner

  • Specify your own Custom Indicator
  • Specify Buffer values and create Variables
  • Use those Variables to create your own Buy/Sell Conditions
  • Get Arrows Up/Down Signals
  • See Arrows Signals in Scanners and how many bars back Signal occurred
  • Get Alerts on New Signals (Popup, Push, File or Email)


All products are non-refundable. Since these are digital products. No source code available, only executables. Please read product description carefully before buying.


This is a Custom Indicator Signal Generator tool for Metatrader 4 (MT4)

It contains a Scanner and an Arrows Indicator. The properties .set files are interchangeable for both.

Just make sure to set fewer Max Past Bars for scanner. To ensure it runs smoothly. And use different Unique Prefixes.



  • Specify your own Custom Indicators or MT4 In-Built indicators which have an ex4
  • Specify Buffer values and create Variables
  • Use those Variables to create your own Buy/Sell Conditions
  • Get Arrows Up/Down Signals
  • See Arrows Signals in Scanners and how many bars back Signal occurred
  • Get Alerts on New Signals (Popup, Push, File or Email)

This is a complex but very useful tool. Please read the description carefully before buying.

As, I won’t be able to add any complex types of conditions or comparisons. Only bug fixes and product support will be available.

Hope you enjoy using it πŸ™‚


What it Doesn’t Support:

  • Indicators which don’t provide buffer values are not supported.
  • Changing Properties of Custom Indicators. You can change properties directly in mq4. Or, you could create your own wrapper indicators. With changed property values inside the indicator itself.
  • No complex calculations allowed in conditions. Just left and right values and comparison.


Be Careful:

If your Custom Indicators are too heavy, they might hang the scanner or give you memory issues. So be careful and only load number of pairs/timeframes and MaxPastBars that your Metatrader app can handle.


Free Demo:

Please try out the free Demo before buying. Demo only works for AUDUSD,EURUSD,GBPUSD pairs.

Free Scanner:


Video Tutorial


How To Use:

Set Variables:

You can set a total of 20 Variables.


Var = UniqueName | Indicator | Buffer | Timeframe | Shift

UniqueName: A unique name of variable which should not clash with any other name

Example don’t set one var name “RSI” and another var name “RSI_A”

In this case RSI name is not unique.


Your custom Indicator name without the .ex4 extension. In case your Custom indicator is inside a folder, then specify it with the folder name.

Example your custom Indicator is Traders_Dynamic_Index.ex4 and it’s inside TDI folder, then specify it as:



Buffer number where it should take the value from. Buffers start from 0.

Note that some indicators have hidden buffers. So, if you take Buffer Values from Data Window, and are getting incorrect values, then also verify from mq4 code.

And check SetIndexBuffer functions in Init function. And make sure Buffer numbers are correct.


Timeframe for which you need the variable value for. HTF needs to be of this format.

Default is current timeframe if this is left blank and nothing is specified.

Get chart timeframe values from:


Only use Standard timeframes.

Here are some examples of what variables should look like in this TDI Indicator:


Find values for the buffer for this bar number. Suppose Shift is 0, it will check current bar which is still ongoing.

Default is Shift 1 if nothing is specified. And left blank.


Set Conditions:

You can set a total of 7 Buy and 7 Sell Conditions.

If you have multiple conditions that you want to run on the same bar then set them all in same Condition text.

If you want to check conditions on different bars, then set them separately on “BuyCondition 1” and “BuyCondition 2” and so on.

Wait Bars For All Conditions: It will check all conditions to be true within given number of bars

Is Condition Check Sequential: If true, then it will check all conditions sequentially.

“BuyCondition 1” first. Then “BuyCondition 2” and so on.


Only simple conditions are allowed. No complex math calculations. Only Comparison conditions available.

What each Conditions means:

  • Equal: RSI = 30
  • Not equal: RSI != 30
  • More than or “More than or Equal”
    • x > 10 means x is more than 10
    • x >= 10 means x is more than or equal to 10
  • Less than or “Less than or Equal”
    • x < 10 means x is less than 10
    • x <= 10 means x is less than or equal to 10


  • Value crosses Up and Down: RSI >< 70 means RSI crossed above 70 in previous bar and is now below 70 in current bar
  • Value crosses Down and Up: RSI <> 30 means RSI crossed below 30 in previous bar and is now above 30 in current bar

Predefined Variables:

You can also use these:

PRICE_OPEN: Means Open price for that bar.

PRICE_CLOSE: Close price for that bar.

PRICE_HIGH: High for that bar.

PRICE_LOW: Low for that bar.

EMPTY_VALUE: If a value is not set for a buffer. Then it’s empty. Empty value is integer: 2147483647



Delimeter(&): Means AND

Condition1 & Condition2

means check if Condition1 is true AND then check if Condition2 is true


Delimiter (|): Means OR

Condition1 | Condition2

means check Condition1 is true OR check if Condition2 is true

Max Sequential Conditions allowed in a single Condition are 3. Anything more and Indicator won’t load.



Buy Condition1: RSI<>32 | RSI <> VB_DOWN

Buy Condition2: RSI < MBL & RSI < TSL


Means check for RSI goes below 32 in previous bar and above it in current bar OR RSI goes below the lower Volatility Band and above it.

If either of these conditions is true then the whole Buy Condition 1 is true.

Next check if RSI (green line) is less than MBL (red line). This Buy Condition2 should become true within “Wait Bars” number of bars.

If sequential check is true, then Condition1 should become true before Condition2.


This shows when all conditions meet:

Max 3 Conditions:

E.g.: If you have RSI < MBL & RSI < TSL & TSL < MBL

It’s fine.

But if you have RSI < MBL & RSI < TSL & TSL < MBL & TSL < VB_DOWN

Then indicator won’t load.


Other Settings:

You can keep Max Spread. In case you want to ignore signals if spread is too high. 0 means no check.


  • Popup Alerts by default is true.
  • Push Notification
  • Email
  • Files (or Custom File name)


This will show you all possible set conditions in a corner on your chart like this:


Debug Messages and Arrows:

Show Values in Journal: To see variable values in your Experts tab logs.

Show Debug Text: Shows Debug Text messages on chart as to which conditions were met on which bar. e.g.: B1 for BuyCondition1. S1 for Sell Condition1 and so on.

Debug Detailed: Shows bar number as well along with debug message



Read about common scanner settings here:


Most scanner settings are same as Arrows settings. And .set files for both are interchangeable. Make sure to use Unique different prefixes for both.

And fewer Max Past bars for scanner.

Info Panel is on Right-Upper Corner by default:


Refresh Number of Ticks (0 means off):

Refresh Scanner every number of ticks. If 0, it means scanner will refresh every new bar based on the chart timeframe on which it is loaded.

Shift:Β In case you are using Shift 0 and need to refresh dash at specific intervals, then use this value.

For Shift 1 and above, keep Refresh Ticks to 0. As it’s not needed as indicators value will only change on new bar anyway.

Scanner shows which conditions have matched and which still remain.

If Buy Condition matched, it will turn green.

If Sell Condition matched, it will turn red.

Yellow means condition unmatched and still waiting.

Box highlight color will match the last arrow it had received. Regardless of which signal check is currently ongoing.

MaxPastBars: Scanner will search for MaxPastBars number of bars. And show an Arrow and how many bars back the arrow occurred in brackets.

PastBars_BackAlerts: In case an arrow had occurred scanner will show an alert within these bars. Set it to 1 if you only want last closed bar signal alerts.

If you want even older alerts, set it to your preferred number.

Recalculate Past Bars:Β  If you are using any repainting custom indicators which need to be recalculated every few bars, then set this. Else leave it to 0.

Highlight Open Orders: Based on Buy/Sell or based on Profit/Loss

No highlight. Or HightLight Buy (green) / Sell (red). Or HighLight Profit (green) / Loss (red)


Best Customizer Strategies:

Darvas Boxes Strategy:


Customizer Sample Wrappers:




v1.0 Base Version

v1.1 Redesign. Added 7 Conditions options

v1.2 Added Info about Conditions
– Recalculate past bars

v1.3 Added Show Values In Journal Option

v1.4 – Changed AND Conditions to use & operator
– Added support for 3 sequential conditions in a single Buy/Sell Condition

v1.5 Highlight Open Orders: Added option to Highlight based on Buy/Sell or based on Profit/Loss

No highlight. Or HightLight Buy (green) / Sell (red). Or HighLight Profit (green) / Loss (red)

v1.6 Added a Shift option in variable string

Notify of
Newest Most Voted
Inline Feedbacks
View all comments
2 years ago

This is a for sure one of the greatest product ever. And thank you for make it free for us.
I have one question about the Timeframe of “Var = UniqueName | Indicator | Buffer | Timeframe”
Is it possible to write for example “+1” for next mt4 standard higher TF, “+2” for over next, and so on?.

So we can call like iCustoms function a not-multi-timeframe indicator in higher timeframe.

For example with “+1” and setting “M5,M15,M30,H1”. I can call an indicator in TF “M15,M30,H1,H4”

2 years ago

Thank you Abir.

A further question: can user combine more than 2 conditions in the “Conditions”? For example “(RIS > 80 , CCI > 50) | (TMASlope >0.3 | HMASlope >0.3)”, like common programming language?

1 year ago

Thanks Abir.
i have one question. Does it support condition like price cross indicator. for example price cross MA , and how to write this condition.
thanks for your support!

Reply to  Abir
1 year ago


2 months ago

Hello how i can set up on conditionals, negative numbers?

4 days ago

I’m using arrow Based indicator (Half Trend), Does it Work Based on arrow ?
Can i Get Demo For Abiroid Customizer Arrows and Scanner ?

Last edited 4 days ago by rakulpadmashri
Would love your thoughts, please comment.x