Usamos este sistema de trading como una herramienta eficaz para maximizar tus resultados en el mercado.
Para su funcionamiento, se requieren 3 entradas, que son las siguientes:
- Objetivo de Beneficio
- Pérdida Máxima
- Número Mágico
extern double inTargetProfitMoney = 10; //Objetivo de Beneficio ($) extern double inCutLossMoney = 0.0 //Pérdida Máxima ($) extern int inMagicNumber = 0 //Número Mágico
Al ejecutar este sistema de trading, primero se llamará a la función OnInit(). En esta etapa verificaremos las entradas y la inicialización de variables.
int OnInit() { //--- if(inTargetProfitMoney <= 0) { Alert("Entrada no válida"); return(INIT_PARAMETERS_INCORRECT); } inCutLossMoney = MathAbs(inCutLossMoney) * -1; //--- return(INIT_SUCCEEDED); }
Cada vez que se produzca un movimiento de precios (tick), se llamará a la función OnTick().
void OnTick() { //--- double tFloating = 0.0; int tOrder = OrdersTotal(); for(int i=tOrder-1; i>=0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if(OrderMagicNumber() == inMagicNumber) { tFloating += OrderProfit()+OrderCommission() + OrderSwap(); } } } if(tFloating >= inTargetProfitMoney || (tFloating <= inCutLossMoney && inCutLossMoney < 0)) { fCloseAllOrders(); } }
En la función OnTick, se calculará continuamente el beneficio o la pérdida total. Luego, se cerrarán todas las órdenes que cumplan con el objetivo o el límite de pérdida máxima.
void fCloseAllOrders() { double priceClose = 0.0; int tOrders = OrdersTotal(); for(int i=tOrders-1; i>=0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if(OrderMagicNumber() == inMagicNumber && (OrderType() == OP_BUY || OrderType() == OP_SELL)) { priceClose = (OrderType()==OP_BUY)?MarketInfo(OrderSymbol(), MODE_BID):MarketInfo(OrderSymbol(), MODE_ASK); if(!OrderClose(OrderTicket(), OrderLots(), priceClose, slippage, clrGold)) { Print("ADVERTENCIA: Cierre fallido"); } } } } }
Para obtener información más detallada y compartir educación sobre el código MQL4, por favor únete a nuestro grupo de Telegram.
Related Posts
- Utilidad Ligera de Trading Manual - Sistema de Trading para MetaTrader 4
- Estrategia de Trading con Patrón de Wedge en MT4 - Sistema de Trading Automático
- Zone Recovery EA para MT4 – Estrategias de Trading Automatizado Basadas en Heikin Ashi
- EA Stochastic y Bandas de Bollinger Multi-Timeframe para MetaTrader 4 – Estrategia de Trading Automatizada
- EA de Martingala con Filtro de Velas para MT4 – Estrategia de Trading Automatizada