Статьи по программированию на языках MQL4 и MQL5

icon

Изучайте язык программирования торговых стратегий MQL5 по опубликованным здесь статьям, большая часть которых написана вами - членами сообщества. Все статьи разделены на категории для быстрого поиска ответа по тому или иному аспекту программирования: "Интеграция", "Тестер", "Торговые стратегии" и многое другое.

Следите за новыми публикациями и участвуйте в их обсуждении на форуме!

Новая статья
последние | лучшие
Как правильно подать Продукт для продажи в Маркете?
Как правильно подать Продукт для продажи в Маркете?

Как правильно подать Продукт для продажи в Маркете?

Для того чтобы продавать свои программы трейдерам, недостаточно просто создать удобную и полезную программу и опубликовать ее на Маркете — необходимо свой Продукт снабдить отличным описанием и хорошими иллюстрациями. Качественный логотип и правильно сделанные скриншоты не менее важны, чем "true coding". Запомните: нет скачиваний == нет продаж.
Язык MQL4 для "чайников". Технические индикаторы и встроенные функции
Язык MQL4 для "чайников". Технические индикаторы и встроенные функции

Язык MQL4 для "чайников". Технические индикаторы и встроенные функции

Это третья статья из цикла "Язык MQL4 для 'чайников'". Сейчас мы будем разбираться, как использовать встроенные функции и функции для работы с техническими индикаторами. Последние будут жизненно необходимы при разработке в дальнейшем ваших советников и индикаторов. Кроме того, мы на простом примере посмотрим, как можно отслеживать торговые сигналы для входа в рынок, что бы вы поняли, как правильно использовать индикаторы. А в конце статьи вы узнаете кое-что новенькое и интересное про сам язык.
Как написать для Маркета индикатор любых нестандартных графиков
Как написать для Маркета индикатор любых нестандартных графиков

Как написать для Маркета индикатор любых нестандартных графиков

С помощью оффлайновых графиков, программирования на языке MQL4 и небольшого желания вы можете получить графики любого типа: "Крестики-Нолики", "Ренко", "Каги", "Range bars", эквиобъемные и т.п. В этой статье мы покажем, как это сделать без использования DLL, и поэтому такие индикаторы "два-в-одном" вы можете публиковать и приобретать в Маркете.
Защита от ложных срабатываний торгового робота
Защита от ложных срабатываний торгового робота

Защита от ложных срабатываний торгового робота

Прибыльность торговых систем определяется не только логикой и точностью анализа динамики финансовых инструментов, но и качеством алгоритма исполнения этой логики. Характерным проявлением некачественного исполнения основной логики торгового робота являются ложные срабатывания. В статье рассмотрены варианты решения указанной проблемы.
OpenCL: Мост в параллельные миры
OpenCL: Мост в параллельные миры

OpenCL: Мост в параллельные миры

В конце января 2012 года компания-разработчик терминала MetaTrader 5 анонсировала нативную поддержку OpenCL в MQL5. В статье на конкретном примере изложены основы программирования на OpenCL в среде MQL5 и приведены несколько примеров "наивной" оптимизации программы по быстродействию.
preview
Нейросети - это просто

Нейросети - это просто

Каждый раз, когда речь заходит об искусственном интеллекте, в голове всплывают какие-то фантастические образы и кажется, что это очень сложное и непостижимое. Но мы все чаще и чаще слышим об искусственном интеллекте в повседневной жизни. В новостных лентах все чаще пишут о каких-либо достижениях с использованием нейронных сетей. В данной статье хочу показать насколько просто каждый может создать свою нейронную сеть и использовать достижения искусственного интеллекта в трейдинге.
Мониторинг торгового счета - необходимый инструмент трейдера
Мониторинг торгового счета - необходимый инструмент трейдера

Мониторинг торгового счета - необходимый инструмент трейдера

Мониторинг торгового счета — это подробный отчет по всем совершенным сделкам. Вся торговая статистика собирается автоматически и предоставляется вам в виде понятных диаграмм и графиков.
Инструмент "Ценовая гистограмма" (Рыночный профиль) и его реализация на MQL5
Инструмент "Ценовая гистограмма" (Рыночный профиль) и его реализация на MQL5

Инструмент "Ценовая гистограмма" (Рыночный профиль) и его реализация на MQL5

Рыночный профиль был разработан Питером Стидлмайером (Peter Steidlmayer), который предложил использовать альтернативное представление информации как о горизонтальном, так и о вертикальном движении рынка, что дает полностью отличный набор моделей. Он предположил, что у рынка существует основной рыночный пульс, или фундаментальная модель, которая называется цикл равновесия и неравновесия (cycle of equilibrium and disequilibrium). В данной статье я сделаю попытку дать общие понятия об упрощенной модели Рыночного профиля (Market Profile) – Ценовой Гистограмме (Price Histogram) и расскажу, как реализовал данный инструмент на MQL5.
Сравнительный анализ 10 трендовых стратегий
Сравнительный анализ 10 трендовых стратегий

Сравнительный анализ 10 трендовых стратегий

В статье сделан краткий обзор 10 трендовых стратегий, проведено их тестирование, сравнительный анализ. На основе полученных результатов сделан общий вывод о целесообразности, достоинствах и недостатках торговли по тренду.
Пример торговой системы на основе индикатора Heiken-Ashi
Пример торговой системы на основе индикатора Heiken-Ashi

Пример торговой системы на основе индикатора Heiken-Ashi

В данной статье мы рассмотрим возможности использование индикатора Heiki-Ashi. Создадим на его базе простейшую торговую систему(ТС) и напишим на MQL5 советник. Протестируем ТС на истории с помощью MetaTrader5 Strategy Tester.
preview
OpenCL: от наивного кодирования - к более осмысленному

OpenCL: от наивного кодирования - к более осмысленному

В данной статье продемонстрированы некоторые возможности оптимизации, открывающиеся при хотя бы поверхностном учете особенностей "железа", на котором исполняется кернел. Полученные цифры весьма далеки от предельных, но даже они показывают, что при том наборе возможностей, который имеется здесь и сейчас (OpenCL API в реализации разработчиков терминала не позволяет контролировать некоторые важные для оптимизации параметры - - в частности, размер локальной группы), выигрыш в производительности в сравнении с исполнением хостовой программы очень существенен.
Индикатор "ЗигЗаг": новый взгляд и новые решения
Индикатор "ЗигЗаг": новый взгляд и новые решения

Индикатор "ЗигЗаг": новый взгляд и новые решения

В статье рассматривается возможность создания опережающего индикатора ЗигЗаг. Идея поиска узлов базируется на использовании индикатора Envelopes. Есть предположение, что найдётся такая комбинация входных параметров серии конвертов, при которых все узлы ЗигЗага будут находиться в пределах линий Envelopes. Следовательно, можно попробовать прогнозировать координаты нового узла.
Ордерные стратегии. Универсальный автомат
Ордерные стратегии. Универсальный автомат

Ордерные стратегии. Универсальный автомат

Целью данной статьи является рассмотрение стратегий, активно использующих отложенные ордера, создание метаязыка для формального описания этих стратегий и использование универсального эксперта, работающего по этим описаниям
Вычисление коэффициента Херста
Вычисление коэффициента Херста

Вычисление коэффициента Херста

В статье подробно изложен смысл показателя Херста, интерпретация его значений, алгоритм вычисления. Приведены результаты анализа некоторых сегментов финансовых рынков и представлен метод работы с программными продуктами MetaTrader 5, реализующими идею фрактального анализа.
Подключение нейросетей от NeuroSolutions
Подключение нейросетей от NeuroSolutions

Подключение нейросетей от NeuroSolutions

Программный пакет NeuroSolutions позволяет не только создавать нейронные сети, но и экспортировать их в DLL. В статье описан процесс создания нейросети, генерации DLL и ее подключения к советнику для торговли в MetaTrader.
Создание бота для Telegram на языке MQL5
Создание бота для Telegram на языке MQL5

Создание бота для Telegram на языке MQL5

Эта статья — пошаговое руководство по созданию бота для Telegram на языке MQL5. Данный материал будет интересен тем, кто хочет связать торгового робота со своим мобильным устройством. В статье приведены примеры ботов, выполняющие рассылку торговых сигналов, поиск информации на сайте, присылающие информацию о состоянии торгового счета, котировки и скриншоты графиков на ваш смартфон.
Price Action. Автоматизация торговли по паттерну "Поглощение"
Price Action. Автоматизация торговли по паттерну "Поглощение"

Price Action. Автоматизация торговли по паттерну "Поглощение"

В статье описывается создание советника для MetaTrader 4, торгующего по паттерну "Поглощение", включая принцип нахождения паттерна, правила установки отложенных и стоп-ордеров. Приведены результаты тестирования и оптимизации.
Автоматическое нахождение экстремумов на основе заданного ценового перепада
Автоматическое нахождение экстремумов на основе заданного ценового перепада

Автоматическое нахождение экстремумов на основе заданного ценового перепада

При автоматизации торговых стратегий, использующих графические модели, необходимо находить экстремумы на графиках для дальнейшей обработки и интерпретации. Существующие инструменты не всегда дают возможность это сделать. Представленные в статье алгоритмы позволяют находить все экстремумы на чартах. Разработанные инструменты одинаково эффективны как для работы на трендовом рынке, так и на боковом движении. Полученные результаты слабо зависят от выбранного таймфрейма и определяются только заданным масштабом.
Создание советников при помощи Expert Advisor Visual Wizard
Создание советников при помощи Expert Advisor Visual Wizard

Создание советников при помощи Expert Advisor Visual Wizard

Программа Expert Advisor Visual Wizard предоставляет интуитивно понятную графическую среду с полным набором готовых торговых блоков, которые позволят вам за несколько минут создавать советники. Знания программирования и языка MQL5 не требуется. Подход "click, drag and drop" позволяет вам создавать визуальные представления торговых стратегий и сигналов. Эти торговые диаграммы автоматически анализируются генератором MQL5-кода, который преобразует их в готовые к работе советники. Интерактивная графическая среда упрощает процесс проектирования и избавляет от необходимости написания кода на MQL5.
Преобразование Бокса-Кокса
Преобразование Бокса-Кокса

Преобразование Бокса-Кокса

Статья призвана познакомить читателя с преобразованием Бокса-Кокса (Box-Cox Transformation). В статье кратко затрагиваются вопросы, связанные с его использованием и приводятся примеры, позволяющие оценить эффективность данного преобразования по отношению к случайным последовательностям и реальным котировкам.
Основы объектно-ориентированного программирования
Основы объектно-ориентированного программирования

Основы объектно-ориентированного программирования

Для использования объектно-ориентированного программирования (ООП) вовсе не обязательно знать что такое полиморфизм, инкапсуляция... можно просто пользоваться его возможностями. В статье рассматриваются основные возможности ООП с примерами их использования.
Работа с корзинами валютных пар на рынке Форекс
Работа с корзинами валютных пар на рынке Форекс

Работа с корзинами валютных пар на рынке Форекс

В статье рассматриваются вопросы о том, как разбить валютные пары по группам - корзинам; как получить данные о состоянии таких корзин (например, перекупленности и перепроданности); какие индикаторы могут предоставить такие данные; наконец, о том, как можно применить полученную информацию в практическом трейдинге.
Почему MQL5 Market - лучшее место для продажи торговых стратегий и технических индикаторов?
Почему MQL5 Market - лучшее место для продажи торговых стратегий и технических индикаторов?

Почему MQL5 Market - лучшее место для продажи торговых стратегий и технических индикаторов?

Маркет MQL5.community предоставляет экспертописателям выход на уже сформированный рынок из тысяч потенциальных клиентов. Это лучшее место для продажи торговых роботов и технических индикаторов!
Встраивайте вебтерминал MetaTrader 4/5 в свои сайты - это бесплатно, и на этом можно заработать
Встраивайте вебтерминал MetaTrader 4/5 в свои сайты - это бесплатно, и на этом можно заработать

Встраивайте вебтерминал MetaTrader 4/5 в свои сайты - это бесплатно, и на этом можно заработать

Трейдерам хорошо знаком вебтерминал, который позволяет торговать на финансовых рынках прямо из браузера. Мы предлагаем разместить его на вашем сайте — и это совершенно бесплатно. У вас есть посетители, у брокеров – интерес в новых лидах, у нас – готовое веб-решение. И чтобы всё заработало, необходимо лишь встроить один iframe в ваш веб-сайт.
Мой первый "грааль"
Мой первый "грааль"

Мой первый "грааль"

Рассматриваются наиболее распространённые ошибки, приводящие начинающих программистов к созданию "сверхприбыльных" при тестировании торговых систем. Приводятся примеры экспертов, показывающих на тестере фантастические результаты, а в реальной торговле приводящих к убыткам.
Треугольный арбитраж
Треугольный арбитраж

Треугольный арбитраж

Статья посвящена популярному методу торговли - треугольному арбитражу. Тема разобрана максимально подробно, рассмотрены положительные и отрицательные стороны стратегии, разработан готовый код эксперта.
Как снизить риски трейдера
Как снизить риски трейдера

Как снизить риски трейдера

Торговля на финансовых рынках связана с целым комплексом рисков, которые должны учитываться в алгоритмах торговых систем. Снижение таких рисков — важнейшая задача для получения прибыли при трейдинге.
Автоматическое построение линий поддержки и сопротивления
Автоматическое построение линий поддержки и сопротивления

Автоматическое построение линий поддержки и сопротивления

В статье рассматривается автоматическое построение линий поддержки и сопротивления через локальные максимумы и минимумы ценовых графиков. Для определения этих экстремумов применяется всем известный индикатор ZigZag.
Как обезопасить себя и своего эксперта при торговле на Московской бирже
Как обезопасить себя и своего эксперта при торговле на Московской бирже

Как обезопасить себя и своего эксперта при торговле на Московской бирже

В статье подробно описываются методы работы, призванные обеспечить безопасность совершения торговых операций на биржевых и малоликвидных рынках, на примере срочной секции Московской биржи. Статья является логическим продолжением статьи "Основы биржевого ценообразования на примере срочной секции Московской биржи", в которой даны теоретические основы биржевой торговли, но носит более практический характер.
Стратегия "Всё или Ничего" на Форексе
Стратегия "Всё или Ничего" на Форексе

Стратегия "Всё или Ничего" на Форексе

Цель данной статьи - создание максимально простой торговой стратегии, реализующей игровой принцип "Всё или Ничего". Задача создания прибыльного советника не ставится, цель - увеличение начального депозита в несколько раз с максимально возможной вероятностью. Возможно ли, ничего не зная о техническом анализе и не используя никаких индикаторов, использовать Форекс для получения большого выигрыша против вероятности всё потерять?
Пользовательские индикаторы в MQL5 для начинающих
Пользовательские индикаторы в MQL5 для начинающих

Пользовательские индикаторы в MQL5 для начинающих

Любой новый предмет для новичка с первого взгляда кажется сложным для понимания. Нам кажется простым и ясным то, что мы уже знаем. Но мы просто не помним, что всем нам когда-то приходилось изучать с нуля, даже родной язык, на котором мы разговариваем. Так и язык MQL5, таящий в себе огромные возможности для написания торговых стратегий, можно начать изучать с базовых понятий и примеров. В этой статье на примере пользовательского индикатора SMA рассматривается взаимодействие технического индикатора с клиентским терминалом MetaTrader 5.
Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов
Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов

Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов

Статья о традиционных и не совсем традиционных алгоритмах усреднения, упакованных в максимально простые и достаточно однотипные классы. Они задумывались для универсального использования в практических разработках индикаторов. Надеюсь, что предложенные классы в определенных ситуациях могут оказаться достаточно актуальной альтернативой громоздким, в некотором смысле, вызовам пользовательских и технических индикаторов.
Выцарапываем профит до последнего пипса
Выцарапываем профит до последнего пипса

Выцарапываем профит до последнего пипса

В статье сделана попытка совместить теорию с практикой на поприще алготрейдинга. Большинство разговоров на тему создания Торговых Систем связано с использованием исторических ценовых баров и различных индикаторов на них. Это то самое истоптанное поле, которое мы трогать не будем. Бары — это совсем искусственная сущность, поэтому возьмем что-то ближе к прото-информации — ценовые тики.
Реализация автоматического анализа волн Эллиотта на MQL5
Реализация автоматического анализа волн Эллиотта на MQL5

Реализация автоматического анализа волн Эллиотта на MQL5

Одним из самых популярных методов анализа рынка является волновой анализ. Однако данный процесс является достаточно сложным, что приводит к использованию дополнительных инструментов. Одним из таких инструментов является автоматический разметчик. В данной статье рассматривается создание автоматического анализатора волн Эллиотта на языке MQL5.
Ядерная оценка неизвестной плотности вероятности
Ядерная оценка неизвестной плотности вероятности

Ядерная оценка неизвестной плотности вероятности

Статья посвящена созданию программного инструмента, позволяющего производить оценку неизвестной плотности вероятности. Для реализации был выбран метод ядерной оценки плотности (Kernel Density Estimation). Статья содержит исходные коды программной реализации данного метода, примеры его использования и иллюстрации.
Самооптимизация экспертов: Эволюционные и генетические алгоритмы
Самооптимизация экспертов: Эволюционные и генетические алгоритмы

Самооптимизация экспертов: Эволюционные и генетические алгоритмы

В статье будут рассмотрены основные принципы, заложенные в эволюционных алгоритмах, их разновидности и особенности. На примере простого эксперта с помощью экспериментов покажем, что может дать нашей торговой системе использование оптимизации. Рассмотрим программные пакеты, реализующие генетические, эволюционные и другие виды оптимизации и приведем примеры применения при оптимизации набора предикторов и оптимизации параметров торговой системы.
Алгоритм генерации тиков  в тестере стратегий терминала MetaTrader 5
Алгоритм генерации тиков  в тестере стратегий терминала MetaTrader 5

Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5

MetaTrader 5 позволяет во встроенном тестере стратегий моделировать автоматическую торговлю с помощью экспертов на языке MQL5. Такое моделирование называется тестированием экспертов, и может проводиться с использованием многопоточной оптимизации и одновременно по множеству инструментов. Для проведения тщательного тестирования требуется генерировать тики на основе имеющейся минутной истории. В статье дается подробное описание алгоритма, по которому генерируются тики для исторического тестирования в клиентском терминале MetaTrader 5.
Как за 10 минут написать DLL библиотеку для MQL5 и обмениваться данными?
Как за 10 минут написать DLL библиотеку для MQL5 и обмениваться данными?

Как за 10 минут написать DLL библиотеку для MQL5 и обмениваться данными?

Так уж сложилось, что сейчас мало кто из разработчиков помнит, как написать простую DLL библиотеку и в чем особенности связывания разнородных систем. Я постараюсь за 10 минут на примерах продемонстрировать весь процесс создания простых DLL библиотек и раскрою некоторые технические детали нашей реализации связывания. Покажу пошаговый процесс создания DLL библиотеки в Visual Studio с примерами передачи разных типов переменных (числа, массивы, строки и т.д.) и защиту клиентского терминала от падений в пользовательских DLL.
Знакомство с методом эмпирической модовой декомпозиции
Знакомство с методом эмпирической модовой декомпозиции

Знакомство с методом эмпирической модовой декомпозиции

Статья призвана познакомить читателя с методом эмпирической модовой декомпозиции. Данный метод является частью преобразования Гильберта-Хуанга и предназначен для анализа нелинейных нестационарных процессов. К статье приложен вариант программной реализации этого метода и кратко рассматриваются его особенности. Приведены простейшие примеры использования рассматриваемого метода.
Применение нечеткой логики в трейдинге средствами MQL4
Применение нечеткой логики в трейдинге средствами MQL4

Применение нечеткой логики в трейдинге средствами MQL4

В данной статье предлагаются примеры применения теории нечетких множеств в трейдинге средствами MQL4. Описывается разработка индикатора и советника с использованием библиотеки FuzzyNet для MQL4.