Fx Diamond EA designed to achieve consistent results through a combination of trend and counter-trend strategies. The advisor features intelligent trading logic, adaptive capital management and the ability to trade successfully in various market conditions.

Attention!!! Please read carefully the rules for installing the advisor, and install it correctly. Before publishing, we check everything and publish only those advisors that work on our accounts !!! At least at the time of this article’s publication. Also, please note that the name of the adviser has been changed, you can find the original name of the adviser in our telegram channel https://t.me/FX_VIP/2522

Developer price197 USD FREE for you
TerminalMT4
Currency pairEURUSD, GBPUSD, USDJPY, USDCHF
TimeframeM15
Money managementAt least 500 currency units for each pair
Recommended brokersIC Markets
For advisor recommended to use VPS 24/5vps24hour – Excellent inexpensive VPS for $3 per month you can use up to 3 terminals!!!

Backtesting:

Backtesting was conducted on the EURUSD currency pair with default settings, you can see the results in more detail below

Settings:

Description of settings:

==== General Settings ====

  • LongTrades – true/false to enable/disable the long trades.
  • ShortTrades – true/false to enable/disable the short trades.
  • AutoGMT_Offset – true/false – Change to false only if you want to use the ManualGMT_Offset in your live trading. In this case, please ensure that you have used the correct ManualGMT_Offset for your broker. Auto GMT works only if our website url is added on your terminal “Allow WebRequest for listed URL” configuration. To configure this: Go to MT4/MT5 Terminal → Tools → Options → Expert Advisors tab → “Allow WebRequests for listed URL” and add: https://www.forex-diamond.com
  • ManualGMT_Offset – For this parameter you have to set the winter GMT offset of your broker. This parameter is very important in case that you have disabled the AutoGMT_Offset=false and when you backtest the Forex Diamond EA. If you set wrong value, then you may get unexpected results.
  • DST_Usage – This parameter is one of the most important parameters because it tells to Forex Diamond EA how to deal with the GMT offset. You can set 3 different values on this parameter. Actually, it is a drop-down list and you only need to choose the correct value for your broker. Check below:

– If your broker has one GMT offset year-round (your broker never switches to summer/winter time) you must select DST_Usage=NONE.

– If your broker switch to summer/winter time based on EU DST (summer time from last Sunday of March till last Sunday of October) then set it DST_Usage=EU_DST.

– If your broker switch to summer/winter time based on US DST (summer time from second Sunday of March till first Sunday of November) then set it DST_Usage=US_DST.

  • EA_Comment – enter comments here if you’d like to record comments about your Forex Diamond trades. 
  • MaxSpread – maximum allowed spread in standard 4 digit pips. You can also enter partial values. 
  • Slippage – maximum allowed slippage in standard 4 digit pips. You can also enter partial values.
  • StealthMode (true/false) – in this mode, StopLoss and TakeProfit levels in program logic are hidden (i.e. brokers cannot see them). If you use this mode, StopLoss and TakeProfit orders are not located in the trading server, which means that if your trading terminal is not connected, or if the robot is not working, your orders are not protected.
  • NFA (true/false) – use “true” if your broker is NFA regulated. This mode will execute only one trade at a time. 
  • No_Hedge (true/false) – use “true” if you wish to cancel all hedge trades.
  • Max_Orders_Total – maximum permitted (total for all three systems) number of Forex Diamond open trades at the same time. 

– Forex Diamond can open a maximum of 9 trades at a time (up to 3 trades for each system). Having nine trades open at the same time is quite  rare and some of the trades will be hedged; however, 3-6 trades at a time is normal, so you should consider your trading volumes carefully in this context. 

– If you feel nervous about having several trades open at the same time, you can limit Max_Orders_Total to 3 or even 1 – Forex Diamond will stay profitable, but the profit factor, and of course the total profit, will be reduced. However, it would be more reasonable to keep the Max_Orders_Total to 9 and simply halve or quarter your usual trading volume – this will keep the profit factor and the efficiency of Forex Diamond. In the table below you can easily see the relationship between Max_Orders_Total, the total profit and profit factors.

==== Signal 1(2,3) Settings ====

  • Signal_1(2,3) – (true/false) – activates or deactivates the signals of systems 1,2 or 3. 
  • Magic_1(2,3) – a unique identifier through which Forex Diamond recognises and manages its own positions. If you use other expert advisors on the same account, please ensure that each of them has a distinct, unique identifier. Please note that Magic is different for all three Forex Diamond systems!
  • RecoveryMode_1(2,3) (true/false) – when RecoveryMode is activated, an algorithm effectively compensates the current drawdown by smoothly increasing trading volumes. This mode is active only when AutoMM_1(2,3) is greater than zero. Before activating RecoveryMode, please bear in mind that it can increase the risk to your account. For this reason, RecoveryMode should only be used at low values of the AutoMM_1(2,3) parameter. We recommend RecoveryMode with AutoMM_1(2,3) values below 1. 
  • FixedLots_1(2,3) – the extent of the fixed trading volume of systems 1,2 and 3. If you use AutoMM>0, the value of the FixedLots_1(2,3) parameter will make no difference. 
  • AutoMM_1(2,3) – automatic risk management activates at values greater than zero:

– Example 1: at AutoMM = 0.5, Forex Diamond opens positions equal to 0.05 lots (5,000) given account extent of 10,000. This places 0.5 per cent of the account extent at risk per individual transaction at a loss of 100 pips.

– Example 2: at AutoMM = 2, Forex Diamond opens positions equal to 0.2 lot (20,000) given account extent of 10,000. This places 2 per cent of the account extent at risk per individual transaction at a loss of 100 pips.

If you use Forex Diamond on more than one currency pair, you should seriously consider reducing the risk levels for each currency pair in proportion to the number of pairs you are trading.

  • AutoMM_Max_1(2,3) – the maximum permitted risk expressed as a percentage of the account per individual transaction, calculated on the basis of a 100 pip loss. When RecoveryMode is used, this parameter limits the upper value of the risk. 
  • Max_Orders_1(2,3) – maximum permitted number of open trades at the same time for each system 1,2 or 3. 
  • Trade_Interval_1(2,3) – minimum time interval (in minutes) between the trades of the separate Forex Diamond systems.

==== Expert Settings ====

  • ExecuteOnEveryTick (true/false) – Forex Diamond is designed to calculate and execute all signals on a base of one-minute-bar open price. However, there is an option for advanced traders who may need a signal calculation and execution on every tick. This feature opens a field for real-tick experiments with the  ExtraPipsSignal_1(2,3) parameters.
  • CloseOnlyOnProfit – (true/false). Set it TRUE if you wish Forex Diamond EA to close the trades always on profit or when the price hits full stop loss level.
  • TakeProfit – fixed Take Profit value in standard 4 digit pips. Most Forex Diamond trades are closed by trading logic, so the fixed Take Profit is there to provide additional options for experts.
  • Min_StopLoss – minimum StopLoss in standard 4 digit pips.
  • Max_StopLoss – maximum StopLoss in standard 4 digit pips. 

-The actual Stop Loss is dynamically calculated on the basis of current market volatility, so the purpose of the Min_StopLoss and the Max_StopLoss values is to limit the actual dynamically calculated Stop Loss. These parameters also provide an option for advanced traders to use their own fixed Stop Loss if qual values of Min_StopLoss and Max_StopLoss are chosen.

  • ReverseProfit – is important for the performance parameter, and means a minimum pips profit in which the position will be closed if the price indicates a reversal. The default ReverseProfit value is zero, which means that Forex Diamond will use a value broadcasted by our server. If you enter a value greater than zero this will overwrite the automatic value. Reasonable ReverseProfit values are values between 5 and 15 pips. 
  • ExtraPipsSignal_1(2,3) – a threshold value (in standard pips) that controls the position opening of the Forex Diamond system 1(2,3). If for example you chose a positive value of 2 pips, the position opening logic will wait for 2 pips market movement against the initial signal before opening a position. This can increase the average profit of the system, but can also result in you missing some good trades. If you keep the default zero value, Forex Diamond will use specific values for ExtraPipsSignal_1(2,3) for each one currency pair.
  • Use_Trend_Filter (true/false) – activates/deactivates a trend filter of all three signals. 

– The trend filter can increase Forex Diamond’s Profit Factor and Expected Payoff, but this may be   at the expense of total profit and trading frequency.

  • Trend_Period – the period of the trend indicator.
  • Trend_Strenght – the minimum distance (in pips) between the price and the trend indicator, below which trades will not be taken.

The table below contains information about how the Trend Filter option and the Trend_Strength parameter affect several important performance parameters. These include: total profit, trading frequency, profit factor, expected payoff and drawdown.

==== Monday-Friday Settings ====

  • MondayStartHour – Forex Diamond will open positions after this hour on Mondays.
  • FridayExit (true/false) – if you wish to limit Forex Diamond trading on Friday, use FridayExit=true.
  • LastTradeHour – Forex Diamond can trade until the end of this hour on Friday.
  • ExitHour – Forex Diamond will close all open positions at this time on Friday if FridayExit is used. 

==== News Filter Settings ====

  • Avoid_News (true/false) – if you wish to use the news filter function, you should set Avoid_News=true
  • Include_Medium_News (true/false) – if you wish to avoid the medium impact news too, you should set Include_Medium_News=true.
  • Wait_Before_News – the number of minutes before the news event, during which trading will be switched off.
  • Wait_After_News – the number of minutes after the news event, during which trading will be switched off

==== Protection Settings ====

  • Max open lots – The total allowed lot size for all open trades.
  • Maximum daily loss (currency) – Set a maximum limit on the amount you can lose in a single day to protect your capital.
  • Maximum daily drawdown % – Define the maximum percentage of your balance that can be lost in one day.
  • Daily reset hour (terminal) – Daily reset hour. This is usually 00:00 but if your broker has different reset hour then you can set any hour. Have in mind that if you change the hour directly on the control panel it will be effective after the new hour is reached! 
  • Minimum Equity (currency) – Establish a minimum equity level that, when reached, triggers protective measures.
  • Maximum Equity drawdown % – Limit the maximum percentage drawdown of your total equity to prevent significant losses.
  • Maximum Equity (currency) – Set an upper limit on your equity to help manage gains and protect from volatile shifts.

The default values (zero) mean that the respective protection is not active.

Some traders need such protections in “Prop Firm” challenges.

We will refrain from recommending specific values. It is the responsibility of the traders to set these parameters correctly based on their broker restrictions.

We are obliged to inform you, that using such protections could decrease the overall profit in long-term.

Each trader must decide for himself whether to use these protections and at what values.

==== Randomization Settings ====

The Randomization System enables variability in the EA’s execution logic by randomly adjusting the price levels and timing of trade entries and exits. This helps your trades appear less uniform and more individualized—even when using similar settings as other traders.

This is especially important for traders working with proprietary firms, where duplicated strategies may lead to disqualification or restrictions.

>>> Exit Randomization Settings

  • RandomizeExit (true/false) – Enable or disable exit randomization logic.
  • StopLossRange (Default: 5 pips) – Randomly modifies the StopLoss level within a ±5 pips range.
  • TakeProfitRange (Default: 5 pips) – Randomly modifies the TakeProfit level within a ±5 pips range.

>>> Entry Randomization Settings

  • RandomizeEntry (true/false) – Enable or disable entry randomization for trade opening time and price. 
  • OpenTimeMaxDelay (Default: 60 seconds) – Random delay (up to 60 seconds) for executing a trade.
  • OpenPriceMinDeviation (Default: 5 pips) – Minimum deviation from the original entry price.
  • OpenPriceMaxDeviation (Default: 10 pips) – Maximum deviation from the original entry price.

Important Notes About the Randomization Feature

1. Entry Randomization Works Only in Live Trading

Due to platform limitations (MQL4/MQL5), entry randomization does not function in backtesting. However, we’ve rigorously verified its performance in live market conditions.

2. Exit Randomization Can Be Backtested

You can verify its effectiveness by running multiple backtests and observing different outcomes, confirming the randomness in action.

3. Parameter Recommendations

Using smaller deviation ranges (e.g., 1–5 pips) may offer higher accuracy, but be aware of potential missed trades.

Larger deviation ranges (e.g., 5–50 pips) offer greater randomness but may lead to less favorable trade execution.

Adjust settings carefully based on your trading strategy and goals.

Tips for Achieving Truly Unique Trading Behavior

To further individualize your trading and avoid detection by prop firm monitoring systems, we recommend:

1. Customizing the EA_Comment: Replace the default EA name with a personal tag or custom phrase.

2. Using Unique Magic Numbers: Helps differentiate trades from other accounts using the same EA.

3. Running a Secondary EA: Introducing another EA on the same account can further diversify your trade footprint.

Functionality tested, in build 1440 working.

Reminder: As with every trading system, always remember that forex trading can be risky.  Don’t trade with money that you can not afford to lose.  It is always best to test EA’s first on demo accounts, or live accounts running low lotsize.  You can always increase risk later!

Recommend, in order not to miss important news and updates on the site, subscribe to our telegram channel https://t.me/Fx_VIP

DOWNLOAD EA Fx Diamond

Fxd