![Рецепты MQL5 - Мультивалютный эксперт: пример простой, точной и быстрой схемы](https://c.mql5.com/2/0/avatar__3.png)
![Рецепты MQL5 - Мультивалютный эксперт: пример простой, точной и быстрой схемы](https://c.mql5.com/i/articles/overlay.png)
Рецепты MQL5 - Мультивалютный эксперт: пример простой, точной и быстрой схемы
В этой статье мы рассмотрим реализацию простой схемы для мультивалютного эксперта. В данном случае имеется в виду, что эксперт можно будет настроить на тестирование/торговлю по одинаковым условиям, но с разными параметрами для каждого символа. В качестве примера создадим схему для двух символов, но сделаем это так, чтобы при необходимости можно было добавлять дополнительные символы, внося небольшие изменения в код.
![Простейшие торговые системы с использованием семафорных индикаторов](https://c.mql5.com/2/0/Semafor.png)
![Простейшие торговые системы с использованием семафорных индикаторов](https://c.mql5.com/i/articles/overlay.png)
Простейшие торговые системы с использованием семафорных индикаторов
Если разобраться досконально в любой сложной торговой системе, то мы увидим, что в основе её лежит набор простых торговых сигналов. Поэтому начинающему разработчику торговых роботов не стоит сразу же приниматься за написание сложных алгоритмов. В статье приводится пример торговой системы, использующей для осуществления сделок семафорные индикаторы.
![Комбинируем трендовую и флетовую стратегии](https://c.mql5.com/2/33/Trend_Flat__1.png)
![Комбинируем трендовую и флетовую стратегии](https://c.mql5.com/i/articles/overlay.png)
Комбинируем трендовую и флетовую стратегии
Существуют различные стратегии торговли. Одни ищут направленное движение и торгуют по тренду. Другие определяют диапазоны ценовых колебаний и торгуют внутри таких коридоров. И возникает вопрос, можно ли объединить два подхода для увеличения прибыльности торговли?
![Создание мульти-экспертов на основе торговых моделей](https://c.mql5.com/2/0/Multi_Expert_Advisor_MQL5__1.png)
![Создание мульти-экспертов на основе торговых моделей](https://c.mql5.com/i/articles/overlay.png)
Создание мульти-экспертов на основе торговых моделей
Использование объектно-ориентированного подхода в MQL5 значительно упрощает создание мультивалютных/мультисистемных/мультитаймфреймовых экспертов. Только представьте, ваш один единственный эксперт торгует сразу по нескольким десяткам торговых стратегий, сразу на всех доступных инструментах и сразу на всех возможных таймфреймах! К тому же этот эксперт прекрасно тестируется в тестере, а для всех стратегий, входящих в его состав, действует одна или сразу несколько систем управления капиталом.
![Паттерн прорыва канала](https://c.mql5.com/2/30/breakthow_channel.png)
![Паттерн прорыва канала](https://c.mql5.com/i/articles/overlay.png)
Паттерн прорыва канала
Как известно, ценовые тренды образуют ценовые каналы. Один из сильных сигналов на изменение тренда — прорыв текущего канала. В этой статье я предлагаю попробовать автоматизировать процесс поиска таких сигналов и посмотреть, действительно ли можно на этом построить свою стратегию торговли.
![Индикаторы малой, промежуточной и основной тенденции](https://c.mql5.com/2/0/three_degrees_of_trend.png)
![Индикаторы малой, промежуточной и основной тенденции](https://c.mql5.com/i/articles/overlay.png)
Индикаторы малой, промежуточной и основной тенденции
Предметом статьи является исследование возможности автоматизации торговли и анализа на основании некоторых идей из книги Джеймса Хьержика "Модель, Цена и Время. Применение теории Ганна в системах торговли" в виде индикаторов и эксперта. Не претендуя на исчерпывающую полноту, здесь исследуется только первая часть теории Ганна - Модель.
![Отладка программ на MQL5](https://c.mql5.com/2/0/avatar21a.png)
![Отладка программ на MQL5](https://c.mql5.com/i/articles/overlay.png)
Отладка программ на MQL5
Эта статья ориентирована в первую очередь на программистов, которые уже изучили язык, но еще недостаточно освоились в разработке программ. Статья раскрывает практические приемы отладки программ и является объединенным опытом, не только моим, но и многих программистов, на опыте которых я учился.
![Учёт ордеров в большой программе](https://c.mql5.com/2/13/114_3.gif)
![Учёт ордеров в большой программе](https://c.mql5.com/i/articles/overlay.png)
Учёт ордеров в большой программе
Рассматриваются общие принципы построения учёта ордеров в сложной программе.
![Создаем помощника в ручной торговле](https://c.mql5.com/2/23/panel__1.png)
![Создаем помощника в ручной торговле](https://c.mql5.com/i/articles/overlay.png)
Создаем помощника в ручной торговле
Количество торговых роботов для работы на валютных рынках в последнее время растет как снежный ком. В них закладываются различные концепции и стратегии, но беспроигрышный образец искусственного интеллекта создать еще никому не удалось. Поэтому многие трейдеры остаются приверженцами ручной торговли. Но и для таких специалистов создаются роботизированные помощники, так называемые торговые панели. Данная статья — еще один пример создания торговой панели "с нуля".
![Обработка торговых событий в эксперте при помощи функции OnTrade()](https://c.mql5.com/2/0/function_ontrade_MQL5.png)
![Обработка торговых событий в эксперте при помощи функции OnTrade()](https://c.mql5.com/i/articles/overlay.png)
Обработка торговых событий в эксперте при помощи функции OnTrade()
В 5-ой версии языка MQL появилась масса нововведений, в том числе работа с событиями различных типов (события таймера, торговые события, пользовательские и т.д.). Возможность обработки событий позволяет создавать совершенно новый тип программ для автоматического и полуавтоматического трейдинга. В этой статье мы рассмотрим торговые события и напишем для функции OnTrade() код, который будет обрабатывать событие Trade.
![Насколько безопасно покупать продукты в MQL5 Маркете?](https://c.mql5.com/2/0/avatar__18.png)
![Насколько безопасно покупать продукты в MQL5 Маркете?](https://c.mql5.com/i/articles/overlay.png)
Насколько безопасно покупать продукты в MQL5 Маркете?
Мы запустили сервис по продаже торговых программ для MetaTrader 5 и сделали его безопасным. Мы постарались минимизировать все связанные с этим риски, чтобы вы смогли сконцентрироваться на самом главном - на поиске нужного вам робота!
![Рассматриваем на практике адаптивный метод следования за рынком](https://c.mql5.com/2/29/MQL5-avatar-adaptiveMethod-001.png)
![Рассматриваем на практике адаптивный метод следования за рынком](https://c.mql5.com/i/articles/overlay.png)
Рассматриваем на практике адаптивный метод следования за рынком
Основное отличие торговой системы, предложенной в статье — использование математических инструментов для анализа биржевых котировок. В системе применяются цифровая фильтрация и спектральная оценка дискретных временных рядов. Описаны теоретические аспекты стратегии и построен советник для ее тестирования.
![Волны Вульфа](https://c.mql5.com/2/27/MQL5-avatar-Volni-002.png)
![Волны Вульфа](https://c.mql5.com/i/articles/overlay.png)
Волны Вульфа
Графический метод, предложенный Биллом Вульфом, позволяет не только выявить фигуру и тем самым определить момент и направление входа, но и спрогнозировать цель, которую должна достигнуть цена, и время ее достижения. В статье описано, как на основе индикатора Зигзаг создать индикатор для поиска волн Вульфа и простой советник, торгующий по его сигналам.
![Раскладываем входы по индикаторам](https://c.mql5.com/2/30/eagoh7z681u4_pdq0h_2f_8dqlderd9j5.png)
![Раскладываем входы по индикаторам](https://c.mql5.com/i/articles/overlay.png)
Раскладываем входы по индикаторам
В жизни трейдера бывают разные ситуации. Часто по истории успешных сделок мы пытаемся восстановить стратегию, а глядя на историю убытков — доработать и улучшить ее. И в том, и в другом случае мы сопоставляем сделки с известными индикаторами. В этой статье предлагается методика пакетного сопоставления сделок с рядом индикаторов.
![Рецепты MQL5 - Мультивалютный советник и работа с отложенными ордерами на MQL5](https://c.mql5.com/2/0/Pending-Orders.png)
![Рецепты MQL5 - Мультивалютный советник и работа с отложенными ордерами на MQL5](https://c.mql5.com/i/articles/overlay.png)
Рецепты MQL5 - Мультивалютный советник и работа с отложенными ордерами на MQL5
На этот раз рассмотрим создание мультивалютного советника, торговый алгоритм которого строится на работе с отложенными ордерами Buy Stop и Sell Stop. В статье будут рассмотрены следующие вопросы: торговля в указанном временном диапазоне, установка/модификация/удаление отложенных ордеров, проверка закрытия последней позиции по Тейк Профит или Стоп Лосс, контроль истории сделок на каждом символе.
![С чего начать при создании торгового робота для Московской биржи MOEX](https://c.mql5.com/2/23/expert-moex-avatar.png)
![С чего начать при создании торгового робота для Московской биржи MOEX](https://c.mql5.com/i/articles/overlay.png)
С чего начать при создании торгового робота для Московской биржи MOEX
Многие трейдеры на Московской бирже хотели бы автоматизировать свои торговые алгоритмы, но не знают с чего начать. Язык MQL5 предлагает не только огромный набор торговых функций, но и готовые классы, которые максимально облегчают первые шаги в алготрейдинге.
![Трендовые линии на основе фракталов посредством MQL4 и MQL5](https://c.mql5.com/2/18/TrendLines_Fractals_Based.png)
![Трендовые линии на основе фракталов посредством MQL4 и MQL5](https://c.mql5.com/i/articles/overlay.png)
Трендовые линии на основе фракталов посредством MQL4 и MQL5
В статье описано решение по автоматизации построения трендовых линий на основе индикатора Fractals с помощью MQL4 и MQL5. Структура статьи представлена в сравнительном виде в рамках решения поставленной задачи с позиции двух языков. Построение трендовых линий осуществляется по двум последним известным фракталам.
![Мастер MQL5: Новая версия](https://c.mql5.com/2/0/New_Master_MQL5.png)
![Мастер MQL5: Новая версия](https://c.mql5.com/i/articles/overlay.png)
Мастер MQL5: Новая версия
Статья описывает возможности, появившиеся в новой версии Мастера MQL5. Изменения в архитектуре сигналов позволяют теперь создавать торговые роботы на основе комбинации различных рыночных моделей. На конкретном примере рассматривается процедура интерактивного создания готового к торговле эксперта.
![Создание графических интерфейсов для экспертов и индикаторов на базе .Net Framework и C#](https://c.mql5.com/2/35/icon__3.png)
![Создание графических интерфейсов для экспертов и индикаторов на базе .Net Framework и C#](https://c.mql5.com/i/articles/overlay.png)
Создание графических интерфейсов для экспертов и индикаторов на базе .Net Framework и C#
Простой и быстрый способ создания графических окон при помощи редактора Visual Studio с последующей интеграцией в код MQL советника. Статья расчитана на широкий круг читателей, и не требует каких-либо познаний в C# и технологии .Net.
![События в МetaТrader 4](https://c.mql5.com/2/13/119_4.gif)
![События в МetaТrader 4](https://c.mql5.com/i/articles/overlay.png)
События в МetaТrader 4
Статья посвящена программному отслеживанию событий в терминале МetaТrader 4, таких как открытие, закрытие и модификация ордеров, и рассчитана на пользователя, обладающего базовыми навыками работы с терминалом и программирования на MQL 4.
![Доктор Трейдлав, или Как я перестал беспокоиться и написал самообучающийся эксперт](https://c.mql5.com/2/0/smart_EA.png)
![Доктор Трейдлав, или Как я перестал беспокоиться и написал самообучающийся эксперт](https://c.mql5.com/i/articles/overlay.png)
Доктор Трейдлав, или Как я перестал беспокоиться и написал самообучающийся эксперт
Чуть более года назад joo дал нам в своей статье "Генетические алгоритмы - это просто!" инструмент для реализации Генетического алгоритма на MQL5. Воспользуемся же этим инструментом и напишем эксперт, который при наступлении каких-то граничных условий произведет Генетическую оптимизацию своих же параметров...
![Мастер MQL5: Как научить эксперта открывать отложенные ордера по любым ценам](https://c.mql5.com/2/0/Pending_Orders_Trading_MQ5_Wizard_signals.png)
![Мастер MQL5: Как научить эксперта открывать отложенные ордера по любым ценам](https://c.mql5.com/i/articles/overlay.png)
Мастер MQL5: Как научить эксперта открывать отложенные ордера по любым ценам
В статье рассмотрен способ модификации кода модуля торговых сигналов для реализации функционала выставления отложенных ордеров на произвольном расстоянии от текущей цены: это может быть цена Close или Open предыдущего бара, а может быть значение скользящей средней. Вариантов множество – главное, теперь цену открытия отложенного ордера можно выставлять любую. Данная статья станет полезной для тех, кто использует стратегии торговли отложенными ордерами.
![Как быстро добавить панель управления к индикатору и советнику](https://c.mql5.com/2/22/avatar.png)
![Как быстро добавить панель управления к индикатору и советнику](https://c.mql5.com/i/articles/overlay.png)
Как быстро добавить панель управления к индикатору и советнику
Вы хотите добавить к своему индикатору или советнику графическую панельку для удобного и быстрого управления, но не знаете, как это сделать? В этой статье шаг за шагом я покажу как "прикрутить" панель диалога со входными параметрами к вашей MQL4/MQL5-программе.
![Приобщаемся к объектно-ориентированному программированию в MQL5](https://c.mql5.com/2/0/hand.png)
![Приобщаемся к объектно-ориентированному программированию в MQL5](https://c.mql5.com/i/articles/overlay.png)
Приобщаемся к объектно-ориентированному программированию в MQL5
В статье показано, как создать объектно-ориентированного торгового советника с нуля, начиная с выработки торговой идеи и заканчивая созданием торгового советника на языке MQL5, воплощающего данную идею в жизнь. На мой взгляд, самый верный путь к успеху - это обучение на практике, поэтому в статье рассмотрен практический пример, демонстрирующий, как можно упорядочить свои идеи и приступить к программированию форекс-роботов. Кроме того, мне хотелось пробудить интерес читателей к объектно-ориентированному подходу.
![Исследование статистики повторяемости направления свечей](https://c.mql5.com/2/17/890_32.gif)
![Исследование статистики повторяемости направления свечей](https://c.mql5.com/i/articles/overlay.png)
Исследование статистики повторяемости направления свечей
Цель статьи - попытаться предсказать поведение рынка на основе статистики повторяемости направления свечей в определенные промежутки времени.
![Пользовательский тестер стратегий на основе быстрых математических вычислений](https://c.mql5.com/2/30/Custom_math_tester.png)
![Пользовательский тестер стратегий на основе быстрых математических вычислений](https://c.mql5.com/i/articles/overlay.png)
Пользовательский тестер стратегий на основе быстрых математических вычислений
Статья описывает создание пользовательского тестера стратегий и своего собственного анализатора прогонов оптимизации. Прочитав ее, вы поймете, как работает режим математических вычислений и механизм так называемых фреймов, как можно подготовить и загрузить свои собственные данные для расчетов и использовать эффективные алгоритмы их сжатия. Также эта статья будет интересна всем, кто интересуется способами хранения пользовательской информации внутри эксперта.
![Графические интерфейсы I: Форма для элементов управления (Глава 2)](https://c.mql5.com/2/21/Graphic-interface__1.png)
![Графические интерфейсы I: Форма для элементов управления (Глава 2)](https://c.mql5.com/i/articles/overlay.png)
Графические интерфейсы I: Форма для элементов управления (Глава 2)
В этой статье создадим первый и самый главный элемент графических интерфейсов — форму для элементов управления. К этой форме можно будет присоединять множество различных элементов управления в любом расположении и в любых комбинациях.
![Работа с сокетами в MQL, или Как стать провайдером сигналов](https://c.mql5.com/2/23/server_client_exchange.png)
![Работа с сокетами в MQL, или Как стать провайдером сигналов](https://c.mql5.com/i/articles/overlay.png)
Работа с сокетами в MQL, или Как стать провайдером сигналов
Сокеты… Что вообще сейчас в нашем информационном мире может без них существовать? Впервые появившиеся в 1982 г. и практически не изменившиеся до настоящего времени, они исправно работают на нас каждую секунду. Это основа сети, нервные окончания нашей Matrix, в которой мы живем.
![Жидкий график](https://c.mql5.com/2/11/800px-Wiki.png)
![Жидкий график](https://c.mql5.com/i/articles/overlay.png)
Жидкий график
Как выглядит часовой график, у которого бары открываются со второй или с пятой минуты часа? Как выглядит перерисовывающийся график, у которого времена открытия баров изменяются каждую минуту? Какие преимущества даёт торговля по таким графикам? Ответы на эти вопросы вы найдёте в данной статье.
![Универсальный торговый эксперт: Пользовательские стратегии и вспомогательные торговые классы (Часть 3)](https://c.mql5.com/2/21/02fe0hhenus_a0y2.png)
![Универсальный торговый эксперт: Пользовательские стратегии и вспомогательные торговые классы (Часть 3)](https://c.mql5.com/i/articles/overlay.png)
Универсальный торговый эксперт: Пользовательские стратегии и вспомогательные торговые классы (Часть 3)
В этой статье мы продолжим описание алгоритмов торгового движка CStrategy. В третьей части серии статей подробно разобраны примеры написания конкретных торговых стратегий с использованием данного подхода. Также большое внимание уделено вспомогательным алгоритмам — системе логирования эксперта и доступу к биржевым данным с помощью обычного индексатора (Close[1], Open[0] и т.п.).
![AutoElliottWaveMaker - инструмент полуавтоматической разметки волн Эллиотта в MetaTrader 5](https://c.mql5.com/2/0/ElliottWaveMaker2_0.png)
![AutoElliottWaveMaker - инструмент полуавтоматической разметки волн Эллиотта в MetaTrader 5](https://c.mql5.com/i/articles/overlay.png)
AutoElliottWaveMaker - инструмент полуавтоматической разметки волн Эллиотта в MetaTrader 5
В данной статье описывается программа AutoElliottWaveMaker - первая разработка по анализу волн Эллиотта в MetaTrader 5, которая сочетает в себе функции ручной и автоматической разметки волн. Инструмент анализа волн полностью написан на языке MQL5 и не включает сторонние библиотеки dll. Это еще раз подтверждает тот факт, что на MQL5 можно (и нужно) создавать сложные и интересные программы.
![Разворотные паттерны: Тестируем паттерн "Двойная вершина/дно"](https://c.mql5.com/2/34/double_top.png)
![Разворотные паттерны: Тестируем паттерн "Двойная вершина/дно"](https://c.mql5.com/i/articles/overlay.png)
Разворотные паттерны: Тестируем паттерн "Двойная вершина/дно"
В практике торговли трейдеры часто ищут точки разворота трендов и тенденций, так как именно в момент зарождения тренда цена имеет наибольший потенциал движения. Именно поэтому, в практике технического анализа рассматриваются различные разворотные паттерны. Одним из наиболее известных и часто применяемых паттернов является двойная вершина/дно. В данной статье предлагается вариант машинного обнаружения паттерна, а также тестируется его доходность на исторических данных.
![Генератор торговых сигналов пользовательского индикатора](https://c.mql5.com/2/0/icustom_ava.png)
![Генератор торговых сигналов пользовательского индикатора](https://c.mql5.com/i/articles/overlay.png)
Генератор торговых сигналов пользовательского индикатора
Как сделать генератор торговых сигналов основанный на пользовательском индикаторе. Как создать пользовательский индикатор. Как получить доступ к данным пользовательского индикатора. Зачем нужна конструкция IS_PATTERN_USAGE(0) и model 0.
![Создание активных панелей управления на MQL5 для торговли](https://c.mql5.com/2/0/panel__2.png)
![Создание активных панелей управления на MQL5 для торговли](https://c.mql5.com/i/articles/overlay.png)
Создание активных панелей управления на MQL5 для торговли
Статья посвящена разработке активных панелей управления на MQL5. Управление элементами интерфейса осуществляется при помощи механизма обработки событий, есть возможность гибкой настройки свойств элементов управления. Реализована работа с позициями а также возможность выставления, модификации и удаления рыночных и отложенных ордеров.
![Virtual Order Manager для управления ордерами в позициях терминала MetaTrader 5](https://c.mql5.com/2/0/virtual__1.png)
![Virtual Order Manager для управления ордерами в позициях терминала MetaTrader 5](https://c.mql5.com/i/articles/overlay.png)
Virtual Order Manager для управления ордерами в позициях терминала MetaTrader 5
Эта библиотека классов может быть добавлена в советники, написанные для MetaTrader 5, чтобы они могли работать с ордерами в рамках подхода, реализованного в MetaTrader 4, а не в рамках позиционно-ориентированного подхода платформы MetaTrader 5. Это достигается путем отслеживания "виртуальных" ордеров в терминале MetaTrader 5, поддержки стопов, невидимых для брокера, и установкой дальних защитных реальных стопов на торговом сервере.
![Почти конструктор для создания советника](https://c.mql5.com/2/49/An-attempt-at-developing-an-EA-constructor_600x314.jpg)
Почти конструктор для создания советника
Предлагаю свой набор торговых функций в виде готового советника. Представленный способ позволяет получать множество торговых стратегий простым добавлением индикаторов и изменением входных параметров.
![Нечеткая логика в торговых стратегиях](https://c.mql5.com/2/29/Avatar.png)
![Нечеткая логика в торговых стратегиях](https://c.mql5.com/i/articles/overlay.png)
Нечеткая логика в торговых стратегиях
В статье рассматривается пример использования нечеткой логики для построения простой торговой системы, с использованием библиотеки Fuzzy. Предложены варианты улучшения системы путем сочетания нечеткой логики, генетических алгоритмов и нейронных сетей.
![Торговля по уровням ДиНаполи](https://c.mql5.com/2/30/MQL5-avatar-DiNapoli-001.png)
![Торговля по уровням ДиНаполи](https://c.mql5.com/i/articles/overlay.png)
Торговля по уровням ДиНаполи
В статье рассматривается один из вариантов практической реализации советника для торговли по уровням ДиНаполи при помощи стандартных инструментов MQL5. Протестированы результаты его работы и сделаны выводы.
![Графические интерфейсы I: "Оживление" графического интерфейса (Глава 3)](https://c.mql5.com/2/21/Graphic-interface__2.png)
![Графические интерфейсы I: "Оживление" графического интерфейса (Глава 3)](https://c.mql5.com/i/articles/overlay.png)
Графические интерфейсы I: "Оживление" графического интерфейса (Глава 3)
В предыдущей статье серии был начат процесс разработки класса формы для элементов управления. В этой статье продолжим развивать класс, наполняя его методами для перемещения формы в области графика, а также интегрируем этот элемент интерфейса в ядро библиотеки. Кроме этого, настроим всё таким образом, чтобы при наведении курсора на элементы формы изменялся их цвет.