Как подготовить описание продукта для Маркета
Как подготовить описание продукта для Маркета
В MQL5 Маркете представлено много продуктов, однако их описания оставляют желать лучшего. Многие тексты непонятны обычному трейдеру и нуждаются в улучшении. Данная статья поможет вам представить свой продукт в выгодном свете. Воспользуйтесь ею и создайте хорошее описание, которое доходчиво объяснит вашим покупателям, что именно вы продаете.
Как протестировать торгового робота перед покупкой
Как протестировать торгового робота перед покупкой
Покупка торгового робота в MQL5 Маркете имеет одно большое преимущество перед всеми другими подобными предложениями - вы можете устроить комплексную проверку предлагаемой автоматической системы прямо в терминале MetaTrader 5. Каждый советник перед покупкой можно и нужно тщательно прогнать во всех неблагоприятных режимах во встроенном тестере торговых стратегий, чтобы получить о нем максимально полное представление.
Мастер MQL5: Как написать свой модуль управления капиталом и рисками
Мастер MQL5: Как написать свой модуль управления капиталом и рисками
Генератор торговых стратегий Мастера MQL5 значительно упрощает проверку торговых идей. В статье рассказывается о том, как написать и подключить в Мастер MQL5 свой собственный модуль управления капиталом и рисками. В качестве примера рассматривается создание алгоритма управления капиталом, в котором размер торгового объема определяется в зависимости от результатов предыдущей сделки. Рассматривается структура и формат описания созданного класса для Мастера MQL5.
Мастер MQL5: Новая версия
Мастер MQL5: Новая версия
Статья описывает возможности, появившиеся в новой версии Мастера MQL5. Изменения в архитектуре сигналов позволяют теперь создавать торговые роботы на основе комбинации различных рыночных моделей. На конкретном примере рассматривается процедура интерактивного создания готового к торговле эксперта.
Рецепты MQL5 - Программируем скользящие каналы
Рецепты MQL5 - Программируем скользящие каналы
В данной статье представлен способ программирования системы равноудалённых каналов. Рассматриваются некоторые нюансы построения таких каналов. Приводится типизация каналов, предлагается способ универсального типа скользящих каналов. При реализации кода используется инструментарий ООП.
Ордерные стратегии. Универсальный автомат
Ордерные стратегии. Универсальный автомат
Целью данной статьи является рассмотрение стратегий, активно использующих отложенные ордера, создание метаязыка для формального описания этих стратегий и использование универсального эксперта, работающего по этим описаниям
Как создать эксперта за несколько минут при помощи EA Tree: Часть 1
Как создать эксперта за несколько минут при помощи EA Tree: Часть 1
Программа EA Tree является первым инструментом, позволяющим построить код советника на базе блок-схем методом "drag and drop". Создание советников в EA Tree осуществляется путем построения блоков, которые могут содержать функции языка MQL5, технические и пользовательские индикаторы, или численные значения. Выходы блоков могут быть соединены с входами других блоков, образуя "дерево блоков". На базе дерева блоков программа EA Tree генерирует исходный код советника, который затем может быть скомпилирован в торговой платформе MetaTrader 5.
Несколько советов для  начинающих заказчиков
Несколько советов для начинающих заказчиков
Народная мудрость, авторство которой часто приписывают различным известным людям, говорит: "Тот не ошибается, кто ничего не делает". Если не считать само ничегонеделание тоже ошибкой, то с этим утверждением трудно спорить. Зато вполне возможно проанализировать ранее совершенные ошибки (свои и чужие) и свести к минимуму количество совершаемых ошибок в будущем. Сделаем попытку разобрать возможные ситуации, возникающие в процессе выполнения работ на одноименном сервисе.
Стратегия "Всё или Ничего" на Форексе
Стратегия "Всё или Ничего" на Форексе
Цель данной статьи - создание максимально простой торговой стратегии, реализующей игровой принцип "Всё или Ничего". Задача создания прибыльного советника не ставится, цель - увеличение начального депозита в несколько раз с максимально возможной вероятностью. Возможно ли, ничего не зная о техническом анализе и не используя никаких индикаторов, использовать Форекс для получения большого выигрыша против вероятности всё потерять?
Реализация индикаторов в виде классов на примере Zigzag и ATR
Реализация индикаторов в виде классов на примере Zigzag и ATR
Споры о том, какой способ расчета индикаторов является оптимальным, идут постоянно. Где лучше вычислять значения индикатора - в самом индикаторе или встроить всю логику в код самого эксперта, который его использует? В статье рассматривается один из вариантов переноса кода пользовательского индикатора iCustom непосредственно в код эксперта или скрипта с оптимизацией расчетов и моделированием значения prev_calculated.
Мастер MQL5: Как написать свой модуль торговых сигналов
Мастер MQL5: Как написать свой модуль торговых сигналов
Генератор торговых стратегий Мастера MQL5 значительно упрощает проверку торговых идей. В статье рассказывается о том, как написать и подключить в Мастер MQL5 свой собственный класс торговых сигналов с реализацией сигналов по пересечению ценой скользящей средней, рассматривается структура и формат описания созданного класса для Мастера MQL5.
Многопоточный асинхронный WebRequest на MQL5 своими руками
Многопоточный асинхронный WebRequest на MQL5 своими руками
В статье рассмотрена библиотека, позволяющая повысить эффективность работы с HTTP-запросами в MQL5. Выполнение WebRequest в неблокирующем режиме реализовано в дополнительных потоках с использованием вспомогательных графиков и экспертов, обмена пользовательскими событиями и чтения разделяемых ресурсов. Исходные коды прилагаются.
Разработка социального технологического стартапа, часть II: Программируем клиент MQL5 REST
Разработка социального технологического стартапа, часть II: Программируем клиент MQL5 REST
Сегодня мы окончательно оформим идею публикации торговых сигналов эксперта в Твиттере на основе PHP. Об этом мы начали говорить в первой части статьи. Мы соберем вместе отдельные части SDSS. Что касается клиентской стороны архитектуры системы, мы будем использовать новую функцию MQL5 WebRequest() для отправки торговых сигналов через HTTP.
Эконометрический подход к поиску рыночных закономерностей: автокорреляция, тепловые карты и диаграммы рассеяния
Эконометрический подход к поиску рыночных закономерностей: автокорреляция, тепловые карты и диаграммы рассеяния
Расширенное исследование сезонных характеристик: автокорреляция тепловые карты и диаграммы рассеяния. Целью текущей статьи является показать, что "память рынка" имеет сезонный характер, который выражается через максимизацию корреляции приращений произвольного порядка.
Прогнозирование временных рядов (Часть 2): метод наименьших квадратов опорных векторов (LS-SVM)
Прогнозирование временных рядов (Часть 2): метод наименьших квадратов опорных векторов (LS-SVM)
В статье рассмотрена теория и практическое применение алгоритма прогнозирования временных рядов на основе метода опорных векторов, предложена его реализация на MQL, предоставлены тестовые индикаторы и эксперты. Данная технология до сих пор не была ещё реализована на MQL. Но сначала нам потребуется познакомиться с некоторым математическим аппаратом.
Прогнозирование временных рядов (Часть 1): метод эмпирической модовой декомпозиции (EMD)
Прогнозирование временных рядов (Часть 1): метод эмпирической модовой декомпозиции (EMD)
В статье рассмотрена теория и практическое применение алгоритма прогнозирования временных рядов на основе эмпирической модовой декомпозиции, предложена его реализации на MQL, предоставлены тестовые индикаторы и эксперты.
14 000 торговых роботов в MetaTrader Market
14 000 торговых роботов в MetaTrader Market
В самом большом магазине готовых приложений для алготрейдинга уже 13 970 продуктов. Среди них 4 800 роботов, 6 500 индикаторов, 2 400 утилит и другие решения. При этом почти половину приложений (6 000) можно не покупать, а арендовать. А четверть от общего числа продуктов (3 800) и вовсе доступна бесплатно.
Применение OLAP в трейдинге (Часть 3): анализ котировок в целях выработки торговых стратегий
Применение OLAP в трейдинге (Часть 3): анализ котировок в целях выработки торговых стратегий
В данной статье мы продолжим рассматривать технологию OLAP в применении к трейдингу, расширяя функционал, представленный в первых двух статьях. На этот раз оперативному анализу подвергнутся котировки. Показано выдвижение и проверка гипотез о торговых стратегиях на основе агрегированных показателей истории. Представлены эксперты для исследований побаровых закономерностей и адаптивной торговли.
Построение советника с использованием отдельных модулей
Построение советника с использованием отдельных модулей
В процессе разработки индикаторов, советников и скриптов, разработчику приходится постоянно создавать законченные фрагменты кода, непосредственного отношения к стратегии торговли не имеющих. В статье рассмотрен способ проектирования советников с использованием ранее спроектированных отдельных блоков - тралов, фильтров, расписаний и т.п. Разобрана полезная особенность такого рода проектирования.
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XVIII): Интерактивность объекта-аккаунт и любых других объектов библиотеки
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XVIII): Интерактивность объекта-аккаунт и любых других объектов библиотеки
В статье организована работа объекта-аккаунт на новом базовом объекте всех объектов библиотеки, доработан базовый объект CBaseObj и протестирована установка отслеживаемых параметров, а также получение событий для любых объектов библиотеки.
Создаем кроссплатформенный советник-сеточник (Окончание): диверсификация как способ повышения прибыльности
Создаем кроссплатформенный советник-сеточник (Окончание): диверсификация как способ повышения прибыльности
В прошлых статьях данной серии мы пытались разными способами создать более или менее прибыльный советник-сеточник. Теперь же мы попробуем увеличить прибыльность торгового советника с помощью диверсификации. Нашей целью является всеми желанные 100% прибыли в год при 20% максимальной просадки по балансу.
Новый подход к интерпретации классической и обратной дивергенции. Часть 2
Новый подход к интерпретации классической и обратной дивергенции. Часть 2
В этой статье мы в критическом ключе рассмотрим классическую дивергенцию и проанализируем эффективность различных индикаторов. А также предложим варианты фильтрации для повышения точности анализа и продолжим рассматривать нестандартные решения. Как результат, создадим нетипичный инструмент для решения поставленной задачи.
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XIX): Класс сообщений библиотеки
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XIX): Класс сообщений библиотеки
В статье рассмотрим класс вывода текстовых сообщений. Сейчас у нас имеется достаточное количество различных текстовых сообщений, и уже стоит подумать о реорганизации способа их хранения, вывода и удобства правки русских сообщений на иной язык, а так же об удобном способе добавления новых языков в библиотеку и быстром переключении между ними.
Создаем кроссплатформенный советник-сеточник (Часть III): сетка на коррекциях с мартингейлом
Создаем кроссплатформенный советник-сеточник (Часть III): сетка на коррекциях с мартингейлом
В этой статье мы попробуем создать лучший из возможных советников, работающих по принципу сеточника. Как обычно, это будет кроссплатформенный советник, способный работать как в MetaTrader 4, так и в MetaTrader 5. Первый советник был хорош всем, кроме того, что не мог принести прибыль на длительном промежутке времени. Второй советник мог работать на интервалах более нескольких лет. Но принести более 50% прибыли в год при максимальной просадке менее 50% он был не способен.
Применение OLAP в трейдинге (Часть 2): Визуализация результатов интерактивного анализа многомерных данных
Применение OLAP в трейдинге (Часть 2): Визуализация результатов интерактивного анализа многомерных данных
В статье рассматриваются различные аспекты создания интерактивного графического интерфейса MQL-программы, предназначенной для OLAP-обработки истории счета и торговых отчетов. Для получения наглядного результата используются максимизируемые и масштабируемые окна, адаптивная раскладка "резиновых" элементов управления, новый "контрол" для вывода диаграмм. На основе этого реализован GUI с выбором показателей по координатным осям, агрегатных функций, типов графиков и сортировок.
Исследование методов свечного анализа (Часть III): Библиотека работы с паттернами
Исследование методов свечного анализа (Часть III): Библиотека работы с паттернами
Целью данной статьи является создание пользовательского инструмента, позволяющего получать и использовать весь массив информации о паттернах, рассмотренных ранее. Для этого будет разработана библиотека, которую можно будет использовать в своих индикаторах, торговых панелях, экспертах и т.д.
Создаем кроссплатформенный советник-сеточник (Часть II): Сетка в рейндже в направлении тренда
Создаем кроссплатформенный советник-сеточник (Часть II): Сетка в рейндже в направлении тренда
Сегодня мы попробуем разработать сеточный советник для работы в диапазоне в направлении тренда. То есть для инструментов Forex или рынков сырья. Как показали тесты, наш сеточник работал в прибыль с 2018 года. Но вот беда, с 2014 по 2018 год это был стабильный слив депозита
Применение OLAP в трейдинге (Часть 1): Основы оперативного анализа многомерных данных
Применение OLAP в трейдинге (Часть 1): Основы оперативного анализа многомерных данных
В статье описываются общие принципы построения фреймворка для оперативного анализа многомерных данных (OLAP), его реализация на MQL и применение в среде MetaTrader на примере обработки торговой истории счета.
Извлечение структурированных данных из HTML-страниц с помощью CSS-селекторов
Извлечение структурированных данных из HTML-страниц с помощью CSS-селекторов
В статье описан универсальный метод анализа и конвертации данных из HTML-документов, основанный на CSS-селекторах. Торговые отчеты, отчеты тестера, ваши любимые экономические календари, публичные сигналы и мониторы счетов, дополнительные источники онлайн котировок - все это становится доступным из MQL.
ZigZag всему голова (Часть I): Разработка базового класса индикатора
ZigZag всему голова (Часть I): Разработка базового класса индикатора
Многие исследователи не уделяют должного внимания определению характера поведения цены. При этом используются сложные методы, которые очень часто являются просто «чёрными ящиками», такие как: машинное обучение или нейронные сети. В таких случаях самым важным является такой — «Какие данные подать на вход для обучения той или иной модели?»
Практическое использование нейросетей Кохонена в алгоритмическом трейдинге (Часть I): Инструментарий
Практическое использование нейросетей Кохонена в алгоритмическом трейдинге (Часть I): Инструментарий
Данная статья развивает идею использования сетей Кохонена в МетаТрейдер 5, освещавшуюся в нескольких предыдущих материалах. Исправленные и усовршенствованные классы предоставляют инструментарий для решения прикладных задач.
ZigZag всему голова (Часть II):  Примеры получения, обработки и отображения данных
ZigZag всему голова (Часть II): Примеры получения, обработки и отображения данных
В первой части был описан модифицированный индикатор ZigZag и класс для получения данных индикаторов такого типа. Теперь мы покажем как создать индикаторы на основе этих инструментов, а также напишем эксперта для тестов, который будет заключать сделки по сигналам, формируемым индикатором ZigZag. В качестве дополнения в этой статье будет представлена новая версия библиотеки для создания графических интерфейсов EasyAndFast.
Практическое использование нейросетей Кохонена в алгоритмическом трейдинге (Часть II): Оптимизация и прогнозирование
Практическое использование нейросетей Кохонена в алгоритмическом трейдинге (Часть II): Оптимизация и прогнозирование
На основе универсального инструментария для работы с сетями Кохонена строится система анализа и выбора оптимальных параметров советника, а также рассматривается прогнозирование временных рядов. В первой части мы исправили и усовершенствовали публично доступные нейросетевые классы, дополнив их необходимыми алгоритмами. Теперь настало время применить их на практике.
Создаем кроссплатформенный советник-сеточник (гридер)
Создаем кроссплатформенный советник-сеточник (гридер)
В данной статье мы научимся писать советники, которые работают сразу и в MetaTrader 4, и в MetaTrader 5. Для этого мы попробуем написать советник, работающий по принципу создания сетки из ордеров. Сеточники или гридеры — это советники, основной принцип работы которых заключается в одновременном выставлении нескольких лимитных ордеров выше текущей цены, и такого же количества лимитных ордеров ниже текущей цены.
Применение метода Монте-Карло в обучении с подкреплением
Применение метода Монте-Карло в обучении с подкреплением
Применение Reinforcement learning для разработки самообучающихся экспертов. В предыдущей статье мы познакомились с алгоритмом Random Decision Forest и написали простого самообучающегося эксперта на основе Reinforcement learning (обучения с подкреплением). Было отмечено основное преимущество такого подхода как простота написания торгового алгоритма и высокая скорость "обучения". Обучение с подкреплением (далее просто RL) легко внедряется в любого торгового эксперта и увеличивает скорость его оптимизации.
Соединение MetaTrader 5 и Python: получение и отправка данных
Соединение MetaTrader 5 и Python: получение и отправка данных
Работа с данными в наше время требует обширного инструментария и зачастую не ограничивается "песочницей" какого-то отдельного приложения. Существуют специализированные общепризнанные языки программирования для обработки и анализа данных, статистики и машинного обучения. Лидером в этой области является язык Python. В статье описан пример связи MetaTrader 5 и Python при помощи сокетов, а также получение котировок через API терминала.
Раздельная оптимизация стратегии на тренде и флете
Раздельная оптимизация стратегии на тренде и флете
В статье рассматривается применение метода раздельной оптимизации на различных состояниях рынка. Раздельная оптимизация — это определение оптимальных параметров торговой системы с помощью оптимизации отдельно для восходящего и нисходящего тренда. Для снижения эффекта ложных сигналов и улучшения прибыльности, системы делают гибкими, то есть у них существует какой-то определенный набор настроек или входных данных, что вполне оправдано, потому что поведение рынка постоянно меняется.
Мартингейл как основа долгосрочной торговой стратегии
Мартингейл как основа долгосрочной торговой стратегии
В данной статье мы подробно рассмотрим такую систему, как мартингейл. Подумаем, можно ли ее применять, и как ее применять, чтобы максимально снизить риски. Самый главный недостаток этой простой системы — есть вероятность потерять весь депозит. И это необходимо учитывать в своей торговле, если вы все таки решите использовать данную торговую систему.
Как самостоятельно создать и протестировать в MetaTrader 5 инструменты Московской биржи
Как самостоятельно создать и протестировать в MetaTrader 5 инструменты Московской биржи
В статье рассказывается как с помощью языка MQL5 создать свой собственный символ биржевого инструмента. В частности, используя биржевые котировки с популярного сайта "финам". Кроме того рассматривается возможность работы с произвольным форматом текстовых файлов, из которых создается пользовательский символ. Поэтому и финансовые инструменты и источники данных могут быть любыми. Создав пользовательский символ, мы можем использовать все возможности тестера стратегий MetaTrader 5 для проверки торговых алгоритмов на биржевых инструментах.