[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 379

 
globad:
мне кажется такого добра навалом готового. советник-то простенький открывает одну сделку по заданному времени...

В том-то вся и беда, что за всё то время, которое существует возможность программить под МТ4, в инете накопилось в свободном доступе СТОЛЬКО готовых советников, что найти нужный становится ой как проблематично - придётся перерыть кучу хлама, и на это может уйти даже не один месяц. К тому же ещё не факт, что найденный Вами код не будет написан криво. Ну а код, сделанный под заказ не только сэкономит время и силы, так он к тому же может быть быстро исправлен исполнителем заказа, если заказчик увидит, что что-то работает не так, как было заказано.
 
Vinin:


Спасибо!!!
 
artmedia70:

А функция-то что вообще делает?

Возвращает ноль в любом случае... Вот я и задал вопрос, не глядя на синтаксис


Дык этож шаблон..... Блин что может быть, Обновил билд и советник начал частить, при чём этот же советник на другом билде старом, работает, сделки открывает и т.д.

if (b!=Bars){
b=Bars;

      if (iCustom(NULL, 0, "1111",set,up,zukko1,7,1)!=0){
      TotalOrders=OrdersTotal(); 
           for (i=0; i<=TotalOrders; i++){
                 if (OrderSelect(0,SELECT_BY_POS)==true){
                    if (OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,5,Red);
                 if (OrderSelect(0,SELECT_BY_POS)==true){   
                    if (OrderType()==OP_BUYSTOP) OrderDelete(OrderTicket(),Green);                    
                 }
                 }            
           }  
                       
    // if (OrdersTotal()==0) 
    OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Bid-StopLoss*Point,Bid+TakeProfit*Point);
      //OrderSend(Symbol(),OP_SELLSTOP,Lot,Bid-StopLoss*Point,3,Bid-StopLoss*Point+OPStopLoss*Point,Bid-StopLoss*Point-OPTakeProfit*Point);
       }
      if (iCustom(NULL, 0, "111111",set,up,zukko1,6,1)!=0){
      TotalOrders=OrdersTotal();
        for (i=0; i<=TotalOrders; i++){
                 if (OrderSelect(0,SELECT_BY_POS)==true){
                    if (OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,5,Red);
                 if (OrderSelect(0,SELECT_BY_POS)==true){   
                    if (OrderType()==OP_SELLSTOP) OrderDelete(OrderTicket(),Green);
                 }   
                 }
        }              
     //if (OrdersTotal()==0) 
     OrderSend(Symbol(),OP_SELL,Lot,Bid,3,Ask+StopLoss*Point,Ask-TakeProfit*Point);
     // OrderSend(Symbol(),OP_BUYSTOP,Lot,Ask+StopLoss*Point,3,Ask+StopLoss*Point-OPStopLoss*Point,Ask+StopLoss*Point+OPTakeProfit*Point);
         }
  }

Ктонибуть сможет помочь.... Советник должен работать раз за бар. А он лупит не по децки....

 
drknn:

Втом-то вся и беда, что за всё то время, которое существует возможность программить под МТ4, в инете накопилось в свободном доступе СТОЛЬКО готовых советников, что найти нужный становится ой как проблематично - придётся перерыть кучу хлама, и на это может уйти даже не один месяц. К тому же ещё не факт, что найденный Вами код не будет написан криво. Ну а код, сделанный под заказ не только сэкономит время и силы, так он к тому же может быть быстро исправлен исполнителем заказа, если заказчик увидит, что что-то работает не так, как было заказано.
Сколько будет стоить такой советник, как думаете?
 

Доброго дня!

Вот такая проблемка....

В комплексном индикаторе создала графическое отображение фракталов (чтобы не наносить индикатор фракталов)

Для верхних фракталов (стрелок)

double P_F_5_Up = Price_UP_1 + Positiont;
               string name="Up_F5"+"_"+s;
               
               ObjectCreate( name, OBJ_ARROW, 0, Time[s], P_F_5_Up);
               ObjectSet( name,OBJPROP_COLOR,Color_F5);
               ObjectSet( name,OBJPROP_ARROWCODE,217);
               ObjectSet(name,OBJPROP_WIDTH,2);

Для нижних фракталов (стрелок)

double P_F_5_DW=Price_DW_1 - Positiont;
               name="DW_F5"+"_"+s;
               
               ObjectCreate( name, OBJ_ARROW, 0, Time[s], P_F_5_DW);
               ObjectSet( name,OBJPROP_COLOR,Color_F5 );
               ObjectSet( name,OBJPROP_ARROWCODE,218);
               ObjectSet(name,OBJPROP_WIDTH,2);
Стрелки фракталов

отображаются в основном окне на расстоянии от Хай/Лоу на величину Positiont, которая определена в init()

Positiont*=Point;

Проблема в следующем: для нижних фракталов графические объекты (стрелки) отображаются согласно Positiont, в для верхних - прилипают к хай свечи, т.е не видят Positiont.

А почему? не пойму....

 
LOA:


А почему? не пойму....

Может добавлять высоту объекта еще.
 
splxgf:
Может добавлять высоту объекта еще.


а как это сделать?

И, если честно, сомневаюсь, что это поможет (хотя попробую, если подскажите как).

Графические объекты - стандартные символы и для хай и для лоу.

 
double P_F_5_Up = Price_UP_1 + Positiont*2;
Позиция отсчитывается от левого верхнего угла, снизу это нормально, сверху нужен дополнительный запас.
 
splxgf:
Позиция отсчитывается от левого верхнего угла, снизу это нормально, сверху нужен дополнительный запас.

ок. я Вас поняла и сделала, но при *2 не помогло, а вот на *4 - супер. Спасибо, Вам большое - я этого ньюанса не знала (хотя много ещё чего не знаю, но старательно учусь)
 
Reshetov:
См. https://www.mql5.com/ru/forum/131859/page6#434260


Функция GetExtremumZZPrice()


Спасибо огромное
Причина обращения: