olgert
Местный знаток
Спешки нет. Заодно знания получишь )). Видимо никто браться не хочет. Тишина.извини, с моими знаниями это долго
Спешки нет. Заодно знания получишь )). Видимо никто браться не хочет. Тишина.извини, с моими знаниями это долго
Таких ограничений давно нет.Добавить не получится, т.к. в индикаторе уже заняты все 8 максимально разрешённых в MQL4 буферов.
В советнике задать Magic=0. Если советник помечает свои ордера заданным в Magic идентификатором, то он ручные будет считать своими.У меня вопрос. Можно сделать чтобы ордер считал отложенный ордер своим, и как это сделать. Например: я открыл ордер через советник и отложенный, нужно чтобы следующий отложенный увеличился за счёт двух ордеров, открытого и отложенного. Как это сделать?
Я про кодВ советнике задать Magic=0. Если советник помечает свои ордера заданным в Magic идентификатором, то он ручные будет считать своими.
Советник так и делает: открывает первую позицию, когда есть сигнал индикатора. Но это до того момента, когда начинает строиться сетка, после этого он открывает уже не по сигналам, а в сторону первой позиции в сетке на расстоянии заданного шага. Вам надо, чтобы он открывал усредняющие позиции не по заданному шагу, а по новому сигналу?Hi coder, Please help me fix the EA error so that the EA can open a trade every time there is a signal from the arrow of the indicator both buy and sell. Tks
В советнике задать Magic=0. Если советник помечает свои ордера заданным в Magic идентификатором, то он ручные будет считать своими.
int b,s,p,res;
datetime expiration = TimeCurrent()+3600*Expiration;
double BuyPrice=Ask+Delta*Point;
double SellPrice=Bid-Delta*Point;
if(Volume[0]>1) return;
for (int i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i, SELECT_BY_POS)==true)
{
if (OrderSymbol()!=Symbol() || OrderMagicNumber()!=MAGIC) continue;
if (OrderType()==OP_BUY || OrderType()==OP_SELL) p++;
if (OrderType()==OP_BUYSTOP) b++;
if (OrderType()==OP_SELLSTOP) s++;
}
}
//---- buy stop
if(Close[1]-Open[1]>0 && Hour()==StartHour && p<1 && b<1)
{
res=OrderSend(Symbol(),OP_BUYSTOP,Lot,BuyPrice,0,BuyPrice-StopLoss*Point,BuyPrice+TakeProfit*Point,"",MAGIC,expiration,Blue);
}
//---- sell stop
if(Open[1]-Close[1]>0 && Hour()==StartHour && p<1 && s<1)
{
res=OrderSend(Symbol(),OP_SELLSTOP,Lot,SellPrice,0,SellPrice+StopLoss*Point,SellPrice-TakeProfit*Point,"",MAGIC,expiration,Red );
}
//----
return(0);
там вопрос с трендовыми. если меняю таймы по тз, то трендовые начинают косячить, и это выглядит "нафиг надо"), там заточено на D1. математику и суть инди понимаю, но некоторые функции, как прописаны в нем, для меня новое. к тому же, чисто мое мнение, М15 не нужен, эти движения и глазом видны) не смотрел, может как зз рисовать будет при пробитии. можно конечно переделать сначала без трендовых, потом кусок кода с ними добавить, и код потом подрихтовать.. ну долго.. вон, гуру чет не берутся за кружечкой чего-нидь развлечься)))Спешки нет. Заодно знания получишь )). Видимо никто браться не хочет. Тишина.
Вместо этогоКод:int b,s,p,res; datetime expiration = TimeCurrent()+3600*Expiration; double BuyPrice=Ask+Delta*Point; double SellPrice=Bid-Delta*Point; if(Volume[0]>1) return; for (int i=0; i<OrdersTotal(); i++) { if (OrderSelect(i, SELECT_BY_POS)==true) { if (OrderSymbol()!=Symbol() || OrderMagicNumber()!=MAGIC) continue; if (OrderType()==OP_BUY || OrderType()==OP_SELL) p++; if (OrderType()==OP_BUYSTOP) b++; if (OrderType()==OP_SELLSTOP) s++; } } //---- buy stop if(Close[1]-Open[1]>0 && Hour()==StartHour && p<1 && b<1) { res=OrderSend(Symbol(),OP_BUYSTOP,Lot,BuyPrice,0,BuyPrice-StopLoss*Point,BuyPrice+TakeProfit*Point,"",MAGIC,expiration,Blue); } //---- sell stop if(Open[1]-Close[1]>0 && Hour()==StartHour && p<1 && s<1) { res=OrderSend(Symbol(),OP_SELLSTOP,Lot,SellPrice,0,SellPrice+StopLoss*Point,SellPrice-TakeProfit*Point,"",MAGIC,expiration,Red ); } //---- return(0);
Что-то на подобе этого
Thank you for responding. Can you help me fix the EA so that it opens on each arrow signal instead of the current grid. Thank you very muchСоветник так и делает: открывает первую позицию, когда есть сигнал индикатора. Но это до того момента, когда начинает строиться сетка, после этого он открывает уже не по сигналам, а в сторону первой позиции в сетке на расстоянии заданного шага. Вам надо, чтобы он открывал усредняющие позиции не по заданному шагу, а по новому сигналу?
Ещё раз.Вместо этого
if (OrderSymbol()!=Symbol() || OrderMagicNumber()!=MAGIC) continue;
написать так
if (OrderSymbol()!=Symbol() || (OrderMagicNumber()!=MAGIC && OrderMagicNumber()!=0)) continue;
Аналогично сделать везде где он проверяет Magic ордера.
Так он будет считать своими ордера со своим маджиком и ручные.
Привет,кодерам! Гляньте плиз индюка не хочет отображаться на графике.
Вельми понеже. Премного вами благодарен!))