Разбирая огромное количество торговых стратегий, множество заказов на изготовление программ для терминалов MT5 и MT4, просматривая различные сайты по MetaTrader, я пришёл к выводу, что всё это многообразие в подавляющем своём большинстве строится на фактически одних и тех же элементарных функциях, действиях и значениях, повторяющихся от программы к программе. Результатом моей работы стала кроссплатформенная библиотека "DoEasy" для быстрого и лёгкого создания программ для МetaТrader 5 и МetaТrader 4
Первоначальная "базовая" статья отнюдь не потеряла актуальности и всем интересующимся данной темой просто необходимо ее прочесть. Но с тех пор прошло достаточно много времени, сейчас актуальна версия Visual Studio 2017, в которой изменился, пусть и не значительно, интерфейс, да и сама платформа MetaTrader 5 развивалась и не стояла на месте. В статье рассмотрены этапы создания проекта dll, его настройки и совместной работы с инструментами терминала MetaTrader 5.
В предыдущих статьях мы начали создавать большую кроссплатформенную библиотеку, целью которой является упростить создание программ для платформы MetaTrader 5 и MetaTrader 4. В шестой части мы научили библиотеку работать с позициями на счетах с типом "неттинг". В данной части сделаем отслеживание событий срабатывания StopLimit-ордеров и подготовим функционал для отслеживания событий модификации рыночных ордеров и позиций.
В первой статье мы начали создавать большую кроссплатформенную библиотеку, целью которой является облегчение создания программ для платформ MetaTrader 5 и MetaTrader 4. Создали абстрактный объект COrder, который является базовым объектом для хранения данных исторических ордеров и сделок, а также рыночных ордеров и позиций. Теперь мы создадим все необходимые объекты для хранения данных истории счёта в коллекциях.
В данной статье мы научимся писать советники, которые работают сразу и в MetaTrader 4, и в MetaTrader 5. Для этого мы попробуем написать советник, работающий по принципу создания сетки из ордеров. Сеточники или гридеры — это советники, основной принцип работы которых заключается в одновременном выставлении нескольких лимитных ордеров выше текущей цены, и такого же количества лимитных ордеров ниже текущей цены.
Применение Reinforcement learning для разработки самообучающихся экспертов. В предыдущей статье мы познакомились с алгоритмом Random Decision Forest и написали простого самообучающегося эксперта на основе Reinforcement learning (обучения с подкреплением). Было отмечено основное преимущество такого подхода как простота написания торгового алгоритма и высокая скорость "обучения". Обучение с подкреплением (далее просто RL) легко внедряется в любого торгового эксперта и увеличивает скорость его оптимизации.
В статье рассматривается применение метода раздельной оптимизации на различных состояниях рынка. Раздельная оптимизация — это определение оптимальных параметров торговой системы с помощью оптимизации отдельно для восходящего и нисходящего тренда. Для снижения эффекта ложных сигналов и улучшения прибыльности, системы делают гибкими, то есть у них существует какой-то определенный набор настроек или входных данных, что вполне оправдано, потому что поведение рынка постоянно меняется.
В данной статье мы подробно рассмотрим такую систему, как мартингейл. Подумаем, можно ли ее применять, и как ее применять, чтобы максимально снизить риски. Самый главный недостаток этой простой системы — есть вероятность потерять весь депозит. И это необходимо учитывать в своей торговле, если вы все таки решите использовать данную торговую систему.
В статье сделан краткий обзор 10 трендовых стратегий, проведено их тестирование, сравнительный анализ. На основе полученных результатов сделан общий вывод о целесообразности, достоинствах и недостатках торговли по тренду.
Ни для кого не секрет, что успешность работы любого торгового робота зависит от правильного подбора его параметров (его оптимизации). Но оптимальные для одного временного интервала параметры не всегда оказываются наилучшими на другом участке истории. А зачастую советники, прибыльные на тестировании, оказываются убыточными в реальном времени. И здесь возникает вопрос о необходимости постоянной оптимизации. А там где появляется много рутинной работы человек ищет пути ее автоматизации. В данной статье я предлагаю свой нестандартный подход к решению данной задачи.
Данная статья является логическим продолжением предыдущей публикации "Разворотные паттерны: Тестируем паттерн "Двойная вершина/дно". Теперь мы рассмотрим еще один широко известный разворотный паттерн "Голова-Плечи", сравним результативность торговли двух паттернов и сделаем попытку объединить торговлю по двум паттернам в единую торговую систему.
Это последняя статья из серии, посвященной такой торговой стратегии, как реверсирование. В ней мы попробуем решить проблему, которая приводила к нестабильности результатов тестирования в предыдущих статьях. А также напишем и протестируем свой алгоритм для ручной торговли на любом рынке с помощью реверсирования.
В практике торговли трейдеры часто ищут точки разворота трендов и тенденций, так как именно в момент зарождения тренда цена имеет наибольший потенциал движения. Именно поэтому, в практике технического анализа рассматриваются различные разворотные паттерны. Одним из наиболее известных и часто применяемых паттернов является двойная вершина/дно. В данной статье предлагается вариант машинного обнаружения паттерна, а также тестируется его доходность на исторических данных.
Исследование явления гэпа — ситуации существенной разницы между ценой закрытия предыдущего таймфрейма и ценой открытия следующего, и в какую сторону пойдёт дневной бар. Применение системной DLL функции GetOpenFileName.
В данной статье мы попробуем разобраться, что же такое реверсирование, стоит ли его применять и можно ли с его помощью улучшить вашу торговую стратегию. Мы создадим советника и на исторических данных посмотрим, какие индикаторы лучше всего подходят для реверсирования, а также можно ли использовать его вообще без индикаторов как самостоятельную торговую систему. Посмотрим, получится ли превратить убыточную торговую систему в прибыльную с помощью реверсирования.
В этой статье мы продолжим рассматривать тему реверсирования. Мы попробуем снизить максимальную просадку по балансу до приемлемого уровня на ранее рассмотренных инструментах. Проверим, насколько при этом снизится полученная прибыль. А также проверим, как работает реверсирование на других рынках: фондовом, сырьевом, индексах и ETF, аграрном. Внимание, статья содержит очень много картинок!
Участники официального фриланс-сервиса для платформ MetaTrader к октябрю 2018 года выполнили уже более 50 000 заказов. Это самая большая в мире биржа удаленной работы для MQL-программистов — более тысячи исполнителей, десятки новых заявок от трейдеров ежедневно и локализация на 7 языков.
Существуют различные стратегии торговли. Одни ищут направленное движение и торгуют по тренду. Другие определяют диапазоны ценовых колебаний и торгуют внутри таких коридоров. И возникает вопрос, можно ли объединить два подхода для увеличения прибыльности торговли?
Мониторинг торгового счета — это подробный отчет по всем совершенным сделкам. Вся торговая статистика собирается автоматически и предоставляется вам в виде понятных диаграмм и графиков.
Платформа MetaTrader 5 является не только мультирыночной, но и позволяет применять различные системы учёта позиций. Такие возможности существенно расширяют инструментарий для реализации и формализации торговых идей. В статье идёт речь о том, как обрабатывать и учитывать свойства позиций при их независимом учете ("хеджинг"). Предлагается производный класс, приводятся примеры обработки и получения свойств хеджевой позиции.
В статье описывается графический конструктор стратегий. Показано, как любой пользователь может создавать торговые роботы и утилиты без программирования. Созданные советники можно тестировать в тестере стратегий, оптимизировать в облаке и запускать на графике в режиме реального времени.
Язык программирования MQL позволяет реализовать концепцию модульного проектирования торговых стратегий. В статье показан пример создания многомодульного советника, состоящего из отдельно скомпилированных файловых модулей.
В статье разбираются преимущества и недостатки торговли на флэте. Созданы и протестированы 10 стратегий, основанных на отслеживании движения цены внутри канала. Каждая стратегия снабжена механизмом фильтрации, чтобы отсеять ложные сигналы на вход в рынок.
Эта статья завершает серию материалов о торговле корзинами валютных пар. В ней протестирован оставшийся паттерн и обсуждается использование всей методики в реальной торговле. Рассмотрены вход и выход с рынка, поиск и анализ паттернов, сложное использование объединенных индикаторов.
Random Forest (RF) с применением бэггинга — один из самых сильных методов машинного обучения, который немного уступает градиентному бустингу. В статье делается попытка разработки самообучающейся торговой системы, которая принимает решения на основании полученного опыта взаимодействия с рынком.
В статье реализовано MQL-приложение с графическим интерфейсом для расширенной визуализации процесса оптимизации. Графический интерфейс создан с помощью последней версии библиотеки EasyAndFast. У многих пользователей возникает вопрос, зачем нужны графические интерфейсы в MQL-приложениях. В настоящей статье продемонстрирован один из множества случаев, когда они могут быть полезными для трейдеров.
Статья написана на основе книги Р.Винса "Математика управления капиталом". В ней рассматриваются эмпирические и параметрические методы нахождения оптимального размера торгового лота, на основе которых написаны торговые модули управления капиталом для мастера MLQ5.
Мы заканчиваем тестирование паттернов, которые можно увидеть при торговле корзинами пар. В статье представлены результаты тестирования паттернов, отслеживающих движение валют пары по отношению друг к другу.
Как известно, ценовые тренды образуют ценовые каналы. Один из сильных сигналов на изменение тренда — прорыв текущего канала. В этой статье я предлагаю попробовать автоматизировать процесс поиска таких сигналов и посмотреть, действительно ли можно на этом построить свою стратегию торговли.
В статье описан индикатор NRTR и торговая система, созданная с его использованием. Для этих целей создаётся модуль торговых сигналов, с помощью которых создаются стратегии, основанные на комбинациях NRTR и дополнительных индикаторов, подтверждающих тренд.
В этой статье продолжается тема написания кода к торговым системам, описанным в книге Линды Рашке и Лоуренса Коннорса "Биржевые секреты. Высокоэффективные стратегии краткосрочной торговли". На этот раз исследуется система 'Momentum Pinball': описано создание двух индикаторов, торгового робота и сигнального блока по ней.
Продолжаем тестирование паттернов и проверку методик, описанных в статьях о торговле корзинами валютных пар. Рассмотрим на практике, можно ли использовать паттерны пересечения графиком объединенного WPR скользящей средней, и если можно, то как именно.
В статье предложена технология, с помощью которой каждый желающий сможет создать свою уникальную торговую стратегию, собрав индивидуальный набор индикаторов, и разработать собственные сигналы для входа в рынок.
В статье рассматривается один из вариантов практической реализации советника для торговли по уровням ДиНаполи при помощи стандартных инструментов MQL5. Протестированы результаты его работы и сделаны выводы.
В статье рассказывается о графике "Ренко" и приведен один из вариантов его реализации на языке MQL5 в виде индикатора. Индикатор имеет множество модификаций, отличающих его от классического графика. Реализовано построение не только в окне индикатора, но и на главном графике. Кроме того, реализовано представление индикатора в виде линий "ZigZag". Приведено несколько примеров стратегий работы с графиком.
До сих пор не существует логически завершенной теории рынка, охватывающей все типы и разновидности рынков товаров и услуг, микро- и макро-рынков, наподобие Форекс. Статья повествует о сущности новой теории рынка, основанной на анализе прибыли, вскрывает закономерности изменения текущей цены, а также выявляет принцип работы механизма, позволяющего цене находить наиболее оптимальное свое значение путем образования цепи виртуальных цен, способных вырабатывать управляющие воздействия на саму цену. Выявлены механизмы образования и смены трендов на рынке.
Взгляните в ваш торговый терминал. Какие способы представления цены вы видите? Бары, свечи, линейный. Мы гонимся за временем и ценами, а прибыль нам дает одна цена. Так может стоит посмотреть на рынок лишь только с ценами? В данной статье предложен алгоритм построения пункто-цифровых графиков ("крестики-нолики") и скрипт, позволяющий производить построение данных графиков. Рассмотрены типичные ценовые паттерны и даны рекомендации по их практическому использованию.
Представляю вашему вниманию продолжение статьи "Приобщаемся к объектно-ориентированному программированию в MQL5". Напомню, в статье рассматривалось создание с нуля простого объектно-ориентированного советника, а также были даны некоторые советы по ООП. На этот раз я представлю вам технические основы для создания торгового советника, торгующего на новостях. В своей серии статей я хочу поделиться своими идеями в области ООП, а также раскрыть новую тему – работу с файловой системой.
Сегодня мы поговорим о том, как привязать терминал MetaTrader 5 к аккаунту в Твиттере для того, чтобы публиковать сигналы вашего эксперта. Мы разрабатываем Social Decision Support System (Социальную систему поддержки принятия решений), далее SDSS, в PHP на основе веб-сервиса RESTful. В основе этой идеи лежит концепция автоматической торговли или, так называемая торговля при помощи компьютеров. Мы хотим, чтобы автоматические торговые сигналы эксперта проходили через фильтры когнитивных способностей разума человека.
Я не являюсь профессиональным программистом. И поэтому принцип «от простого к сложному» имеет для меня первостепенное значение, когда я встречаюсь с таким понятием как МТС, а точнее создание МТС. Что есть для меня простое? Прежде всего это визуализация самого процесса создания системы и логики её функционирования. А также минимум рукописного кода. В данной статье я попробую создать и протестировать МТС на основе матлабовского пакета, а затем напишу эксперт для MetaTrader 5. Причём для тестирования будут использованы исторические данные из МetaTrader 5.