Código:
#property strict
extern int Slippage=0;
//+------------------------------------------------------------------+
//| Creo y posiciono el Boton |
//+------------------------------------------------------------------+
int OnInit()
{
ObjectCreate(0,"Boton",OBJ_BUTTON,0,0,0);
ObjectSetInteger(0,"Boton",OBJPROP_COLOR,clrWhite);
ObjectSetInteger(0,"Boton",OBJPROP_BGCOLOR,clrGreen);
ObjectSetInteger(0,"Boton",OBJPROP_XDISTANCE,3);
ObjectSetInteger(0,"Boton",OBJPROP_YDISTANCE,80);
ObjectSetInteger(0,"Boton",OBJPROP_XSIZE,175);
ObjectSetInteger(0,"Boton",OBJPROP_YSIZE,48);
ObjectSetString(0,"Boton",OBJPROP_FONT,"Arial");
ObjectSetString(0,"Boton",OBJPROP_TEXT,"Cerrar Todo");
ObjectSetInteger(0,"Boton",OBJPROP_FONTSIZE,11);
ObjectSetInteger(0,"Boton",OBJPROP_SELECTABLE,0);
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
ObjectDelete(0,"Boton");
}
//+------------------------------------------------------------------+
void OnChartEvent(const int id,
const long &lparam,
const double &dparam,
const string &sparam)
{
if(id==CHARTEVENT_OBJECT_CLICK)
{
string clickedChartObject=sparam;
if(clickedChartObject=="Boton")
{
bool selected=ObjectGetInteger(0,"Boton",OBJPROP_STATE);
if(selected)
{
for(int i=OrdersTotal()-1;i>=0;i--)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,Violet);
OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,Violet);
}
}
}
ChartRedraw(0);return;
}
}