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

Уважаемые мастера. Просветите плиз. Стрелка появляется на текущем баре в конце свечи или в начале. Возможно ли прописать условие чтобы стрелка появляется на открытии бара только?
 
Уважаемые мастера. Просветите плиз. Стрелка появляется на текущем баре в конце свечи или в начале. Возможно ли прописать условие чтобы стрелка появляется на открытии бара только?
Стрелку куда угодно можно воткнуть - в прошлое, будущее,на открытии,закрытии,в середине....
 
Специалисты помогите пожалуйста ! Хочу изменить логику индикатор паттерна Поглощение ! Условия :
1.Логика для бычьего поглощения:
Открытие текущей свечи больше закрытия

Открытие предыдущей свечи меньше закрытия

Открытие предыдущей свечи больше закрытия
Минимум текущей свечи ниже минимума предыдущей
Закрытие текущей свечи выше максимума предыдущей.

============================================

2.Логика для медвежьего поглощения:


Открытие текущей свечи меньше закрытия

Открытие предыдущей свечи больше закрытия

Открытие предыдущей свечи меньше закрытия
Максимум текущей свечи выше максимума предыдущей

Закрытие текущей свечи ниже минимума предыдущей.

=================================================
Я вроде бы что то исправил , но на графике ни чего не отображает ! А на скринах отметил в ручную !
 

Вложения

  • inout.mq4
    inout.mq4
    6,5 КБ · Просмотры: 23
  • 2025-12-11_03-24-30.png
    2025-12-11_03-24-30.png
    65,7 КБ · Просмотры: 213
  • 2025-12-11_03-26-22.png
    2025-12-11_03-26-22.png
    65,4 КБ · Просмотры: 207
...

=================================================
Я вроде бы что то исправил , но на графике ни чего не отображает ! А на скринах отметил в ручную !
Вы зачем то сделали val2[shift] = EMPTY_VALUE;(пусто) и выбрали отображение DRAW_HISTOGRAM. А у заливок и гистограмм нужны две точки - верх-низ. Т.е. нужно
A). либо сделать отображение, которым достаточно одной ценовой метки Line,ARROW.
Б). Либо(если хотите гистограмму) - val2[shift] присваивать ценовое значение отличное от val1 (допустим если val1[shift]=low[shift], то val2[shift]=high[shift] )
 
Вы зачем то сделали val2[shift] = EMPTY_VALUE;(пусто) и выбрали отображение DRAW_HISTOGRAM. А у заливок и гистограмм нужны две точки - верх-низ. Т.е. нужно
A). либо сделать отображение, которым достаточно одной ценовой метки Line,ARROW.
Б). Либо(если хотите гистограмму) - val2[shift] присваивать ценовое значение отличное от val1 (допустим если val1[shift]=low[shift], то val2[shift]=high[shift] )
Тогда вот оригинал индикатора ! Можете сделать поглощение свеч по логике :
1.Логика для бычьего поглощения:
Открытие текущей свечи больше закрытия
Открытие предыдущей свечи меньше закрытия
Открытие предыдущей свечи больше закрытия
Минимум текущей свечи ниже минимума предыдущей
Закрытие текущей свечи выше максимума предыдущей.
========================================
2.Логика для медвежьего поглощения:
Открытие текущей свечи меньше закрытия
Открытие предыдущей свечи больше закрытия
Открытие предыдущей свечи меньше закрытия
Максимум текущей свечи выше максимума предыдущей
Закрытие текущей свечи ниже минимума предыдущей.
 

Вложения

точно такой же как несколько постов выше, 40 предупреждений в компиляторе
Посмотреть вложение 581754

и не одной открытой сделке в тестере и на терминале
Посмотреть вложение 581756
Господа гуру, может всё таки поможете с этим советником, уж очень надо завести его... Всех с наступающим НГ
🥳
🥳
🥳
 
Тогда вот оригинал индикатора ! Можете сделать поглощение свеч по логике :
...
Вы и сами можете внести свои условия. Просто в текущем виде задания у вас последнее условие исключает предыдущее(второй-третий пункт то же фиг поймешь где какой клоз). Нарисуйте две вечки с нумерацией 1,2 и по порядку напишите с соответствующей нумерацией условия(С1>C2, H2>L1 и т.д.). Тогда будет все четко работать.
 
Алерты добавил.
Стрелки уже были буферные:
0 - стрелка вверх.
1 - стрелка вниз.
Доброго времени,уважаемый BUT-не могли бы ВЫ сделать в прилагаемом индикаторе стрелки буферными,пожалуйста?!
 

Вложения

Доброго времени,уважаемый BUT-не могли бы ВЫ сделать в прилагаемом индикаторе стрелки буферными,пожалуйста?!
Здравствуйте! Забирайте.
0 - стрелка вверх.
1 - стрелка вниз.
 

Вложения

Добрый день! Посмотрите пожалуйста, стрелки в тестере не совпадают со стрелками на истории. Иногда совпадают, иногда нет. Спасибо!
 

Вложения

Добрый день! Посмотрите пожалуйста, стрелки в тестере не совпадают со стрелками на истории. Иногда совпадают, иногда нет. Спасибо!

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

В коде есть такие строки:
Код:
l_ima_20 = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, li_100 + 1);
l_irsi_60 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, li_100 + 1);

Обратите внимание на li_100 + 1. Это значит, что индикатор смотрит на следующий бар относительно текущего.

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

В коде есть такие строки:
Код:
l_ima_20 = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, li_100 + 1);
l_irsi_60 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, li_100 + 1);

Обратите внимание на li_100 + 1. Это значит, что индикатор смотрит на следующий бар относительно текущего.

По сути, это индикатор, который хорошо выглядит на истории, но бесполезен в реальной торговле.
Огромное спасибо!!
 
Индикатор использует нечестный прием - он заглядывает в будущее, что невозможно в реальной торговле. В тестере он показывает реальные результаты, но на исторической отрисовке может использовать будущие значения.

В коде есть такие строки:
Код:
l_ima_20 = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, li_100 + 1);
l_irsi_60 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, li_100 + 1);

Обратите внимание на li_100 + 1. Это значит, что индикатор смотрит на следующий бар относительно текущего.

По сути, это индикатор, который хорошо выглядит на истории, но бесполезен в реальной торговле.
В тестере он работает с этим +1 и часть сигналов ( иногда бОльшая) соответствует истории на живом графике. А если удалить эту строчку? Получается она в тестере и на живом графике не нужна?
 
...
В коде есть такие строки:
Код:
l_ima_20 = iMA(NULL, 0, FasterEMA, 0, MODE_EMA, PRICE_CLOSE, li_100 + 1);
l_irsi_60 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, li_100 + 1);

Обратите внимание на li_100 + 1. Это значит, что индикатор смотрит на следующий бар относительно текущего.
...
Не те строчки скопировал. Там индексация в другую сторону, и будущее - это минусовые.
Но это неважно, те строчки просто выше стоят по порядку.

В тестере он работает с этим +1 и часть сигналов ( иногда бОльшая) соответствует истории на живом графике. А если удалить эту строчку? Получается она в тестере и на живом графике не нужна?

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

Вложения

Может ли кто-нибудь предоставить мне опцию EA «не принимать последовательные сигналы одного типа», чтобы при появлении двух последовательных сигналов на покупку или продажу принимался только первый из них.
 

Вложения

Посмотрели (2088) Посмотреть

Отслеживают (1853) Посмотреть

Назад
Верх