Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 310

 
Artyom Trishkin:

Индикатор можете дать? Что показывается в окне данных (Ctrl+D) когда мышкой водите по барам индикатора? Сколько там буферов, и какие в них значения?


Без проблем. Это индикаторы с торговой стратегии Симфония. Интересная ТС, но работать с пятиминутками суетно, не всегда есть время. Хотел попробовать автоматизировать и посмотреть, что получиться. Но так как я чисто любитель в программировании, то застрял. В принципе я где-то наткнулся на советника по этой стратегии. Но он очень наворочен, не получается прогнать в тестере (может по тому, что берет информацию со старшего ТФ - для М5 с Н1), а на демо не могу сказать, только поставил, хотя одну сделку открыл, но с ошибкой согласно ТС. Я хотел его упростить и написать по своему, но ни чего не получилось. Могу сбросить оригинал советника (правда не совсем, так как пришлось исправлять ошибки, выдаваемые при компиляции). а так же свой вариант (если это не слишком большая наглость с моей стороны).

 

Добрый день!

У меня в эксперте часть кода работает по  OnTimer() EventSetMillisecondTimer(50) и надо сделать другую часть по EventSetMillisecondTimer(2000). Какие предложения как реализовать?

 
Youri Lazurenko:

Без проблем. Это индикаторы с торговой стратегии Симфония. Интересная ТС, но работать с пятиминутками суетно, не всегда есть время. Хотел попробовать автоматизировать и посмотреть, что получиться. Но так как я чисто любитель в программировании, то застрял. В принципе я где-то наткнулся на советника по этой стратегии. Но он очень наворочен, не получается прогнать в тестере (может по тому, что берет информацию со старшего ТФ - для М5 с Н1), а на демо не могу сказать, только поставил, хотя одну сделку открыл, но с ошибкой согласно ТС. Я хотел его упростить и написать по своему, но ни чего не получилось. Могу сбросить оригинал советника (правда не совсем, так как пришлось исправлять ошибки, выдаваемые при компиляции). а так же свой вариант (если это не слишком большая наглость с моей стороны).

Наглость конечно второе счастье ;) Вы уж просто скиньте индикатор, чтобы можно было воочию поглядеть и сказать как с него получать данные. А уж остальное - сами. Что не будет получаться - спрашивайте здесь, и люди вам помогут. Это лучше для вас, чем просто кто-то всё за вас сделает, и вы так и останетесь в неведении что там почём.

 
Nauris Zukas:

Добрый день!

У меня в эксперте часть кода работает по  OnTimer() EventSetMillisecondTimer(50) и надо сделать другую часть по EventSetMillisecondTimer(2000). Какие предложения как реализовать?

На одну программу - один таймер. Делайте один таймер, и два счётчика в нём - на каждую задержку - свой.

 
Artyom Trishkin:

На одну программу - один таймер. Делайте один таймер, и два счётчика в нём - на каждую задержку - свой.

Спасибо, но я не понял реализацию как это сделать. На данный момент мне в эксперте выглядит вот так. Можете показать как второй счётчик здесь добавить?

int OnInit()
  {
   EventSetMillisecondTimer(50);
   return(INIT_SUCCEEDED);
  }

void OnDeinit(const int reason)
  {
   EventKillTimer();
  }

void OnTimer()
  {
  }
 
Artyom Trishkin:

Наглость конечно второе счастье ;) Вы уж просто скиньте индикатор, чтобы можно было воочию поглядеть и сказать как с него получать данные. А уж остальное - сами. Что не будет получаться - спрашивайте здесь, и люди вам помогут. Это лучше для вас, чем просто кто-то всё за вас сделает, и вы так и останетесь в неведении что там почём.

Большое спасибо. Если честно, то мне конечно же было бы интереснее все самому. На старости лет появилось интересное хобби, правда жена ругается, что с компьютера не вылажу. А с получением данных с индикатора подскажите, пожалуйста.

 
Youri Lazurenko:

Большое спасибо. Если честно, то мне конечно же было бы интереснее все самому. На старости лет появилось интересное хобби, правда жена ругается, что с компьютера не вылажу. А с получением данных с индикатора подскажите, пожалуйста.

Symphonie_Sentiment_Indikator_v3.0.mq4 - декомпил.

Я удалил прикреплённые файлы в zip-архиве, так как распространение и работа с декомпилом у нас здесь воспрещена. И человеку, выложившему такие файлы, полагается бан. Вплоть до удаления аккаунта (всё зависит от настойчивости пользователя в желании заполучить бан). На первый раз - предупреждение.

Понимаю, что вы об этом могли и не знать (раз это у вас хобби, и жена ругается), но уж потрудитесь пожалуйста ознакомиться с текстом этого индикатора - переменные сгенерированы программой-декомпилятором, и не несут в своих названиях смысловой нагрузки - видно же невооружённым взглядом.

 
Artyom Trishkin:

Symphonie_Sentiment_Indikator_v3.0.mq4 - декомпил.

Я удалил прикреплённые файлы в zip-архиве, так как распространение и работа с декомпилом у нас здесь воспрещена. И человеку, выложившему такие файлы, полагается бан. Вплоть до удаления аккаунта (всё зависит от настойчивости пользователя в желании заполучить бан). На первый раз - предупреждение.

Понимаю, что вы об этом могли и не знать (раз это у вас хобби, и жена ругается), но уж потрудитесь пожалуйста ознакомиться с текстом этого индикатора - переменные сгенерированы программой-декомпилятором, и не несут в своих названиях смысловой нагрузки - видно же невооружённым взглядом.

Я конечно извиняюсь, но.

Во- первых, я даже не подозревал, что это какой-то левый файл, так как скачивал вроде бы с нормального сайта.

Во-вторых, это для вас, профессионалу видно не вооруженным взглядом. Для меня - файл как файл, даже подозрений не закрадывалось. Еще раз прошу прощения, меня самого сей факт расстроил. Удачи.

 
Artyom Trishkin:

На одну программу - один таймер. Делайте один таймер, и два счётчика в нём - на каждую задержку - свой.

Я пока сделал так, но если вы по другому предлагали, то поправьте:

int Timer1=50;
int Timer2=2000;
int countTimer1=0;

int OnInit()
  {
   EventSetMillisecondTimer(Timer1);
   return(INIT_SUCCEEDED);
  }

void OnDeinit(const int reason)
  {
   EventKillTimer();
  }

void OnTimer()
  {
   countTimer1++;
   if(countTimer1>=MathFloor(Timer2/Timer1))
     {
      Print(" TimeCurrent()= ",TimeCurrent()," countTimer1= ",countTimer1);
      countTimer1=0;
     }
  }
 
Artyom Trishkin:

Symphonie_Sentiment_Indikator_v3.0.mq4 - декомпил.

Я удалил прикреплённые файлы в zip-архиве, так как распространение и работа с декомпилом у нас здесь воспрещена. И человеку, выложившему такие файлы, полагается бан. Вплоть до удаления аккаунта (всё зависит от настойчивости пользователя в желании заполучить бан). На первый раз - предупреждение.

Понимаю, что вы об этом могли и не знать (раз это у вас хобби, и жена ругается), но уж потрудитесь пожалуйста ознакомиться с текстом этого индикатора - переменные сгенерированы программой-декомпилятором, и не несут в своих названиях смысловой нагрузки - видно же невооружённым взглядом.

Не сочтите за наглость, все же хочу разобраться. По новой скачал эти индикаторы со странички автора стратегии на Форекс Фактори (в свободном доступе, целый пакет, за 2012 г.). Сравнил с моими, разницы не вижу. Неужели там тоже будет публиковаться декомпилянт. Если можно, или нужно могу прикрепить файлы (сразу не буду дабы не нарушать табу).

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