void OnTick()
{
Nbar();
ue(sltp);
ViborStopov();
ViborProfy();
OrderModifi();
if(f_IsNewBar()==true)
stg1();
}
//=======================================================================================
bool f_IsNewBar()//новый бар
{
if(intBars != Bars)
{
intBars = Bars;
return(true);
}
return(false);
}
//***************************************************************************
void OrderModifi()//+
{
for(int y=0; y<= OrdersTotal()-1; y++)//Начинаем перебор ордеров в истории
{
if(OrderSelect(y, SELECT_BY_POS,MODE_TRADES)==true && OrderMagicNumber()==Magic && OrderSymbol()==_Symbol)//Выбираем ордер
{
switch(OrderType())
{
case 0:
if((OrderOpenPrice()>SL && OrderStopLoss()!= SL) || (OrderOpenPrice()<TP && OrderTakeProfit()!=TP))
ticketss = OrderModify(OrderTicket(),OrderOpenPrice(),SL,TP,0,clrYellow);
break;
case 1:
if((OrderOpenPrice()<SL && OrderStopLoss()!= SL) || (OrderOpenPrice()>TP && OrderTakeProfit()!=TP))
ticketss = OrderModify(OrderTicket(),OrderOpenPrice(),SL,TP,0,clrWhite);
break;
}
}
}
}
//*****************************************************************************
void stg1()
{
uo(svecha);
LOT();
TORGI();
switch(rtorg)
{
case 1:
if(svecha[4][1]<0 && svecha[4][2]<0 && svecha[4][3]<0)
ticketss=OrderSend(Symbol(),OP_BUY,Lot,Ask,Slippage,0,0,"S1 buy",Magic,clrNONE);
break;
case 2:
if(svecha[4][1]>0 && svecha[4][2]>0 && svecha[4][3]>0)
ticketss=OrderSend(Symbol(),OP_SELL,Lot,Bid,Slippage,0,0,"S1 sell",Magic,clrNONE);
break;
case 3:
if(svecha[4][1]<0 && svecha[4][2]<0 && svecha[4][3]<0)
ticketss=OrderSend(Symbol(),OP_BUY,Lot,Ask,Slippage,0,0,"S1 buy",Magic,clrNONE);
if(svecha[4][1]>0 && svecha[4][2]>0 && svecha[4][3]>0)
ticketss=OrderSend(Symbol(),OP_SELL,Lot,Bid,Slippage,0,0,"S1 sell",Magic,clrNONE);
break;
}
}
//*******************************************************************************