[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 483

 

День Добрый

Кто нибудь мне может подсказать можно в МТ4 объёмом не 0.01 а 0.0001 входить в сделку А то у меня что то не получается

 
Vasia_Pu:

День Добрый

Кто нибудь мне может подсказать можно в МТ4 объёмом не 0.01 а 0.0001 входить в сделку А то у меня что то не получается

Зависит от шага лота у брокера. Может и нельзя...
 
FOReignEXchange:

Вот так вернее будет. Но будет правильно работать только на М30, а показывает сигналы с М60.

Если делать детально и универсальный - надо ковыряться. А кто код делал? Там counted_bars не используется нигде, хотя задана.


Сам исходник скачал в базе кодов,затем просил местных гуру сделать так чтобы в индикаторе сигналы появлялись на баре в момент появления луча ZZ

,(давно было но помнится Интегер и помог) и отображали хай и лоу баров на которых отрисован луч ZZ.

"Если делать детально и универсальный - надо ковыряться"-Если не затруднит?!.Спасибо что отозвались.

 
Щас он работает на М30 только. Ставите исходный индикатор. Чтобы увидеть сигнал на М60 надо ставить второй индкатор.
 
Щас он работает на М30 только. Ставите исходный индикатор. Чтобы увидеть сигнал на М60 надо ставить второй индкатор.
 
FOReignEXchange:
Щас он работает на М30 только. Ставите исходный индикатор. Чтобы увидеть сигнал на М60 надо ставить второй индкатор.

Да на М30 работает корректно только компиляшка _m__Dinapwtar.ezigwzag_2e1s.ex4
 

Вот универсальный. Точки не исправлял только. И зачем они вообще нужны, мешаются только. Изломы (пики) и без них видны.

ТаймФрейм задаётся в настройках.

 
FOReignEXchange:

Вот универсальный. Точки не исправлял только. И зачем они вообще нужны, мешаются только. Изломы (пики) и без них видны.

ТаймФрейм задаётся в настройках.



По закрытию бара (сигнал тчк над ним) ниже\выше уровня (пока это уровни динаполи в работе) делать вывод

о развороте цены .

Спасибо за помощь!Успеха!

 

Добрый день!

Обнаружил у себя проблему модификации Stop Loss у отложенного ордера. В журнале показывается ошибка OrderModify error 3.

В торговую функцию переданы неправильные параметры, например, неправильный символ, неопознанная торговая операция, отрицательное допустимое отклонение цены, несуществующий номер тикета и т.п. Необходимо изменить логику программы.

Вот краткий пример, как я пытаюсь это реализовать:

void Modify_Orders_All_Series_SP(double Timeframe,double plus_point,double global_trailing_SP,int Magic,double Level)

{  int    count;
   double Open_0      = NormalizeDouble(iOpen(Symbol(),Timeframe,0),Digits);
   double Low_1       = NormalizeDouble(iLow(Symbol(),Timeframe,1),Digits);
   double High_1      = NormalizeDouble(iHigh(Symbol(),Timeframe,1),Digits);
   double new_val     = NormalizeDouble(Low_1 - plus_point*Point,Digits);

   for(count = OrdersTotal()-1; count >= 0; count--)
      {  
         OrderSelect(count,SELECT_BY_POS,MODE_TRADES);

         double Op_Price = NormalizeDouble(OrderOpenPrice(),Digits);
         double Stp_Loss = NormalizeDouble(OrderStopLoss(),Digits);
         
         if(OrderMagicNumber() == Magic)
            {  if(OrderType() == OP_SELLSTOP)
                  {  if(Low_1 < Level && new_val > Op_Price && new_val < Open_0)  
                        {  OrderModify(OrderTicket(),new_val,0,0,0,DeepPink);
                           OrderSelect(count,SELECT_BY_POS,MODE_TRADES);
                           Print("02_Modify_Orders_All_SP:"," Magic_SP: ",OrderMagicNumber(),", Ticket: ",OrderTicket(),
                                 ", Op_Price: ",DoubleToStr(OrderOpenPrice(),5),", global_trailing_SP: ",DoubleToStr(global_trailing_SP,5),
                                 ", Stp_Loss: ",DoubleToStr(OrderStopLoss(),5));
                        }
                           
                     if(global_trailing_SP < Stp_Loss && global_trailing_SP > High_1)  
                        {  OrderModify(OrderTicket(),0,global_trailing_SP,0,0,DeepPink);
                           Print("Magic_SP01: Условие Trailing_OP_SELLSTOP = TRUE");
                        }
                     
                  }
               if(OrderType() == OP_SELL)
                  {  if(global_trailing_SP < Stp_Loss && global_trailing_SP > High_1)  
                       {  OrderModify(OrderTicket(),0,global_trailing_SP,0,0,DeepPink);
                          Print("Magic_SP01: Условие Trailing_OP_SELL = TRUE");
                       }
                  }
            }
      }
}

В журнале видно, что проблема находится в этом месте:

if(global_trailing_SP < Stp_Loss && global_trailing_SP > High_1)  
  {  OrderModify(OrderTicket(),0,global_trailing_SP,0,0,DeepPink);
     Print("Magic_SP01: Условие Trailing_OP_SELLSTOP = TRUE");
  }

-------------------------------

Где я ошибаюсь?

 
tol64:

Где я ошибаюсь?

возьмите привычку при ошибке принтить все параметры, которые могут иметь отношение к ней.

if (!OrderModify(...)) { Print(GetlastError()+.... список параметров OrderModify ); }

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