Не срабатывает составной оператор

 

Знающие люди, подскажите чайнику

Почему в конструкции :

int start()
{

int i = 0;

if( i==0)
{

tiket1=OrderSend("GBPUSD",OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slip,Ask-SL*Point,Bid+TP*Point,NULL,MagicNumber,0,CLR_NONE);

tiket2=OrderSend("GBPJPY",OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slip,Ask-SL*Point,Bid+TP*Point,NULL,MagicNumber,0,CLR_NONE);

i=1;

}
return(0);

}

открывается только ордер tiket1 ?

 
Попытка открыть ордера на разных символах, а цена указывается с символа графика (Ask). Надо испоьзовать MarketInfo(,MODE_ASK)
 
И нормолизавать цену надо ТП и СЛ, а не цену открытия ордера
 

Спасибо за комментарии,

но такая конструкция :

if( i==0)
{

tiket1=OrderSend("GBPUSD",OP_BUY,Lots,MarketInfo("GBPUSD",MODE_ASK),Slip,0,0,NULL,MagicNumber,0,CLR_NONE);


tiket2=OrderSend("GBPJPY",OP_BUY,Lots,MarketInfo("GBPJPY",MODE_ASK),Slip,0,0,NULL,MagicNumber,0,CLR_NONE);

}

i=1;

return(0);

вообще не хочет открывать :((

что не так?

 
snmax:



что не так?



После OrderSend() вызывайте GetLastError() и смотрите номер ошибки.
 
snmax:

Знающие люди, подскажите чайнику

Почему в конструкции :

int start()
{

int i = 0;

if( i==0)
{

tiket1=OrderSend("GBPUSD",OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slip,Ask-SL*Point,Bid+TP*Point,NULL,MagicNumber,0,CLR_NONE);

tiket2=OrderSend("GBPJPY",OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slip,Ask-SL*Point,Bid+TP*Point,NULL,MagicNumber,0,CLR_NONE);

i=1;

}
return(0);

}

открывается только ордер tiket1 ?



Возможно проблема в том что советник стоит на одной паре GBPUSD

во второй строке ( tiket2 ) вы указываете Ask от пары GBPUSD

пользуйтесь MarkeiInfo ... для мультивалютного советника