• Overview
  • Reviews
  • Comments (17)

Samurai Jack

The strategy is based on a precise mathematical calculation. It uses martingale and grid trading.

The EA features a smart trade opening algorithm.

The EA is easy to configure. Uses global variables.

EA operation principle

The EA performs complex calculations at each new price arrival. It opens an order if its probability of profit is high. If the price goes in the same direction and the probability of success increases. The EA opens another order with an increased lot. It stops opening orders immediately after the success probability decreases.

Preparing the Expert Advisor

  1. Determine the trading direction. Change the input parameters for Buy and Sell variables accordingly. By default, both buy and sell trading is enabled, Buy=true and Sell=true.
  2. Set the value of the minimum volume per order(the Min_Lot parameter). The volumes of the opened orders will increase based on the value of this parameter.
  3. Set the value of the maximum volume per order(the Max_Lot parameter). None of the opened orders will exceed the value of this parameter.
  4. Set the maximum number of opened orders (the Max_Orders parameter).
  5. If necessary, it is possible to trade a fixed lot using the Fix_Lot parameter. Set Fix_Lot=true. The volume of all opened orders will be equal to the value of the Min_Lot parameter.
  6. Set the value of the Martin parameter. The order volumes start growing from the value of the Min_Lot parameter up to the value of the Max_Lot parameter. The Martin parameter adjusts the rate at which the volumes are increased. The recommended values for the Martin parameter vary in the range from 0 to 100. At the value of Fix_Lot=true all orders are opened with the same volume equal to the value of the Min_Lot parameter.
  7. If necessary, it is possible to enable the filter for maximum allowed spread. Set Spread=true. In this case, the trading will only be performed when the value of the current spread does not exceed the value of the Spread_Max parameter in points. For example, Spread_Max=50.
  8. It is recommended to use trailing of the StopLoss levels. To do that, set Trailing=true. In this case the StopLoss level of the orders will be trailed at the distance of TrailingStop parameter value in points from the price. For example, TrailingStop=100.
  9. Set the values of the StopLoss and TakeProfit parameters in points.


  1. Before using on a live account, test the EA on history data;
  2. If possible, use VPS or hosting server with minimal network latency to the broker's server;
  3. For best results, use the leverage of 1:100 and more;
  4. Since the EA uses global variables. It is not possible to perform trading and EA testing at the same time.

Originally the EA had been developed for trading the EURUSD pair. But it also correctly works on other pairs with 4 and 5 decimal places.

If you have any questions, please contact me. Below are a couple of screenshots of testing on history from the beginning of 2016 on the EURUSD pair.

Best regards, Dmitry.

No reviews