Статьи с примерами программирования на языке MQL5

icon

Самые разнообразные статьи с примерами по созданию индикаторов и торговых роботов для платформы MetaTrader на языке MQL5 ждут вас. К каждой статье приложены исходные коды, которые вы можете открыть в редакторе MetaEditor и запустить самостоятельно.

Эти статьи будут полезны как новичкам в автоматическом трейдинге, так и подготовленным трейдерам с опытом программирования и торговли. Здесь вы найдете не только примеры, но и новые идеи.

Новая статья
последние | лучшие
Нейронные сети - от теории к практике
Нейронные сети - от теории к практике

Нейронные сети - от теории к практике

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

Как подготовить котировки MetaTrader 5 для других программ

В статье приводятся примеры создания каталогов, копирования данных и записи в файл, работы с инструментами из окна Обзор рынка или общего списка, примеры обработки ошибок и многое другое. В итоге всё будет собрано в один скрипт, с помощью которого можно записать в файлы данные в формате, указанном пользователем.
Быстрый старт: краткий курс для начинающих
Быстрый старт: краткий курс для начинающих

Быстрый старт: краткий курс для начинающих

Здравствуй дорогой читатель. В данной статье я попробую рассказать и покажу, как можно просто и быстро освоить принципы построения торговых советников, работу с индикаторами и т.д. Эта статья ориентирована на новичков, в ней не будет сложных и трудных для понимания примеров.
MetaQuotes ID в мобильном терминале MetaTrader
MetaQuotes ID в мобильном терминале MetaTrader

MetaQuotes ID в мобильном терминале MetaTrader

Телефоны на базе Android и iOS предлагают нам кучу возможностей, о многих из которых мы даже не догадываемся или не пользуемся в полной мере. Одной из таких новинок является технология Push-уведомлений, которая позволяет через Интернет персонально получать сообщения независимо от номера мобильного телефона или оператора сотовой связи. В мобильном терминале MetaTrader уже реализована возможность получать такие сообщения прямо из вашего торгового робота. Для этого достаточно знать идентификатор MetaQuotes ID своего аппарата, и уже более 9 000 000 мобильных терминалов получили его.
Торговые операции на MQL5 - это просто
Торговые операции на MQL5 - это просто

Торговые операции на MQL5 - это просто

Почти все трейдеры приходят на рынок для того, чтобы заработать денег, хотя есть и доля тех, кому важен не сам торговый результат, а участие в процессе, драйв. Впрочем, получить удовольствие от процесса можно не только торгуя вручную, но и занимаясь разработкой автоматических торговых систем. Ведь создание торгового робота может быть таким же интересным занятием, как и чтение хорошего детектива.
preview
Быстрое погружение в MQL5

Быстрое погружение в MQL5

Вы решили изучить язык программирования торговых стратегий MQL5, но ничего о нем не знаете? Мы постарались взглянуть на MQL5 и терминал MetaTrader 5 глазами новичка и написали эту небольшую вводную статью. Из неё вы сможете получить краткое представление о возможностях самого языка, а также несколько полезных советов по работе с редактором MetaEditor 5 и самим терминалом.
preview
Как создать торгового робота и не потерять время

Как создать торгового робота и не потерять время

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

Визуализируй стратегию в тестере MetaTrader 5

Каждому из нас давно знакома поговорка "Лучше один раз увидеть, чем сто раз услышать". Вы можете прочитать десятки книг о Париже или Венеции, но мысленные образы не позволят вам испытать те же ощущения, как от прогулки по их вечерним улицам. Преимущество визуализации, или наглядного представления, может быть легко спроецировано на любой аспект нашей жизни, включая и работу на рынке, например, анализ цен на графиках при помощи индикаторов, и конечно же, визуализация тестирования стратегий. В данной статье собраны все возможности тестера стратегий MetaTrader 5 по визуализации вычислений.
preview
200 usd за вашу статью по алготрейдингу!

200 usd за вашу статью по алготрейдингу!

Напишите статью и внесите свой вклад в развитие алготрейдинга. Поделитесь своим опытом в торговле и программировании, и мы заплатим вам $200. К тому же публикация на популярном сайте MQL5.com — отличный шанс для личного продвижения в профессиональной среде. Вас прочитают тысячи трейдеров. Вы сможете обсудить свои идеи с единомышленниками, получить новый опыт и монетизировать свои знания.
preview
OpenCL: от наивного кодирования - к более осмысленному

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

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

MetaTrader 5 - больше, чем можно представить!

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

Создай торгового робота за 6 шагов!

Вы не знаете, как устроены торговые классы, и пугаетесь слов "Объектно-ориентированное программирование"? На самом деле вовсе не обязательно всё это знать, чтобы написать свой собственный модуль торговых сигналов - достаточно следовать простым правилам. Всё остальное сделает Мастер MQL5, и вы получите готовый торговый робот!
OpenCL: Мост в параллельные миры
OpenCL: Мост в параллельные миры

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

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

Как опубликовать свой продукт в сервисе Маркет

Предложите свои разработки миллионам пользователей MetaTrader по всему миру — опубликуйте их в Маркете. Сервис предлагает готовую инфраструктуру для продаж: доступ к аудитории, механизмы лицензирования, предоставления пробных версий, доставки обновлений и приема платежей. От вас требуется лишь пройти быструю процедуру регистрации и публикации продукта. Начинайте зарабатывать на своих разработках, все технические детали сервис возьмет на себя.
AutoElliottWaveMaker - инструмент полуавтоматической разметки волн Эллиотта в MetaTrader 5
AutoElliottWaveMaker - инструмент полуавтоматической разметки волн Эллиотта в MetaTrader 5

AutoElliottWaveMaker - инструмент полуавтоматической разметки волн Эллиотта в MetaTrader 5

В данной статье описывается программа AutoElliottWaveMaker - первая разработка по анализу волн Эллиотта в MetaTrader 5, которая сочетает в себе функции ручной и автоматической разметки волн. Инструмент анализа волн полностью написан на языке MQL5 и не включает сторонние библиотеки dll. Это еще раз подтверждает тот факт, что на MQL5 можно (и нужно) создавать сложные и интересные программы.
Последний крестовый поход
Последний крестовый поход

Последний крестовый поход

Взгляните в ваш торговый терминал. Какие способы представления цены вы видите? Бары, свечи, линейный. Мы гонимся за временем и ценами, а прибыль нам дает одна цена. Так может стоит посмотреть на рынок лишь только с ценами? В данной статье предложен алгоритм построения пункто-цифровых графиков ("крестики-нолики") и скрипт, позволяющий производить построение данных графиков. Рассмотрены типичные ценовые паттерны и даны рекомендации по их практическому использованию.
Защита MQL5-программ: пароли, ключи, ограничение по времени, удаленная проверка лицензий
Защита MQL5-программ: пароли, ключи, ограничение по времени, удаленная проверка лицензий

Защита MQL5-программ: пароли, ключи, ограничение по времени, удаленная проверка лицензий

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

MQL5 Cloud Network ускоряет расчеты

Сколько ядер на вашем домашнем компьютере? И сколько компьютеров вы можете задействовать для оптимизации торговой стратегии? Мы покажем как с помощью MQL5 Cloud Network ускорить расчеты и получить для этого вычислительные мощности по всему миру одним щелчком мыши. Выражение "Время - деньги" становится актуальнее с каждым годом, и не всегда мы можем позволить себе ждать окончания важных расчетов в течение десятков часов или даже дней.
Избавляемся от балласта самодельных DLL
Избавляемся от балласта самодельных DLL

Избавляемся от балласта самодельных DLL

Если MQL5-программисту недостаточно функционала языка, он вынужден обращаться к дополнительным инструментам. Для этого приходится использовать другой язык программирования и создавать промежуточную DLL. В MQL5 имеется механизм представления разных типов данных с помощью структур и передачи их в API, но к сожалению, MQL5 не отвечает нам на вопрос о том, как вытянуть данные из принятого указателя. В данной статье мы поставим точку в этом вопросе и покажем простые механизмы обмена сложными типами данных и работе с ними.
Создание советников при помощи Expert Advisor Visual Wizard
Создание советников при помощи Expert Advisor Visual Wizard

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

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

Создай свои графические панели на MQL5

Удобство пользования MQL5-программой определяется не только её богатой функциональностью, но и продуманным графическим интерфейсом. Визуальное восприятие иногда гораздо важнее, чем быстрая и стабильная работа. Перед вами пошаговое руководство по самостоятельному созданию индикаторных панелей на основе классов Стандартной библиотеки.
Используйте EX5-библиотеки для продвижения своих разработок
Используйте EX5-библиотеки для продвижения своих разработок

Используйте EX5-библиотеки для продвижения своих разработок

С помощью сокрытия реализации функций/классов в ex5-файл вы сможете делиться своими ноу-хау алгоритмами с другими программистами, создавать общие проекты и продвигать их в сети. И пока команда MetaQuotes всеми силами приближает возможность прямого наследования классов из ex5‑библиотек, мы реализуем данную возможность уже сейчас.
Объектно-ориентированный подход к построению мультитаймфреймовых и мультивалютных панелей
Объектно-ориентированный подход к построению мультитаймфреймовых и мультивалютных панелей

Объектно-ориентированный подход к построению мультитаймфреймовых и мультивалютных панелей

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

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

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

Использование MetaTrader 5 как поставщика торговых сигналов для MetaTrader 4

В статье обсуждаются особенности использования MetaTrader 5 в качестве поставщика торговых сигналов для MetaTrader 4. Вы узнаете как создать простой поставщик торговых сигналов из MetaTrader 5 и как его подключить к нескольким терминалам MetaTrader 4. Также вы узнаете о том, как в реальном времени копировать сделки участников Automated Trading Championship на свой реальный счет в MetaTrader 4.
Пользовательские графические элементы управления. Часть 3. Формы
Пользовательские графические элементы управления. Часть 3. Формы

Пользовательские графические элементы управления. Часть 3. Формы

Этой последняя из трех статей, посвященных графическим элементам управления. В ней рассматривается создание главного элемента графического интерфейса, формы, и ее совместное использование с другими элементами управления. Кроме классов формы библиотека элементов управления дополнена классами CFrame, CButton, CLabel.
Пользовательские графические элементы управления. Часть 2. Библиотека элементов управления
Пользовательские графические элементы управления. Часть 2. Библиотека элементов управления

Пользовательские графические элементы управления. Часть 2. Библиотека элементов управления

Во второй статье серии "Пользовательские графические элементы управления" представлена библиотека элементов управления для решения основных задач, возникающих при обеспечении взаимодействия между программой (советником, скриптом, индикатором) и ее пользователем. Библиотека содержит множество классов (CInputBox, CSpinInputBox, CCheckBox, CRadioGroup, CVSсrollBar, CHSсrollBar, CList, CListMS, CComBox, CHMenu, CVMenu, CHProgress, CDialer, CDialerInputBox, CTable) и примеров их использования.
Пользовательские графические элементы управления.  Часть 1. Создание простого элемента управления
Пользовательские графические элементы управления.  Часть 1. Создание простого элемента управления

Пользовательские графические элементы управления. Часть 1. Создание простого элемента управления

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

Как добавить новые языки интерфейса в платформу MetaTrader 5

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

Платежи и методы оплаты

MQL5.community предлагает широкие возможности заработка трейдерам и разработчикам торговых приложений для терминала MetaTrader. В этой статье мы расскажем, как происходит оплата сервисов MQL5 и вывод заработанных денег, а также как обеспечивается безопасность операций.
Теория адаптивных индикаторов и ее реализация в MQL5
Теория адаптивных индикаторов и ее реализация в MQL5

Теория адаптивных индикаторов и ее реализация в MQL5

В этой статье будут описаны принципы написания адаптивных индикаторов и их реализация в MQL5. В качестве примеров рассмотрены индикаторы Adaptive Cyber Cycle, Adaptive Center of Gravity и Adaptive RVI. Все эти индикаторы были впервые представлены в книге Джона Элерса "Cybernetic Analysis for Stocks and Futures".
MQL5 Wizard для "чайников"
MQL5 Wizard для "чайников"

MQL5 Wizard для "чайников"

В начале 2011 года мы выпустили первую версию Визарда MQL5. Этот шаг обеспечил трейдеров простым и понятным инструментом для автоматического создания торговых роботов. Любой пользователь MetaTrader 5 получил возможность написать собственный эксперт, не умея программировать на MQL5.
Использование WinInet в MQL5.  Часть 2:  POST-запросы и файлы
Использование WinInet в MQL5.  Часть 2:  POST-запросы и файлы

Использование WinInet в MQL5. Часть 2: POST-запросы и файлы

В данной статье мы продолжаем рассматривать принципы работы с Интернет посредством HTTP-запросов и обмен данными с сервером. Описаны новые функции класса CMqlNet, разобраны методы отправки данных из форм и передача файлов с помощью POST-запросов, а также вход на сайты под своим логином с помощью Cookie.
Прогнозирование временных рядов в MetaTrader 5 при помощи библиотеки машинного обучения ENCOG
Прогнозирование временных рядов в MetaTrader 5 при помощи библиотеки машинного обучения ENCOG

Прогнозирование временных рядов в MetaTrader 5 при помощи библиотеки машинного обучения ENCOG

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

Статистические распределения вероятностей в MQL5

В статье рассмотрены распределения вероятностей (нормальное, логнормальное, биномиальное, логистическое, экспоненциальное, распределения Коши, Стьюдента, Лапласа, Пуассона, гиперболическое секанс распределение, бета и гамма-распределения) случайных величин, используемые в прикладной статистике. Предложены классы для работы с данными распределениями.
Трассировка, отладка и структурный анализ кода
Трассировка, отладка и структурный анализ кода

Трассировка, отладка и структурный анализ кода

Весь комплекс задач создания структуры работающего кода и его трассировки можно решить без особых сложностей. Эта возможность появилась в MetaTrader 5 благодаря новому свойству языка MQL5 - автоматическое создание переменных сложного типа данных (структуры и классы) и их уничтожение при выходе из локальной области видимости. В статье описана методика и предоставлен готовый инструмент.
Статистические оценки
Статистические оценки

Статистические оценки

Оценка статистических параметров последовательности очень важна, так как большинство математических моделей и методов строятся исходя из различного рода предположений, например, о нормальности закона распределения, или требуют знания значения дисперсии или других параметров. В статье кратко рассматриваются простейшие статистические параметры случайной последовательности и некоторые методы ее визуального анализа. Предлагается реализация этих методов на MQL5 и способ визуализации результатов расчета при помощи программы Gnuplot.
preview
Использование ресурсов в MQL5

Использование ресурсов в MQL5

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

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

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

Электронные таблицы на MQL5

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