Помогите дописать советник. Отблагодарю - страница 2

 
FAQ:
Рекомендую Вам sergeevа - он лучший в своем деле
Подумаю.
 
FAQ:

Рекомендую Вам sergeevа - он лучший в своем деле

я пропустил чего? меня уже порекомендовать успели. надеюсь на фарш не пустят... :)

 
Всем привет. Ниже выложен элементарный урывок программы, который у меня не получается довести до конца. Мне нужно сделать так, чтобы он перед тем как ставить новый ордер проверял есть ли в том месте (с такой же ценой) другой орден, если есть, то пропустить, если нету – ставить. А то он у меня наставит ордеров до заданной границы, а потом по втором, по третьем кругу выставляет. Для запуска ставите на автомат, ставите бай стоп, и увидите результат. Если кто сможет дописать, пожалуйста, не поленитесь. Когда все получится – вознаграждение обязательно!!! У МЕНЯ НЕ ПОЛУЧАЕТСЯ!!!

extern double Lot=0.01;
double Dist=10000.0;
string SMB;
double NewPrice,SL,TP;
int i,z;
int start()
{
RefreshRates();
SMB=Symbol();
{UstanOtlozh();}
}
return(0);
void UstanOtlozh()
{
double OldPrice=WindowPriceOnDropped();
RefreshRates();
SMB=Symbol();
{
int i=1;
while(i<=OrdersTotal())
{
if (OrderSelect(i-1,SELECT_BY_POS)==true)
{
if (OrderSymbol()!= SMB) continue;
int Tip=OrderType();
if (Tip<2) continue;
double Price=OrderOpenPrice();
{
NewPrice=Price;
while(NewPrice<=Ask+100*Point||NewPrice>=Ask+20*Point)
{
NewPrice=NewPrice+20*Point;
SL=NewPrice-20*Point;
TP=NewPrice+20*Point;
OrderSend(SMB,OP_BUYSTOP,Lot,NewPrice,3,SL,TP,NULL,0,CLR_NONE);
if(NewPrice>Ask+100*Point||NewPrice<Ask+20*Point)
return;
}
}
}
}
}
}
Файлы:
melko_3.mq4  2 kb
Причина обращения: