USDJPY Robot is a Safe Expert Advisor FREE to Download. It works based on Intraday trading from trend levels. It has four different trading strategies. Thanks to the work of 4 strategies simultaneously, a smoother profitability graph is obtained for any market behavior.

This Safe Forex EA was developed for trading on USDJPY only in a 1-hour time frame. You don’t need to configure anything; the default settings are optimized for USDJPY. Use accounts with a spread of 0-3, and this will increase your profit.

It can trade with a fixed lot or use an auto lot and increase the size of the transaction automatically according to the specified criteria. This Expert Advisor impresses with its profit even on tiny deposits and has a low maximum drawdown when trading. It does not use dangerous trading methods like martingale, averaging, grid, HFT and etc. All transactions are always protected by a small Stop Loss and take profit.

The most important part of an EA review is obviously the trading history. And for this Safe Forex Robot, there are MQL5 copy trading signals accounts three years old at the time of writing this. This Account has been running since December 2019, with an average monthly account growth of 20% with a maximum drawdown of 4%. USDJPY Robot has a steady account growth rate with a low risk of losing your capital.

Please test in a demo account first for at least a week. Also, please Make yourself familiar with and understand how the USDJPY EA works, then only use it in a real account.

Recommendations for this Safe Expert Advisor

  • Minimum account balance of 100$.
  • Work Best on USDJPY pair. (Work on any pair)
  • Work best on H1 TimeFrames. (Work on any TimeFrame)
  • Safe Expert Advisor should be online 24 hours for the best performance. Recommend using a VPS (Reliable and Trusted FOREX VPS – FXVM)
  • A low Spread between 0-3 is recommended for this USDJPY EA (Find the Perfect Broker For You Here)

Min Deposit of 1$
Allow Cent Acount
Levergae up to 1:3000


Min Deposit of 20$
Allow USA Traders
Levergae up to 1:500

Input Parameters
  • 1. SETTINGS _ FOR OPTIMIZATION – In this block of functions for ease of testing and optimization. Keep in mind that the tester in the optimization mode sometimes gives false results – double-check in the normal test mode!
  • Quick Testing = false; Function for quick testing and optimization. The Safe Expert Advisor iterates upon the arrival of each tick. If you enable the “Quick Testing = true” function, iteration will occur once per minute. The settings selected in the “Quick Testing = true” mode must be rechecked in the “Quick Testing = false” mode.
  • optimization=false; With “Optimization = true”, it works block settings 1.When “Optimization = false”, settings blocks 3, 4, 5, and 6 work.
  • year=0; year number. Year = 0 – all years. If you set it in optimization mode: start 2010, step 1, and end 2021. Get test results for each year in one table.
  • month = 0; month number. Month = 0 – all months. January = 1 … December = 12.If you set it in optimization mode: start 1, step 1, end 12. Get test results for each month in one table.
  • WeekOfYear = 0; the Week number of the year. WeekOfYear = 0 – all weeks. In the year 1-53 (54) weeks, the beginning of a new week is Monday (or January 1). If you set it in optimization mode: start 1, step 1, end 54. Get test results for each week of the year in one table.
  • DayOfWeek = 7; Number of the day of the week. DayOfWeek = 7 – all days of the week. Monday = 1 … Saturday = 6, Sunday = 0.If you set in optimization mode: start 0, step 1, end 6. Get the test results for each day of the week in one table.
  • Strategy = 0; strategy number. If you set it in optimization mode: start 1, step 1, end 4. Get test results for each strategy in one table.
  • 2. GENERAL SETTINGS – This block contains general settings for all strategies.
  • TimeBroker, (UTC+ ) = 3; The time zone of your broker’s server in UTC.
  • Sleep, milliseconds = 100; Order modification delay function. On ECN accounts, an order is first opened, and after it is opened, it is modified (stop loss and take profit are set). With some brokers, the server will reject a modification request if it arrives very quickly after the order is placed. If your broker’s server does not allow you to set stop loss and take profit, increase “Sleep, milliseconds = 1000”.
  • SpreadMax = 30.0; The maximum spread at which an order is placed.
  • slippage=30; Allowable slippage when opening a market order. This function must be in every adviser. In this Safe Forex EA, trading is carried out using pending orders, so this function is not used.
  • Delete objects from the chart = false; Enable/disable the removal of objects from the chart.
  • DeviationCoefSL = 2.0; Allowed slippage when converting a pending order to a market order. Measured in stop loss levels. This function closes an order if, when converting a pending order into a market order, the opening price of the order has moved more than the stop loss level*2.
  • 3. TRADING STRATEGIES – Enable/disable strategies in this block. In USDJPY EA version 4, strategies 1 and 2 worked. In Safe Forex Robot version 5, strategies 1, 2, and 4 worked. In USDJPY Robot version 6, strategy 4 worked. The strategies do not depend on each other in any way. The strategies are the same; only the settings differ. Any strategy can be disabled. Optimize each strategy separately.
  • Strategy 1 = true; Safe Forex Robot Enable/disable strategy 1.
  • Strategy 2 = true; Safe Forex EA Enable/disable strategy 2.
  • Strategy 3 = true; USDJPY Robot Enable/disable strategy 3.
  • Strategy 4 = true; Safe Expert Advisor Enable/disable strategy 4.
  • 4. TRADING MONTH – Enable/disable trading by months in this block.
  • January(…December) = true; Enable/disable trading by months.
  • 5. TRADING WEEK OF THE YEAR – In this block, enable/disable trading by the weeks of the year.
  • Week_1 (Week_1 … Week_54) = true; Enable/disable trading by weeks of the year.
  • 6. TRADING DAYS OF THE WEEK – In this block, enable/disable trading by the day of the week.
  • Monday(…Friday) = true; Enable/disable trading by days of the week.
  • Saturday(Sunday)= false; The function may be needed to work with cryptocurrencies.
  • 7(8, 9, 10). STRATEGY 1(2, 3, 4) SETTINGS – In blocks 7, 8, 9, and 10, settings for each trading strategy. The settings have been selected since 2010 for the USDJPY instrument.
  • Risk, % = 0.75; The maximum percentage of risk from the deposit size per 1 order. We recommend not exceeding the total risk for all strategies = by 3%. Our clients with large capitals set the total risk for all strategies = 0.5% (per strategy = 0.125%).
  • FixLot (Risk, % = 0) = 0.01; Fixed order volume. Feature for ease of testing and optimization. For this function to work, you need to disable the Risk function, % = 0.0 (set the value to “0”).
  • TakeProfitCoef = 16.0; The coefficient that affects the installation of taking Profit. For SELL STOP orders, take profit can be = 0 if the calculated level is < 0. The recommended change step is 0.1.
  • StopLossCoef = 0.16; Coefficient affecting the Stop setting Loss. If your broker’s spread is greater than four pips, optimize to find the right value. Optimize each strategy separately. The recommended change step is 0.01.
  • OpenOrderCoef = 2.0; The coefficient that takes into account the position of the price relative to the extremums affects the placement of pending orders. Extremes are determined by the functions: TimeFrames, BarCount, and Bar. The recommended change step is 0.1.
  • magic=1; The unique number of the adviser’s orders.
  • Comment = S1; R = 0.75%; Commentary on the advisor’s orders.
  • TimeFrames = PERIOD_D1; The function calculates the price for placing orders. The period of bars for which to calculate extremums.
  • BarCount = 2; The function calculates the price for placing orders. The number of bars for which to count extremums.
  • Bar = 1; The function calculates the price for placing orders. Index of the bar from which the calculation of the extremum starts (the current bar has the index “0”).
  • OrderCoefLevel = 0.0; The function calculates the price for placing orders. This function shifts the price of placing an order relative to the extremum. You can set negative values. If your broker’s spread is greater than four pips, optimize to find the right value. Optimize each strategy separately. The recommended change step is 0.01 (-0.01).
  • EveningCoef = 0.087; A coefficient that changes the tactics of maintaining open orders in the evening.
  • TralTF = PERIOD_H1; Coefficient influencing at trailing stop. Period of bars for trailing stop. Works in conjunction with the function: TralCoef.
  • TralCoef = 2; Coefficient affecting the Trailing stop. The number of the bar on the extremum of which the stop loss moves. Works in conjunction with the function: TralTF.
  • BoomCoef = 0.03; Coefficient affecting the Trailing stop. The function controls the stop loss in the breakeven area. Works in conjunction with the functions: BoomMinDistCoef, BoomMaxPrc, and TralBoomStep.
  • BoomMinDistCoef = 0.4; Coefficient affecting Trailing stop. The function moves the stop loss to the no-loss area. Works in conjunction with the functions: BoomCoef, BoomMaxPrc, and TralBoomStep.
  • BoomMaxPrc = 99; Coefficient affecting the Trailing stop. The maximum approximation of the stop loss to the market price. Measured in%. Works in conjunction with the functions: BoomCoef, BoomMinDistCoef, and TralBoomStep.
  • Tral BoomStep = 20; trailing stop step. Works together with functions: BoomCoef, BoomMinDistCoef, BoomMaxPrc. Some brokers do not allow you to change the stop loss level of this Safe Forex Robot by less than 20 pips.
  • StartTradeHour = 21; Safe Expert Advisor starts time (UTC 0), hours. Corrected by the function: TimeBroker, (UTC+ ).
  • StartTradeMinute = 00; Safe Forex EA start time (UTC 0), minutes.
  • FinishTradeHour = 17; Pending orders deletion time (UTC 0), hours. Corrected by the function: TimeBroker, (UTC+ ).
  • FinishTradeMinute = 59; Pending orders deletion time (UTC 0), minutes.
  • EveningTacticsHour = 18; Time to change the tactics of maintaining open orders (UTC 0), hours. Corrected by the function: TimeBroker, (UTC+ ).
  • EveningTacticsMinute = 00; Time to change the tactics of maintaining open orders (UTC 0), minutes.
  • CloseAllHour = 19; Open orders closing time (UTC 0), hours. Corrected by the function: TimeBroker, (UTC+ ).
  • CloseAllMinute = 00; Open orders closing time (UTC 0), minutes.