Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 670
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Как создать массив экземпляров класса?
Сделал ClassName* className[], потом на него ArrayResize, но не дает доступ к методам invalid pointer access
Ваш класс, экземпляры которого хотите в массив собирать, должен быть наследован от CObject.
А далее всё просто: создаёте список (массив) объектов CArrayObj, и в него добавляете свои объекты.
По словам "шаблон индикатора" и вашему имени поиск ничего не находит, а написали здесь уже на том Войны и мира.
Какое-нибудь сочетание слов из поста припомните.
Ну, прошу прощения, про шаблон индикатора может быть я попутал - шаблон трала выкладывал.
Давайте так: создайте в редакторе шаблон индикатора, при создании добавьте нужное количество входных переменных и рисуемых буферов.
Далее разберём что нужно делать из конкретной задачи.
Вы если говорите что плохо, скажите как сделать хорошо. Перенести вычисления в OnInit?
Справедливый упрек )) Вот, вариант кода, который был опубликован здесь:
Попробуйте так делать. А в OnInit ничего переносить не надо.
Справедливый упрек )) Вот, вариант кода, который был опубликован здесь:
Попробуйте так делать. А в OnInit ничего переносить не надо.
Я такой код не публиковал здесь - не моё :)
Использую иные конструкции - проще и понятнее.
В OnInit() нужно переносить. Зачем на каждом тике назначать массив индикаторному буферу?
Я такой код не публиковал здесь - не моё :)
Использую иные конструкции - проще и понятнее.
это мое, куда же проще? ))) (по крайней мере у меня тоже в шаблоне есть комментарий limit = rates_total - 1; //--- Первый вызов индикатора или смена таймфрейма или подгрузка данных из истории) и мой стиль форматирования одна фигурная скобка около for() {
ну а по сабжу, чтобы научиться написать свой индикатор, берем шаблон указанный выше и добавляем хотя бы цену закрытия и получаем свой первый индикатор, потом учимся от этой цены закрытия делать МАшку
Я такой код не публиковал здесь - не моё :)
Использую иные конструкции - проще и понятнее.
В OnInit() нужно переносить. Зачем на каждом тике назначать массив индикаторному буферу?
Это не Ваш код. Публиковал кто то из коллег, но кто и где, я не могу вспомнить. Я этот код и имел в виду, когда написал, что в OnInit ничего не надо переносить, а не исходный. Не точно выразился.
А Вы какую конструкцию рекомендовали бы? Эта вроде бы проста предельно.
А, вот и автор фрагмента )))) Опередил меня. Кстати, я тоже такой стиль форматирования использую - с одной открывающейся фигурной скобкой в строке.А, вот и автор фрагмента )))) Опередил меня. Кстати, я тоже такой стиль форматирования использую - с одной открывающейся фигурной скобкой в строке.
ага, код шаблона индикатора чем хорош? запускаешь визард по созданию индикатора, выбираешь типы и цвет линий и если нужно добавляешь input 'ы
и все, индикатор готов, потом копируй из OnCalculate() шаблона тело и пиши расчеты,
свой первый индикатор можно написать за 1 минуту, выше код "Hello word I indicator!!!" - я показал :)
ЗЫ: да кстати, в таком виде индикаторы можно переносить из МТ4 в МТ5, главное индикаторные буферы настроить правильно, в МТ5 там жуть, что с индексацией массивов под буфера.... они просто массивы с обычной массивовской )))) индексацией.... раньше было тяжело к индексации индикаторных буферов привыкнуть в МТ4, теперь наоборот отвыкнуть невозможно и перейти на МТ5 ))))Это не Ваш код. Публиковал кто то из коллег, но кто и где, я не могу вспомнить. Я этот код и имел в виду, когда написал, что в OnInit ничего не надо переносить, а не исходный. Не точно выразился.
А Вы какую конструкцию рекомендовали бы? Эта вроде бы проста предельно.
А, вот и автор фрагмента )))) Опередил меня.ага, код шаблона индикатора чем хорош? запускаешь визард по созданию индикатора, выбираешь типы и цвет линий и если нужно добавляешь input 'ы
и все, индикатор готов, потом копируй из OnCalculate() шаблона тело и пиши расчеты,
свой первый индикатор можно написать за 1 минуту, выше код "Hello word I indicator!!!" - я показал :)
ЗЫ: да кстати, в таком виде индикаторы можно переносить из МТ4 в МТ5, главное индикаторные буферы настроить правильно, в МТ5 там жуть, что с индексацией массивов под буфера.... они просто массивы с обычной массивовской )))) индексацией.... раньше было тяжело к индексации индикаторных буферов привыкнуть в МТ4, теперь наоборот отвыкнуть невозможно и перейти на МТ5 ))))Ничего сложного. Пример кроссплатформенного индикатора (использует класс), но шаблон можно выдернуть - убрать класс и всё лишнее, что ошибки после этого будет выдавать - останется кроссплатформенный шаблон.
Этот индикатор будет одинаково работать на обеих платформах без изменения - лишь компиляция с нужным расширением. Пришлось код разбить на две части - класс и сам индикатор (всё было в одном листинге)
Класс:
Индикатор: