Expert Advisors • Indicators • Scripts • Libraries

MQL.RobotFX.org is the biggest collection of MetaTrader expert advisors (MT5 & MT4), indicators, scripts and libraries that can be used to improve trading results, minimize risks or simply automate trading tasks

MetaTrader 5 Libraries | Basic GridManager Library

MetaTrader Experts, Indicators, Scripts and Libraries

The library contains basic public methods to manage grids:

public:                       GridManager(ENUM_GRID_DIRECTION direction, double grid_initial_lot_size, int grid_gap_points, double grid_profit_percent);                      ~GridManager() {};     void              SetGridMagicNumber(ulong magic);     void              SetGridMaxDD(double max_dd_percent);     void              SetGridMultiplier(double lot_multiplier);     void              Start(void);     void              Update(void);     void              CloseGrid();     double            GridPnL();     int               CountPositions();

In above code:

  • MaxDD stands for "maximum allowed drawdown". This value is disabled by default but using the Set method will activate it. This is a value in %balance.
  • Start method starts a new grid if it is not already running.
  • Update checks for new entries and possible exits.

This is a sample code of EA operating based on GridManager Object:

#include <GridManager.mqh>  GridManager *buy_grid;    int OnInit()    {     buy_grid = new GridManager(GRID_BUY, 0.01, 100, 1);     buy_grid.SetGridMagicNumber(100);      buy_grid.SetGridMultiplier(1.5);      buy_grid.SetGridMaxDD(5);     return(INIT_SUCCEEDED);    }    void OnDeinit(const int reason)    {     delete buy_grid;    }    void OnTick(void)    {     bool buy_condition=true;     if(buy_condition)        buy_grid.Start();     buy_grid.Update();    }    
49186