Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 656

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Задача не для новичков, если честно. Надо сохранить всё что есть на графике в шаблон, потом добавить в этот шаблон нужный индикатор со всеми параметрами и загрузить новый шаблон обратно на график. Сохранить и загрузить шаблон можно средствами MQL, а вот для редактирования файла шаблона уже нужно DLL писать наверное, не уверен, что пользовательский скрипт имеет доступ к записи в файлы шаблонов.
Операции с графиками
Функции для работы с графиками. Все операции с графиками применимы только в экспертах и скриптах.
Функции, устанавливающие свойства графика, фактически служат для отправки ему команд на изменение. При успешном выполнении этих функций команда попадает в общую очередь событий графика. Изменение графика производится в процессе обработки очереди событий данного графика.
По этой причине не следует ожидать немедленного визуального обновления графика после вызова данных функций. В общем случае обновление графика производится терминалом автоматически по событиям изменения - поступление новой котировки, изменения размера окна графика и т.д. Для принудительного обновления внешнего вида графика используйте команду на перерисовку графика ChartRedraw().
Функция
Действие
ChartApplyTemplate
Применяет к указанному графику шаблон из указанного файла
ChartSaveTemplate
Сохраняет текущие настройки графика в шаблон с указанным именем
ChartWindowFind
Возвращает номер подокна, в котором находится индикатор
ChartTimePriceToXY
Преобразует координаты графика из представления время/цена в координаты по оси X и Y
ChartXYToTimePrice
Преобразует координаты X и Y графика в значения время и цена
ChartOpen
Открывает новый график с указанным символом и периодом
ChartFirst
Возвращает идентификатор графика, следующего за указанным
ChartNext
Возвращает идентификатор первого графика клиентского терминала
ChartClose
Закрывает указанный график
ChartSymbol
Возвращает имя символа указанного графика
ChartPeriod
Возвращает значение периода указанного
Операции с графиками
Да, да именно. Где тут редактирование шаблонов (или добавление индикатора, как в МТ5)? Нету. Значит ДЛЛ надо, да? Или есть ещё методы добавления индикaтора на график МТ4, кроме редактирования шаблона?
Вопрос был про добавление индикатора с помошью советника, вот тут
Задача не для новичков, если честно. Надо сохранить всё что есть на графике в шаблон, потом добавить в этот шаблон нужный индикатор со всеми параметрами и загрузить новый шаблон обратно на график. Сохранить и загрузить шаблон можно средствами MQL, а вот для редактирования файла шаблона уже нужно DLL писать наверное, не уверен, что пользовательский скрипт имеет доступ к записи в файлы шаблонов.
а если я открою в отдельном окне нужные мне индикаторы, сохраню это все в шаблон. потом запущу прогу на "пустом" графике и открою этот шаблон. все индикаторы тоже откроются? или мне надо в самом шаблоне прописывать открытие индикаторов?
а если я открою в отдельном окне нужные мне индикаторы, сохраню это все в шаблон. потом запущу прогу на "пустом" графике и открою этот шаблон. все индикаторы тоже откроются? или мне надо в самом шаблоне прописывать открытие индикаторов?
После применения шаблона, все индикаторы будут автоматически прикреплены к данному окну графика.
После применения шаблона, все индикаторы будут автоматически прикреплены к данному окну графика.
оке) понял) благодарствую, други
а если я открою в отдельном окне нужные мне индикаторы, сохраню это все в шаблон. потом запущу прогу на "пустом" графике и открою этот шаблон. все индикаторы тоже откроются? или мне надо в самом шаблоне прописывать открытие индикаторов?
Вопрос 1-й - Во внешних параметрах советника в новых билдах (МЕ5 Билд 934; МТ4 Билд 646) вместо названий переменных отражаются комментарии. Как от этого избавиться? Только не предлагать не писать комментариев - они мне нужны (см. вопрос 2-й).
Вопрос 2-й - Насколько я понимаю, комментарии предназначены для записей самого программиста для себя любимого своих мыслей, заметок и т.п. в процессе написания кода. Если это так (а именно этому учат и в книжках и на курсах), то это уникальная задача. И нас учат: одна функция - одна задача. Следовательно, когда у этой задачи появляется другая задача - именно таким каламбуром и нужно воспринимать то, что сделано в новых билдах, то получается винегрет. - Разве это правильно? Иначе, как тогда мне написать мои комментарии, которые нужны мне, и я совсем не хочу, чтобы их видели все, кто угодно. Потому что, если мои коменты отражаются в публичности, то какие тогда это комментарии? Это уже совсем другая задача.
То есть мы имеем 2 разных задачи: "комментарии для себя в ходе написания кода" и "описание внешних переменных".
Думается, для новой задачи "описание внешних переменных", должна выделяться другая независимая опция компилятора. Или, хотя бы, сделать эту опцию на выбор пользователя (хотя, это уже противоречит базовым принципам программирования).
Если я ошибаюсь, поправьте меня.
Вопрос 1-й - Во внешних параметрах советника в новых билдах (МЕ5 Билд 934; МТ4 Билд 646) вместо названий переменных отражаются комментарии. Как от этого избавиться? Только не предлагать не писать комментариев - они мне нужны (см. вопрос 2-й).
Вопрос 2-й - Насколько я понимаю, комментарии предназначены для записей самого программиста для себя любимого своих мыслей, заметок и т.п. в процессе написания кода. Если это так (а именно этому учат и в книжках и на курсах), то это уникальная задача. И нас учат: одна функция - одна задача. Следовательно, когда у этой задачи появляется другая задача - именно таким каламбуром и нужно воспринимать то, что сделано в новых билдах, то получается винегрет. - Разве это правильно? Иначе, как тогда мне написать мои комментарии, которые нужны мне, и я совсем не хочу, чтобы их видели все, кто угодно. Потому что, если мои коменты отражаются в публичности, то какие тогда это комментарии? Это уже совсем другая задача.
То есть мы имеем 2 разных задачи: "комментарии для себя в ходе написания кода" и "описание внешних переменных".
Думается, для новой задачи "описание внешних переменных", должна выделяться другая независимая опция компилятора. Или, хотя бы, сделать эту опцию на выбор пользователя (хотя, это уже противоречит базовым принципам программирования).
Если я ошибаюсь, поправьте меня.
Так-то удобно, что внешние переменные можно делать более читабельными для себя же и/или пользователей.
А чтобы комментарии к внешним переменным не отображались (были видимыми только в коде), можно просто написать их второй строкой.
То бишь, к примеру, вместо:
сделать в две строки:
в первом случае вместо Abcd будет отображаться во внешних переменных: "Хочу профит на отметке: 1.2345",
во втором: "AbcD 1.2345"
Так-то удобно, что внешние переменные можно делать более читабельными для себя же и/или пользователей.
А чтобы комментарии к внешним переменным не отображались (были видимыми только в коде), можно просто написать их второй строкой.
То бишь, к примеру, вместо:
сделать в две строки:
в первом случае вместо Abcd будет отображаться во внешних переменных: "Хочу профит на отметке: 1.2345",
во втором: "AbcD 1.2345"
Да, я совсем не против, что удобно. Более того, понимаю чего хотели добиться. Только нельзя же реализовывать одну задачу, убивая при этом другую.
В 2 строчки писать - это уже менее удобно, т.к. если это 5-10 переменных, то можно перетерпеть (хотя, опять же, зачем терпеть?). А если этих переменных около 200? В этом случае размер кода вырастет значительно.
С другой стороны, если это будет другая опция, то все равно придется код увеличивать за счет описания переменной. Поэтому, вероятно, предложенное Вами решение будет, все-таки, более оптимальным и лаконичным, нежели вводить 2-ю опцию. Готов согласиться.
Если правильно догадываюсь, перевод каретки - ограничение для описания переменной?
И у меня дополнительный вопрос:
Можно ли сделать описания опционально на нескольких языках по выбору? Это было бы еще более удобно. : )) В этом случае все равно лучше доп опцию делать, нежели коменты обычные для описания использовать.
Кстати. Эти описания переменных все равно скупо отображаются в окне настроек, т.к. размеры колонок не сохраняют растяжений и большая часть описания "съедается" узостью колонки описания. Зато для значений переменных места неоправданно много. Так что, хотели как лучше... Но и это шаг вперед. : ))