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

Ребята, программисты! Нужен подвиг, конвертировать из Pine Script®
в MQL5. Перспективный индикатор, идеально как фильтр для других
индикаторов. В прилагаемых файлах есть готовый индикатор, но в закрытом
коде. Нужен такой же, но с буферами читаемыми советником.
Ради интереса попробовал перевести из пайна в мукл4.
Сначала полученный код порадовал - чего-то нарисовал с параметрами по умолчанию
Но после вызова настройки параметров возникает ошибка Access violation read to 0x00000034 без указания строки где возникает.
1745432530323.png
Напихал в код кучу if (Debug_On) Print( чтобы поймать при обращении к какому массиву возникает косяк, так и не нашел.... может глаз замылился и не вижу очевидного :unsure:.
Вот код для желающих продолжить начатое ... ;)
 

Вложения

Ради интереса попробовал перевести из пайна в мукл4.
Сначала полученный код порадовал - чего-то нарисовал с параметрами по умолчанию
Но после вызова настройки параметров возникает ошибка Access violation read to 0x00000034 без указания строки где возникает.
1) Не нужно задавать в OnInit, а затем в OnCalculate (на каждом тике!) размеры массивов которые связаны с индикаторными буферами - терминал сам прекрасно с этим справляется.
2) Оператор switch - требует наличия оператора break, иначе будет то, что есть.
3) Не использовать в одном и том же цикле расчет iMA или чего бы то ни было и тут же производить расчет данных с помощью iMAOnArray.
Исправишь и все заработает.
 

Вложения

1) Не нужно задавать в OnInit, а затем в OnCalculate (на каждом тике!) размеры массивов которые связаны с индикаторными буферами - терминал сам прекрасно с этим справляется.
Я в курсе ;) Это уже из пушки по воробьям: добавил в попытке поймать в каком массиве возникает Access violation из-за размерности. Но наличие этих операторов на ошибку не повлияло, как и отсутствие.
2) Оператор switch - требует наличия оператора break, иначе будет то, что есть.
Там return... break после него как мертвому припарка.
case SMA:
Print("Расчет SMA для бара index=", index);
return(iMA(NULL, 0, _period, 0, MODE_SMA, PRICE_CLOSE, index));
Print("этого сообщения не должно быть");
лог
2025.04.24 03:23:53.151 Optimized Trend Tracker XAUUSD,H1: Расчет SMA для бара index=0
2025.04.24 03:23:53.151 Optimized Trend Tracker XAUUSD,H1: Расчет SMA для бара index=1
2025.04.24 03:23:53.151 Optimized Trend Tracker XAUUSD,H1: Расчет SMA для бара index=2
2025.04.24 03:23:53.151 Optimized Trend Tracker XAUUSD,H1: Расчет SMA для бара index=3

3) Не использовать в одном и том же цикле расчет iMA или чего бы то ни было и тут же производить расчет данных с помощью iMAOnArray.
Это в секции ТМА. Я чегото там перевел из паЙна, но еще не дошел до его отладки - ошибка возникает уже на первом расчете SMA.
Хотя с точки зрения "глаз замылился" - этот код точно кривой и его надо поправить в первую очередь.
Спасибо, MobiDik, возможно ошибка Access violation зарыта там - сейчас проверю.
 
Это в секции ТМА. Я чегото там перевел из паЙна, но еще не дошел до его отладки - ошибка возникает уже на первом расчете SMA.
Хотя с точки зрения "глаз замылился" - этот код точно кривой и его надо поправить в первую очередь.
Спасибо, MobiDik, возможно ошибка Access violation зарыта там - сейчас проверю.
Привет! Все нормально работает, но посмотришь изменения в функции расчета ТМА. Ошибку исправил. 😎
Влад, доброе утро!
Три головы оказалось в самый раз ✌️
Спасибо! Значит ТМА, которую я не вызывал при тестировании, из-за кривизны кода давала Access violation при переинициализации ? Чудны коды твои, MQL4 :unsure:
 
Значит ТМА, которую я не вызывал при тестировании, из-за кривизны кода давала Access violation при переинициализации ?
Да, странно, что эту функцию нигде не вызываешь (ТМА), но iMAOnArray, при использовании константного массива в ТМА, вызывает такую ошибку доступа к массиву. Я много лет назад уже словил один раз такую ошибку и долго не мог понять в чем дело, и сегодня снова пришлось перерыть весь код, чтобы до нее добраться.:rolleyes:
 
Доброго времени суток всем участникам чата.
У кого нибудь есть исходник этого индикатора?
Буду очени признателен если поделитесь.
 

Вложения

  • Скриншот 24.04.25_12.09.47.png
    Скриншот 24.04.25_12.09.47.png
    30,1 КБ · Просмотры: 74
  • Rsi-arrows.ex4
    Rsi-arrows.ex4
    23 КБ · Просмотры: 49
прошу, может ли кто-нибудь добавить к этому индикатору периоды = младший и старший + менять цвет зоны между младшим и старшим в выбранный цвет?
 

Вложения

Добрый день всем.Можно приделать стрелки при пересечении линий с буферами для сова.
 

Вложения

Что то не очень похоже, согласитесь? :unsure:
Вообще-то первые версии KivancOzbilgic@Anil_Ozeksi на ПайнЕ (2022-05-07) где-то так и рисовали.
2025-04-24_12-16-35.png
Затем ее правил Sam4Cok@Samer800 в августе-ноябре 2022
1745500210612.png

Версия Пайна, с которой делали аналог на mql5, прошла несколько доработок, последние что я видел 2024 года.
1745500080296.png
В прицепе две версии для мукла4: с кнопкой и каким-то косяком внутри, и без кнопки и косяка.
Делали их на сайте Младена, исходников нет - только ех4.

ЗЫ. Последняя версия Пайна с которой и надо делать перенос на мукл в прицепе. Но для моего первого раза делать ее сложно, может со временем разберусь что к чему.
Так что желающие сделать это быстрее - велкам !
 

Вложения

Последнее редактирование:
прошу, может ли кто-нибудь добавить к этому индикатору периоды = младший и старший + менять цвет зоны между младшим и старшим в выбранный цвет?
Стиль закрашивания меняйте в настройках.
 

Вложения

  • RecentHighLowAlert mod.mq4
    RecentHighLowAlert mod.mq4
    12,7 КБ · Просмотры: 68
  • 1745507889680.png
    1745507889680.png
    70,6 КБ · Просмотры: 235
  • 1745507985715.png
    1745507985715.png
    35,5 КБ · Просмотры: 228
Добрый день всем.Можно приделать стрелки при пересечении линий с буферами для сова.
Добрый день.
Буфер 2 - стрелка вверх.
Буфер 3 - стрелка вниз.

В настройках есть выбор типа сигнала: прямой и обратный. Прямой - в зависимости от того, как пересекает первый символ второй, так и появляется стрелка. Если обратный, соответственно сигналы как пересекает второй символ первый.
 

Вложения

Вообще-то первые версии KivancOzbilgic@Anil_Ozeksi на ПайнЕ (2022-05-07) где-то так и рисовали.
Посмотреть вложение 567798
Затем ее правил Sam4Cok@Samer800 в августе-ноябре 2022
Посмотреть вложение 567801

Версия Пайна, с которой делали аналог на mql5, прошла несколько доработок, последние что я видел 2024 года.
Посмотреть вложение 567800
В прицепе две версии для мукла4: с кнопкой и каким-то косяком внутри, и без кнопки и косяка.
Делали их на сайте Младена, исходников нет - только ех4.

ЗЫ. Последняя версия Пайна с которой и надо делать перенос на мукл в прицепе. Но для моего первого раза делать ее сложно, может со временем разберусь что к чему.
Так что желающие сделать это быстрее - велкам !
Осталось уже не так много, собрать линии в одну в случае совпадения, и назначить буферы.
Ну кто готов к подвигу?
 
Доброго времени суток всем участникам чата.
У кого нибудь есть исходник этого индикатора?
Буду очени признателен если поделитесь.
cоветую запустить в тестере MT4 этот индикатор и посмотреть
 
Вообще-то первые версии KivancOzbilgic@Anil_Ozeksi на ПайнЕ (2022-05-07) где-то так и рисовали.
Посмотреть вложение 567798
Затем ее правил Sam4Cok@Samer800 в августе-ноябре 2022
Посмотреть вложение 567801

Версия Пайна, с которой делали аналог на mql5, прошла несколько доработок, последние что я видел 2024 года.
Посмотреть вложение 567800
В прицепе две версии для мукла4: с кнопкой и каким-то косяком внутри, и без кнопки и косяка.
Делали их на сайте Младена, исходников нет - только ех4.

ЗЫ. Последняя версия Пайна с которой и надо делать перенос на мукл в прицепе. Но для моего первого раза делать ее сложно, может со временем разберусь что к чему.
Так что желающие сделать это быстрее - велкам !
И да, забыл сказать, всё это выполнить в .mql5.
 
Кошмар.... все светочи собрались для совершения... кгм... подвига по переводу Супертренда в непонятно что. Генри, Вам-то это зачем, скажите на милость? Вот уж не ожидал. Вы вроде говорили, что с программированием вообще завязали. Мне-то всё равно, просто зачем Вам эта пустота, о которой все через неделю забудут?
 
Кошмар.... все светочи собрались для совершения... кгм... подвига по переводу Супертренда в непонятно что. Генри, Вам-то это зачем, скажите на милость? Вот уж не ожидал. Вы вроде говорили, что с программированием вообще завязали. Мне-то всё равно, просто зачем Вам эта пустота, о которой все через неделю забудут?
Я планировал для себя из пайновского скрипта Nadaraya_RationalQuadKernel сделать мукловскую версию. Там кода много - сразу не потяну, вот и решил попробовать на чем-то попроще. Пробовать все-равно на чем ;), я просто учусь читать пайновский код. Сам понимаешь, если алгоритм понятен, то смысла в портации кода нет. Легче и быстрее написать идею на мукле с нуля.
 

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

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

Назад
Верх