помогите разомкнуть круг

 
помогите разомкнуть круг

extern int tp = 350;
extern int sl = 400;
double Lots = 0.01;
extern int TakeProfit = 150;
extern int StopLoss = 150;

int start()
{
{
if (OrdersTotal()==0)
OrderSend("EURUSD",OP_SELL,0.01,Bid,0,Ask+sl*Point,Ask-tp*Point,"",123,0,Orange);

if (OrdersTotal()==0)
OrderSend("EURUSD",OP_BUY, 0.01,Ask,0,Ask-sl*Point,Ask+tp*Point,"",123,0,Orange);
}}

По плану советник должен работать так: открыть селл закрыть селл, открыть бай закрыть бай и так всё время по кругу.
А этот кусок работате так: открыть селл закрыть селл и так всё время по кругу.
 
7erj:
помогите разомкнуть круг

extern int tp = 350;
extern int sl = 400;
double Lots = 0.01;
extern int TakeProfit = 150;
extern int StopLoss = 150;

int start()
{
{
if (OrdersTotal()==0)
OrderSend("EURUSD",OP_SELL,0.01,Bid,0,Ask+sl*Point,Ask-tp*Point,"",123,0,Orange);

if (OrdersTotal()==0)
OrderSend("EURUSD",OP_BUY, 0.01,Ask,0,Ask-sl*Point,Ask+tp*Point,"",123,0,Orange);
}}

По плану советник должен работать так: открыть селл закрыть селл, открыть бай закрыть бай и так всё время по кругу.
А этот кусок работате так: открыть селл закрыть селл и так всё время по кругу.
Перед открытием ордера нужно в условии заложить проверку: тип предыдущего закрытого ордера не равен типу открываемого ордера.
 
а как заложить данное условие ?
 
7erj:
а как заложить данное условие ?

if(GetTypeLastClosePos("0", -1)!=OP_BUY)

и

if(GetTypeLastClosePos("0", -1)!=OP_SELL)

Функцию возьмите из ветки "Полезные функции ..."

Причина обращения: