Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А зачем мне выдумывать что-то сложное?
Пример демонстрирует не индикатор, а саму возможность вывести информацию из Эксперта в виде индикатора без необходимости создания внешнего кода.
Если ToIndicator_Example.mq5 не заработал, то наверно, код в папке Indicators\Roffild\ не собрался при запуске терминала. Лог был бы кстати...
Конечно, все мы привыкли создавать всё с нуля, поэтому никто не хочет осваивать новые библиотеки, но в современном мире использование стороннего кода - это обычная практика...
Разработчики платформы планомерно совершенствуют систему ранжирования программных модулей по функциональному назначению, а вы со своими библиотеками идете в обратную сторону и хотите всё опять обезличить...))
Чтобы разделять на модули, нужна система разруливания зависимостей. Сейчас такой системы для MQL нет и вряд ли будет.
При нормальной разработке нет чёткого разделения на Эксперта, Библиотеки, Индикатора и Скрипт - всё взаимосвязано. В MQ решили это разделить. Такое разделение подходит для мелких проектов, которые заполонили CodeBase.
Основная причина отсутствия этой библиотеки в CodeBase - это отсутствие возможности опубликовать все файлы одним архивом или через систему контроля версий. Сейчас нужно добавлять в базу каждый файл по отдельности - но это же бред... Поэтому в CodeBase не может быть средних и больших проектов из-за этих ограничений.
Пример записи в лог: https://github.com/Roffild/RoffildLibrary/blob/master/Scripts/Roffild/UnitTests/Log4MQL_UnitTest.mq5
Модуль для LogMXБиблиотека Roffild’a
Я известен сообществу программистов на MQL5 по ником Roffild и это моя библиотека с открытым кодом для MQL5. Попытка реализовать возможности на MQL5, которые уже давно стали стандартом для популярных языков программирования. В каждом файле реализована одна идея. Библиотека пополняется по мере необходимости в новых возможностях.
Мало кто пытался выложить проект в Github. Единого стандарта нет. MetaQuotes не учитывают использование системы контроля версий при создании проекта. Почему-то программисты из MetaQuotes считают, что проект должен быть одного типа. Для мелких проектов, которые публикуются в CodeBase на сайте MQL5.com, такое разделение обосновано. Для средних и крупных проектов невозможно выбрать один тип проекта.
Я экспериментировал с разной структурой построения проекта. Для использования Git пришлось вынести файлы за пределы стандартной структуры папок, принятой в MetaQuotes. Создать ссылку на промежуточную папку (в этой библиотеке папка “Roffild”) - лучший вариант.
MetaEditor может сохранять код в UTF-16, но кодировка UTF-8 с BOM тоже поддерживается. Для конвертации файла с исходным кодом нужно использовать сторонний редактор (рекомендую Notepad++).
Библиотеку можно разделить на интересы:
Документация
MQL5
Java
Ссылки
Roffild.com
Github
MQL5.com: topic for discussion in English
MQL5.com: тема для обсуждения на Русском
Установка
(Необязательно)
mklink /j ссылка куда - не требует прав администратора.
Имеет смысл вынести папку %APPDATA%\MetaQuotes в корень раздела или на раздел большего размера. Windows имеет ограничения на 255 символов пути к файлу. Полный путь к папке MQL5 у меня состоит из 88 символов. При тестировании терминал копирует историю по количеству локальных агентов, что увеличивает размер этой папки на несколько гигабайт.
(Важно)
Запустить create_links.bat из папки MQL5\MyProjects\RoffildLibrary после клонирования проекта.
Code style
Google Java Style
Tab = 3 spaces
Column limit = 110
License
Apache License 2.0
Есть "Запись данных в файл формата MySQL", а почему нет чтения из этого формата?
Потому что записывать в текстовый формат просто, а для чтения из этого формата нужно использовать синтаксический анализатор. https://en.wikipedia.org/wiki/Parsing
Кому просто, а кому нет, к примеру создать 1000 столбцов средствами MQL вовсе не просто...
Кому просто, а кому нет, к примеру создать 1000 столбцов средствами MQL вовсе не просто...
Эм... в MQL вообще нет столбцов. И MQL != SQL - это совсем разные языки.
Для знающих SQL проще отсеять лучшие проходы после оптимизации, когда их количество переваливает за 5000 проходов. Реализовано в TesterSql.mqh