EA Toolkit
- Libraries
- Esteban Thevenon
- Version: 1.35
- Updated: 28 May 2023
- Activations: 5
EA Toolkit is a library that allows any developer to quickly and easily program Advisor experts. It includes many functions and enumerations such as trailing stop, lot, stop loss management, market trading authorisations, price table updates, trading conditions and many more.
Installation + Documentation :
You will find all the information to install this library and the documentation of its functions on this GitHub :
https://github.com/Venon282/Expert-Advisor-Toolkit
WARNING : The installation explained above must be done in order to use this library.
Enumerations :
enum TRAILLING_STOP; enum TRAILLING_STOP_CROSSING; enum HOURS; enum MINUTES; enum POSITIONS; enum ORDERS;
Functions :
long CandlesNumberSince(datetime since); bool CheckMoneyForTrade(string symbol,double lot,ENUM_ORDER_TYPE type); bool CloseFridayPositions(long magic,HOURS h,MINUTES m,bool close=true); bool CloseOrders(long magic,int ORDERS); bool ClosePositions(long magic,POSITIONS pos); void Comment_(long magic,bool comment,double &profit_total[],double &profit_daily[]); int CountDigits(double value,double precision_max=8.000000); datetime DateDiff(datetime a,datetime b); POSITIONS Direction(ENUM_ORDER_TYPE type); POSITIONS Direction(ENUM_POSITION_TYPE type); bool EarlierEqThan(HOURS hour,MINUTES minute); bool EarlierThan(HOURS hour,MINUTES minute); bool FirstTick(MqlRates &candles[]); double GetLot(double risk,int point); double GetLot(double risk,int point,bool money_managment,double fixed_lot); double GetMaxClose(MqlRates &candles[],int from=1,int to=10); double GetMaxOpen(MqlRates &candles[],int from=1,int to=10); double GetMaxPrice(MqlRates &candles[],int from=1,int to=10); double GetMaxSpread(MqlRates &candles[],int from=1,int to=10); double GetMinClose(MqlRates &candles[],int from=1,int to=10); double GetMinOpen(MqlRates &candles[],int from=1,int to=10); double GetMinPrice(MqlRates &candles[],int from=1,int to=10); double GetMinSpread(MqlRates &candles[],int from=1,int to=10); bool LaterEqThan(HOURS hour,MINUTES minute); bool LaterThan(HOURS hour,MINUTES minute); bool MarketOpen(void); double MeanCandlesSize(MqlRates &candles[],int nb); bool ModifyPosition(void); bool Movement(MqlRates &candles[],int mean_sup,int nb_mean_sup,int mean_inf,int nb_mean_inf); bool NewCandle(datetime &previous); int PeriodToInt(ENUM_TIMEFRAMES period); void Profit(long magic,int &last_day,double &capital_daily,double &profit_total[],double &profit_daily[]); void Profit_daily(long magic,double &result[]); void Profit_since(long magic,double &result[],datetime since); double SLBuy(double bid,long SL); double SLSell(double ask,long SL); datetime Start_day(void); datetime Start_day(datetime day); int TotalOperations(long magic); int TotalOperationsBuy(long magic); int TotalOperationsSell(long magic); int TotalOrders(long magic); int TotalOrdersBuy(long magic); int TotalOrdersSell(long magic); int TotalPositions(long magic); int TotalPositionsBuy(long magic); int TotalPositionsSell(long magic); double TPBuy(double ask,long TP); double TPSell(double bid,long TP); bool TradeDays(bool monday,bool tuesday,bool wednesday,bool thursday,bool friday,bool saturday=false,bool sunday=false); bool TradeHours(bool time_filter,HOURS start_hour,MINUTES start_minute,HOURS end_hour,MINUTES end_minute); bool TraillingStop(TRAILLING_STOP sl_type,MqlRates &candles[],long magic,int sl,double &ma_buff[],int sl_min,int sl_quick_q,int sl_start_q,int ratio,int mean_nb_candles,int sl_i,int sl_start_i,int nb_candles_i,int sl_increase,int max_increase,int min_decrease); bool TraillingStop(TRAILLING_STOP_CROSSING sl_type,MqlRates &candles[],long magic,int sl,double &ma1_buff[],double &ma2_buff[],int sl_min,int sl_quick_q,int sl_start_q,int ratio,int mean_nb_candles,int sl_i,int sl_start_i,int nb_candles_i,int sl_increase,int max_increase,int min_decrease); bool TraillingStopFixe(double ask,double bid,long magic,int sl); bool TraillingStopIncreasing(double ask,double bid,long magic,int sl,int sl_start,int nb_candles,int sl_increase,int max_increase,int min_decrease); bool TraillingStopMa(double ask,double bid,long magic,double &buff[],int sl_min); bool TraillingStopMeanMoving(double ask,double bid,long magic,MqlRates &candles[],int ratio,int mean_nb_candles); bool TraillingStopQuickSecurity(double ask,double bid,long magic,int sl,int sl_start); bool UpdateBuffer(int handle,double &buff[],int size,int shift=0); bool UpdateCandles(MqlRates &candles[],int size,int shift=0);
If you want to add new functions in this library, modify some or you found bugs, please inform me by private message
Some robots that use the EA Toolkit :
- https://www.mql5.com/en/market/product/94056