Fechamento de todas as posições longas/curtas de um símbolo
0 respostas
tomas262
6 anos atrás #117105
Olá,
para fechar uma posição comprada ou vendida somente para um símbolo específico, você pode fazer isso:
1) adicione o código personalizado em CustomFunction.mq4 colocado na pasta Wizard
void closeAllOrders(string direction, string symbolStr) { int total = OrdersTotal(); for(int i=total-1;i>=0;i--) { OrderSelect(i, SELECT_BY_POS); int type = OrderType(); bool result = false; se (direção == "LONG" && tipo == OP_BUY && OrderSymbol() == symbolStr) { result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red ); } else if (direction == "SHORT" && type == OP_SELL && OrderSymbol() == symbolStr) { result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red ); } if(result == false) { Alert("Order " , OrderTicket() , " failed to close. Error:" , GetLastError() ); Sleep(3000); } } return(0); }
2) adicionar CustomAction assim no Wizard
closeAllOrders("LONG", "EURUSD");
Isso, por exemplo, fechará todas as posições compradas no EURUSD
Me avise se tiver alguma dúvida