Обсуждение статьи "Как создать свой Trailing Stop" - страница 2

 

Читал и не раз, но опять таки же, нужно без классов. Неужели нет простого способа проверить ордер на магик внутри функции?

Конечно же в будущем детально будем разбираться с mql5, но сейчас в этом нет такой острой необходимости, поскольку торгуем на МТ4 и все устраиват. Сейчас просто хочется быстро переделать уже готовые рабочие коды на пятую версию для чемпионата, а, честно говоря, времени особо нет вот и прошу помощи.

 
Setslav:

Читал и не раз, но опять таки же, нужно без классов. Неужели нет простого способа проверить ордер на магик внутри функции?

Конечно же в будущем детально будем разбираться с mql5, но сейчас в этом нет такой острой необходимости, поскольку торгуем на МТ4 и все устраиват. Сейчас просто хочется быстро переделать уже готовые рабочие коды на пятую версию для чемпионата, а, честно говоря, времени особо нет вот и прошу помощи.

if (OrderGetInteger(ORDER_MAGIC)==EA_Magic)
{
.....
}

Это и есть один из самых простых способов работы с магиком. Вопрос только в том как и куда его в функции воткнуть...

 
Interesting  2010.09.28 13:11 2010.09.28 13:11:17
sergey1294:
ну я человеку пример привел а то он уже мозг себе вынес как обычный трейлинг написать, ну а дальше пускай немножко подумает, что бы без косяков работал, в тестере в принципе и эта конструкция работает нормально. на реале не проверял

Как пример конечно сойдет, но если без анализа result будет куча ошибок (рано или поздно)...


Простите а нельзя выложить "доработанный" пригодный для "реала" TrailingStop().

 

MetaEditor выдает

" possible use of uninitialized variable 'tm'          Sample_TrailingStop.mqh "

указывая на строку

 m_lasttime=tm[0]; 


 

 
Подскажите, а зачем в этой статье используется таймер? На первый взгляд, он заставляет чаще обновляться индикаторы, а это действительно необходимо?
 
vlad-mir:

MetaEditor выдает

" possible use of uninitialized variable 'tm'          Sample_TrailingStop.mqh "

указывая на строку

 m_lasttime=tm[0]; 


 


     //--- Основной метод управления уровнем стоплосс позиции   
      bool DoStoploss(){
            //--- если трейлинг стоп выключен
            if(!m_onoff){
               return(true);
            } 
         datetime tm[1];
         tm[0] = 0;
            //--- в побарном режиме получаем время последнего бара
            if(!m_eachtick){ 
               //--- если не удалось скопировать время, завершаем работу метода, повтор произойдет на следующем тике, 
               if(CopyTime(m_symbol,m_timeframe,0,1,tm)==-1){
                  return(false); 
               }
               //--- если время бара равно времени последнего выполнения метода - завершаем работу метода
               if(tm[0]==m_lasttime){ 
                  return(true);
               }
            }               
            //--- получаем значения индикатора
            if(!Refresh()){ 
               return(false);
            }    
 

my_first_ea_sartrailing.mq5 (26.61 KB


при компиляции выдает пять ошибок, пробовал скаченный, и по инструкции собирал....

с начала обрадовался что есть эта статья, теперь огорчён что не получается ей воспользоваться, может я чего не понял?

или не правильно делаю..... подскажите плиз! новичку)

 
Alex_Pushkin:

my_first_ea_sartrailing.mq5 (26.61 KB


при компиляции выдает пять ошибок, пробовал скаченный, и по инструкции собирал....

с начала обрадовался что есть эта статья, теперь огорчён что не получается ей воспользоваться, может я чего не понял?

или не правильно делаю..... подскажите плиз! новичку)


Покажите какие ошибки, скриншот, что там в подвале метаэдитора.

 

остальные скрины ошибок в файлах с низу, что бы форум не загромождать! пробовал ещё в 5MT от другого брокера, выдает те же ошибки!

Файлы:
 
Alex_Pushkin:

остальные скрины ошибок в файлах с низу, что бы форум не загромождать! пробовал ещё в 5MT от другого брокера, выдает те же ошибки!


Скачайте файл Sample_TrailingStop.mqh и его в Include