Графические интерфейсы II: Элемент "Пункт меню" (Глава 1)
В второй части серии будет показан процесс разработки таких элементов интерфейса, как главное меню и контекстное меню. Также затронем тему рисования элементов и для этого создадим специальный класс. Очень широко будет освещен такой вопрос, как управление событиями программы, в том числе и пользовательскими.
LifeHack для трейдера: Сравнительный отчет нескольких тестирований
В статье рассматривается одновременный запуск тестирования советника сразу на четырёх разных символах. Итоговое сравнение четырёх отчётов тестирования приводится в одной таблице, как при выборе товаров в интернет-магазинах. Дополнительным бонусом идут автоматически создаваемые графики распределений для каждого символа.
Применение OpenCL для тестирования свечных моделей
В данной статье мы рассмотрим алгоритм реализации тестера свечных моделей на языке OpenCL в режиме "OHLC на M1". А также сравним его быстродействие cо встроенным тестером стратегий, запущенным в режиме быстрой и медленной оптимизации.
Индикатор трендовых линий с учетом подхода Т.Демарка
Индикатор показывает линии тренда отражая самые последние события на рынке. Индикатор построен по рекомендациям и с учетом подхода Томаса Демарка к техническому анализу. Индикатор отображает не только последнее направление тренда, но и предпоследнее противоположное направление тренда.
Использование электронных таблиц для построения торговых стратегий
В статье описаны основные принципы и приёмы, позволяющие провести анализ любой стратегии с помощью электронных таблиц — Excel, Calc, Google. Также сделано сравнение полученных результатов с тестером MetaTrader 5.
Интеграция эксперта на MQL и базы данных (SQL Server, .NET и C#)
Статья описывает, как добавить в экспертов на MQL5 возможность работы с сервером баз данных Microsoft SQL Server. Используется импорт функций из DLL. Для создания DLL применяется платформа Microsoft .NET и язык C#. Используемые в статье методы с незначительными изменениями подходят и для экспертов, написанных на MQL4.
Рецепты MQL5 - Разработка мультивалютного индикатора для анализа расхождения цен
В этой статье рассмотрим разработку мультивалютного индикатора для анализа расхождения цен за указанный период времени. Многие основные моменты уже рассматривались в предыдущей статье по программированию мультивалютных индикаторов "Разработка мультивалютного индикатора волатильности на MQL5". Поэтому на этот раз будем останавливаться только на новых функциях и тех функциях, которые претерпели сильные изменения. Если Вы впервые рассматриваете тему программирования мультивалютных индикаторов, то рекомендуется в первую очередь прочитать предыдущую статью.
Прогнозирование временных рядов с использованием нейронных сетей LSTM: Нормализация цены и токенизация времени
В статье описывается простая стратегия нормализации рыночных данных с использованием дневного диапазона и обучения нейронной сети для улучшения рыночных прогнозов. Разработанные модели могут использоваться совместно с существующими системами технического анализа или отдельно для прогнозирования общего направления рынка. Структура, изложенная в этой статье, может быть дополнительно усовершенствована техническим аналитиком для разработки моделей, подходящих как для ручных, так и для автоматизированных торговых стратегий.
Спать или не спать?
Предлагается альтернатива использованию функции Sleep() при реализации пауз между действиями эксперта. Рассматриваемый подход позволяет более рационально использовать машинное время.
Что можно сделать с помощью скользящих средних
В данной статье мне захотелось собрать некоторые способы применения индикатора "Скользящая средняя". Практически к каждому способу, если требуется анализ кривых, сделаны индикаторы, визуализирующие полезную идею. В большинстве случаев идеи подсмотрены у других авторов, однако, собранные все вместе, они помогут точнее видеть основные направления и — надеюсь — принимать более правильные торговые решения. Уровень знания языка MQL5 — начальный.
LifeHack для трейдера: "Тихая" оптимизация или Строим распределения трейдов
Анализ торговой истории и построение HTML графиков распределения результатов торговли в зависимости от времени входа в позицию. Графики отображаются в трех разрезах – по часам, дням недели и месяцам.
Расчёт интегральных характеристик излучений индикаторов
Излучения индикаторов - это малоизученное направление исследования рынка. В первую очередь из-за трудности анализа, которая вызвана обработкой очень больших массивов изменяющихся во времени данных. Существующий графический анализ слишком ресурсоёмкий и поэтому был разработан экономный алгоритм с использованием таймсерий излучений. В статье предлагается заменить визуальный (интуитивно-образный) анализ исследованием интегральных характеристик излучения. Статья будет интересна как трейдерам, так и разработчикам механических торговых систем.
Система голосовых уведомлений торговых событий и сигналов
В настоящее время голосовые помощники уже давно заняли заметную роль в жизни человека, будь то навигатор, голосовой поисковик или же переводчик. Поэтому в данной статье я постараюсь разработать простую и понятную систему голосовых уведомлений для различных торговых событий, состояниях рынка или же сигналов торговых систем.
Графические интерфейсы XI: Интеграция графической стандартной библиотеки (build 16)
Недавно разработчики MQL5 представили новую версию графической библиотеки для создания научных графиков (класс CGraphic). В этом обновлении нашей библиотеки будет представлена версия с новым элементом для создания графиков. Теперь визуализировать данные различных типов будет ещё проще.
Многослойный перцептрон и алгоритм обратного распространения ошибки (Часть II): Реализация на Python и интеграция с MQL5
Уже доступен пакет Python для разработки интеграции с MQL, что открывает двери для многих возможностей, таких как изучение данных и создание и использование моделей машинного обучения. Эта встроенная интеграция MQL5 в Python открывает для нас много возможностей, которые позволяют построить от простой линейной регрессии до моделей глубокого обучения. Давайте разберемся, как установить и подготовить среду разработки и использовать некоторые библиотеки машинного обучения.
Графические интерфейсы II: Элементы "Разделительная линия" и "Контекстное меню" (Глава 2)
В этой статье мы создадим элемент «Разделительная линия». Его тоже можно будет использовать не только как независимый элемент интерфейса, но и как часть многих других элементов. После этого у нас будет всё необходимое для разработки класса контекстного меню, которое тоже будет подробно рассмотрено в этой статье. Кроме этого, вносятся необходимые дополнения в класс, который является базой для хранения указателей на все элементы графического интерфейса приложения.
Обработка ошибок и логирование в MQL5
В статье рассматриваются общие вопросы обработки ошибок в программном обеспечении. Кроме того, затрагивается тема логирования и демонстрируется пример реализации логгера средствами MQL5.
Alert и Comment для внешних индикаторов
В практической работе трейдер иногда сталкивается с такой ситуацией: нужно получить «alert» или текстовое сообщение на экране монитора, (в окне графика) сообщение или информацию о появившемся сигнале от какого-либо индикатора. В статье приводится пример вывода информации о графических объектах, созданных сторонним индикатором.
Повышаем качество кода при помощи Unit Test
Даже в простых программах зачастую находятся ошибки, которые кажутся невероятными. "Как я такое написал?" - первое, что приходит в голову, когда мы обнаруживаем такую ошибку. Второй вопрос - "Как этого избежать?" - приходит гораздо реже. Нельзя написать 100%-ный безошибочный код, особенно в больших проектах, но можно использовать технологии для их своевременного обнаружения. Статья рассказывает о том, как можно повысить качество MQL4 кода, применяя распространенную методику модульного тестирования (Unit Testing).
Точки разворота PIVOT POINTS, помогающие определить направление движения рынка
Точка разворота (PIVOT POINT) – линия на графике цены, которая показывает дальнейшую тенденцию движения валютной пары. Если цена находится выше этой линии, то цена имеет тенденцию к росту. Если ниже, соответственно, - к падению.
Как быстро написать советник для Automated Trading Championship 2010
Для того чтобы разработать эксперт для участия в чемпионате Automated Trading Championship 2010, воспользуемся шаблоном готового советника. Данная задача будет по силам даже новичку в программировании на MQL5, т.к. для ваших стратегий уже разработаны базовые классы, функции, шаблоны. Достаточно написать минимум кода, чтобы реализовать свою торговую идею.
Использование MetaTrader 5 как поставщика торговых сигналов для MetaTrader 4
В статье обсуждаются особенности использования MetaTrader 5 в качестве поставщика торговых сигналов для MetaTrader 4. Вы узнаете как создать простой поставщик торговых сигналов из MetaTrader 5 и как его подключить к нескольким терминалам MetaTrader 4. Также вы узнаете о том, как в реальном времени копировать сделки участников Automated Trading Championship на свой реальный счет в MetaTrader 4.
Рецепты MQL5 - обработка события TradeTransaction
В статье описываются возможности языка MQL5 с точки зрения событийно-ориентированного программирования. Преимущество данного подхода состоит в том, что программа может получать информацию о поэтапном выполнении торговой операции. Приводится пример того, как с помощью обработчика события TradeTransaction можно получать и обрабатывать информацию о совершаемых торговых действиях. Думаю, что такой подход можно смело применять для целей копирования торговых сделок с терминала на терминал.
Кроссплатформенный торговый советник: Временные фильтры
В статье обсуждается реализация различных методов временной фильтрации в кроссплатформенном торговом советнике. Классы временных фильтров отвечают за проверку того, попадает ли конкретное время в определенный период, заданный в настройках.
Строим анализатор спектра
Данная статья призвана познакомить читателя с возможным вариантом использования графических объектов языка MQL5. В статье рассматривается индикатор, в котором при помощи графических объектов создана панель управления простейшим анализатором спектра. Статья рассчитана на читателя, знакомого с основами языка MQL5.
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XXIII): Основной торговый класс - контроль допустимых параметров
В статье продолжим развитие торгового класса - организуем контроль неверных значений параметров торгового приказа и озвучим торговые события.
Графические интерфейсы VI: Элементы "Слайдер" и "Двухсторонний слайдер" (Глава 2)
В предыдущей статье разрабатываемая библиотека была пополнена сразу четырьмя довольно часто используемыми в графических интерфейсах элементами управления: «чекбокс», «поле ввода», «поле ввода с чекбоксом» и «комбобокс с чекбоксом». Вторая глава шестой части серии будет посвящена таким элементам управления, как слайдер и двухсторонний слайдер.
Заблуждения, Часть 2: Статистика - лженаука, или Хроника пикирующего бутерброда
Многочисленные попытки применения методов статистики к объективной реальности, т.е. к финансовым рядам, разбиваются о скалы нестационарности процессов, «толстохвостости» сопутствующих вероятностных распределений и недостаточного объема финансовых данных.В данной публикации я попытаюсь обратиться не к финансовым рядам как таковым, а к их субъективному отражению – в данном случае к тому, как эти ряды пытается оседлать трейдер, т.е. к торговой системе. Выявление статистических закономерностей процесса, описывающего результаты сделок, оказывается довольно увлекательным занятием. В некоторых случаях возможно даже сделать вполне достоверные выводы о модели этого процесса и применить эти выводы к торговой системе.
Одновременное отображение сигналов нескольких индикаторов с четырех таймфреймов
При ручной торговле, в отличие от механической, трейдеру необходимо постоянно следить за значениями нескольких индикаторов. Если индикаторов, к примеру, два или три, а для торговли выбран один таймфрейм, то это совсем несложная задача. А как быть, если индикаторов - пять или шесть, а торговая стратегия обязывает учитывать сигналы на нескольких таймфреймах?
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XXII): Торговые классы - Основной торговый класс, контроль ограничений
В статье начнём создавать основной торговый класс библиотеки и наделим его первую версию функционалом первичной проверки разрешений на проведение торговых операций. Также немного расширим возможности и содержание базового торгового класса.
Графические интерфейсы X: Элемент "Время", элемент "Список из чекбоксов" и сортировка таблицы (build 6)
Продолжаем развивать библиотеку для создания графических интерфейсов. На этот раз будут представлены такие элементы, как «Время» и «Список из чекбоксов». Кроме этого, в класс таблицы типа CTable добавлена возможность сортировать данные по возрастанию и убыванию.
Кроссплатформенный торговый советник: Мани-менеджмент
В этой статье обсуждается реализация мани-менеджмента в кроссплатформенном торговом советнике. Классы мани-менеджмента отвечают за расчет размера лота, которым советник войдет в следующую сделку.
Кроссплатформенный торговый советник: Сигналы
В статье обсуждаются классы CSignal и CSignals, которые будут использоваться в кроссплатформенных торговых советниках. Рассмотрены различия между MQL4 и MQL5 в организации данных, необходимых для оценки полученных торговых сигналов. Итог — код, совместимый с компиляторами обеих версий.
Alert и Comment для внешних индикаторов (часть вторая)
С момента публикации статьи "Алерт и коммент для внешних индикаторов" продолжают поступать письма с просьбами или вопросами как сделать внешний информер от индикаторных линий. Обобщив эту группу вопросов я решил продолжить тему.
Вторым направлением в котором заинтересованы пользователи стало получение информации которая хранится в индикаторных буферах.
Еще раз о картах Кохонена
Cтатья описывает приемы работы с картами Кохонена. Она будет интересна как исследователям рынка с начальными навыками программирования на MQL4 и MQL5, так и опытным программистам, испытывающим сложности с подключением карт Кохонена к своим проектам.
Классификационные модели библиотеки Scikit-learn и их экспорт в ONNX
В данной статье мы рассмотрим применение всех классификационных моделей пакета Scikit-learn для решения задачи классификации ирисов Фишера, попробуем их сконвертировать в ONNX-формат и использовать полученные модели в программах на MQL5. Также мы сравним точность работы оригинальных моделей и их ONNX-версий на полном наборе Iris dataset.
Вот мы и получили долгожданные MetaTrader 5 и MQL5
Это очень краткий обзор MetaTrader 5. Я не могу описать все новшества системы за столь короткий период времени - тестирование стартовало 09-09-2009. Это символическая дата, и я уверен, что это будет счастливым числом. Всего несколько дней у меня на руках бета-версия терминала MetaTrader 5 и MQL5. Я не успел опробовать все, что в нем есть нового, но то, что есть, уже впечатляет.
Построение излучений индикаторов в MQL5
В статье рассматриваются излучения индикаторов - новое направление исследования рынка. Принцип построения излучений основан на пересечении линий различных индикаторов - с каждым тиком на графике появляются всё новые и новые точки с различным цветом и формой. Они образуют многочисленные скопления в виде туманностей, облаков, дорожек, линий, дуг и т.п. Эти характерные области точек помогают обнаружить невидимые пружины и силы, которые влияют на движение рыночных цен.
MetaTrader для работы на фондовом рынке - легко!
В данной статье поднимается проблема автоторговли на фондовом рынке. Приводится пример интеграции MetaTrader и QUIK. Описаны преимущества MT для решения данной задачи, приводится пример торгового робота, способного выполнять операции на ММВБ.
Изучаем возможности создания разноцветных свечных графиков
В этой статье мы рассмотрим возможности создания кастомных свечных индикаторов, а также поговорим об их преимуществах и недостатках.