Доработка ботов (советников, индикаторов) vol. 2

wow007

Новичок форума
Доброго времени суток, парни помогите привязать к простому советнику фильтр времени чтобы скажем с 9.00 до 12.00 торговал, спасибо огромное!
Если не сложно еще добавьте функцию close_all_orders = 1 - закрыть все ордера по истечению времени в данном примере это 12.00 и close_all_orders = 0 продолжать торговлю!
 

Вложения

  • HT.mq4
    5,2 КБ · Просмотры: 40
Последнее редактирование:

Kasander

Местный знаток
PavlovTrade а с чего Вы решили, что он перерисовывает, подсматривает в будущие и не должен отображать два последних бара? Рекомендую ознакомиться в справке с таймсериями и направлением счета.

Kasander, индюк не рисует, за исключением текущего бара, т.е., ведет себя как обычная машка. Рефрешер ему не нужен, в коде была не доработка, видимо, автор индюка лучше знаком с МТ5, нежели с МТ4, забирай:

Моби спасибо! Прям не ожидал что в виду недавней ситуации ты мне поможешь. Ну ты просто ЧЕЛОВЕЧИЩЕ.
Следующую просьбу адресую наверно не тебе, так как у меня и так должок перед тобой...
Хочу на основе этого Smooth Price построить JMA_Star Lite.
Ну то есть взять JMA_Star Light, убрать из него Ценовые Данные и вместо них подставить Данные Красной Линии Smooth Price.
Получится Smooth Price_JMA StarLigth. Есть кто-нибудь кто поможет это сделать?
 

Вложения

  • Smooth Price.mq4
    6,1 КБ · Просмотры: 30
  • JMA_StarLight.mq4
    12,4 КБ · Просмотры: 38
Последнее редактирование:

Иван_74

Прохожий
кто-нибудь может вставить в советник мартингейл?

Хочу протестировать советника, с функцией мартингейла, помогите:)
 

Вложения

  • FiboWave_v2.2.mq4
    13,1 КБ · Просмотры: 51

magistr91

Местный знаток
Привет. Прошу прикрутить к индикатору JMA_StarLight Параметр "First Indicator Data" для того что бы его можно было бы навешивать к другим Машкам на Графике
 

Вложения

  • JMA_StarLight.mq4
    12,4 КБ · Просмотры: 25
  • 11.png
    11.png
    54 КБ · Просмотры: 167

PaulFusioN

Новичок форума
Всем привет. Кто то может помочь с советником Setka Light v11. У меня есть рабочая версия, но только для демо счета. Поставил его на реал, просит серийный номер.
 

Tepih

Местный знаток
PaulFusioN
Есть такая версия. Не проверял:
 

Вложения

  • !!!Setka Light v11.mq4
    34,4 КБ · Просмотры: 92
  • !!!Setka Light v11.ex4
    41,3 КБ · Просмотры: 42

Eva FX

Новичок форума
Ребята, есть у кого-нибудь советник (контролер) или скрипт для следующей задачи?
Ставим любой советник в пять окон на разные пары. Как только советник открывает позицию, то советник контролер запрещает советникам в других окнах открывать позиции, пока первый советник не закроет свои позиции. Надеюсь понятно объяснила. очень нужно, помогите.
 

PavlovTrade

Местный житель
PavlovTrade а с чего Вы решили, что он перерисовывает, подсматривает в будущие и не должен отображать два последних бара? Рекомендую ознакомиться в справке с таймсериями и направлением счета.

К тому что явного указания на порядок расчета в нем не было. Не надо считать своих колег дураками на столько что посылаете читать справку.
От того что вы поменяли порядок расчета изменилось вообще все. Т.е. вы не исправили ситуацию и сделали совершенно другой индикатор.
Красный - оригинал, Белый - ваш.
SNAG-0011.png
 

Kasander

Местный знаток
PavlovTrade Не могу понять в чём выражается Перерисовка Красной Линии? Ну то есть я спрашиваю с точки зрения визуального наблюдения. Я вот смотрю за ней на Минутных Барах и вижу что как отрисовало так и показывает. И ничего патом не меняется....
Я не понимаю в чём выражается на деле эта перерисовка? На моих глазах ничего не происходит...
 

mobidik

-----
К тому что явного указания на порядок расчета в нем не было.

А это что тогда по Вашему:
PHP:
   ArraySetAsSeries(ExtBuffer_MA,true);
   ArraySetAsSeries(ExtBuffer_EMA,true);
   ArraySetAsSeries(ExtBuffer_CF,true);

Не надо считать своих коллег дураками на столько что посылаете читать справку.

Так я никого и не считаю "дураками", это только Ваше мнение/умозаключение...
А читать справку никогда лишним не будет, сам заглядываю, всего помнить/знать не к чему - главное, что нужно знать где можно быстро найти ответ на нужный вопрос, вот тут справка в первую очередь.

От того что вы поменяли порядок расчета изменилось вообще все. Т.е. вы не исправили ситуацию и сделали совершенно другой индикатор.
Красный - оригинал, Белый - ваш.

Да, изменилось. Но тут скорее всего, вопрос к автору индюка, т.к. ф-ция CalculateCF данного индюка начинается с:
PHP:
   int    i,limit;
//--- first calculation or number of bars was changed
   if(prev_calculated==0)
     {
      limit=ext_period_MA+begin;
      for(i=begin;i<limit;i++)
         ExtBuffer_CF[i]=ExtBuffer_EMA[i];
     }
   else limit=prev_calculated-1;
//--- main loop
   for(i=limit;i<rates_total && !IsStopped();i++)
     {
       ....

Т.е., при первом проходе, в момент старта, у нас всегда prev_calculated = 0, а rates_total равно значению доступных баров. После первого прохода prev_calculated = rates_total, например, доступно 5000 баров, тогда limit станет равным 4999. А теперь смотрим на цикл: куда считаем? Имеем:
PHP:
for(i=4999; i<5000 && !IsStopped();i++)
Вопрос: а что, новый бар имеет индекс 5000? То откуда и куда считаем, какое направление индексации?
Поэтому, i-1 не означает, что заглядывает в будущие, в данном случае - настоящие.

PS.
да, можно сделать, что будет один в один, например вот так:

PHP:
  int    i,limit;
//--- first calculation or number of bars was changed
   
   prev_calculated=0;

   if(prev_calculated==0)
     {
      limit=ext_period_MA+begin;
      for(i=begin;i<limit;i++)
         ExtBuffer_CF[i]=ExtBuffer_EMA[i];
     }

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

К тому же, Вы даже не удосужились проверить индюка на перерисовку хотя бы на М1...
 
Последнее редактирование:

PavlovTrade

Местный житель
К тому же, Вы даже не удосужились проверить индюка на перерисовку хотя бы на М1...
не на м1 ни на других ТФ оригинальный индюк ни то что не перерисовывается, он вообще ничего не делает. красная результирующая линия не рисуется на всех новых барах.
Да, изменилось. Но тут скорее всего, вопрос к автору индюка.
но я не знаю как все изначально было задумано автором, а Вы знаете?
именно что. если отрисовка на истории у индикатора изменилась то это уже не исправление, а другой индикатор. именно по этому я не стал предлагать подобный вариант человку.
 

PavlovTrade

Местный житель
PavlovTrade Не могу понять в чём выражается Перерисовка Красной Линии? Ну то есть я спрашиваю с точки зрения визуального наблюдения. Я вот смотрю за ней на Минутных Барах и вижу что как отрисовало так и показывает. И ничего патом не меняется....
Я не понимаю в чём выражается на деле эта перерисовка? На моих глазах ничего не происходит...

Смотрите как получается, простым языком постараюсь. Индикаторы обсчитывают бары и на каждом пишут свое значение. Между значениями индикатор дорисовывает кривые линии, вот вы и видите их на графике..

В классическом варианте для МТ4 в обсчете баров текущий бар это 0. а самый последний в истории при допустим 500 барах будет иметь номер 499. Индикатор от 499 до 0 обсчитает все бары.
Но что мы видим в коде, он при расчете использует значение баров i-2 и i-1 , т.е. например при расчете 200й свечи он будет брать значение свечей 198 и 199. т.е. будущих свечей, что неминуемо приведет к перерисовке, о чем я вам и сообщил.

В варианте для МТ5 в обсчете баров текущий бар это 499 (при 500 баров в истории) а самый последний в истории будет иметь индекс 0.
mobidik предположил что в индикаторе изначально хотели применить именно такой вариант обсчета и сделал так. таким образом i-2 и i-1 в формулах становится нормальным, это заглядывание в прошлое а не в будущее. Но индикатор теперь полностью изменился, сравнительный скриншот я прикреплял выше, он показывает совсем по другому относительно того что было.

Итого что имеем:
1) вариант который прислал mobidik, но на истории значения индикатор совсем другие (смотрите скриншот).
2) вариант с "рефрешером" который будет перерисовывать последние 2 закрытые свечи. Посмотреть вложение Smooth Price fix2.mq4
 

Вложения

  • SNAG-0011.png
    SNAG-0011.png
    36,3 КБ · Просмотры: 201

mobidik

-----
не на м1 ни на других ТФ оригинальный индюк ни то что не перерисовывается, он вообще ничего не делает. красная результирующая линия не рисуется на всех новых барах.

А что мешает набросить рефрешер на график с целью проверить свои подозрения об перерисовке?

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

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

На этом, считаю, вопрос закрыт, я Вас услышал.
 

PavlovTrade

Местный житель
Лучше делать хоть что-то и учится на своих ошибках, нежели безосновательно утверждать то, чего нет.
Теперь вы научились тому что изменение логики индикатора приводит к полному изменнеию его графической состовляющей. ;)

Заглядывание в будущее и перерисовка в логике индикатора который отправил человек есть. Логику трогать он не просил.
 

FxGuruBg

Новичок форума
Привет Всем!
Помогите поправить, выходят предупреждений!
Спасибо!
 

Вложения

  • Straddle_Trail_v6.5.mq4
    58,1 КБ · Просмотры: 51
Верх