Скачать MetaTrader 5

Обсуждение статьи "Рецепты MQL5 - обработка пользовательских событий графика"

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Опубликуй торговый сигнал. Получи доступ к миллионам трейдеров!
MetaQuotes Software Corp.
Модератор
181164
MetaQuotes Software Corp. 2014.10.10 15:52 

Опубликована статья Рецепты MQL5 - обработка пользовательских событий графика:

В данной статье рассматриваются аспекты проектирования и разработки системы пользовательских событий графика в среде MQL5. Предлагается пример подхода для классификации событий. Приводится программный код событийного класса и класса-обработчика пользовательских событий.

Введение

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

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


1. Пользовательское событие графика

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

Пользовательское событие является вторым возможным видом события графика. Первым выступает типичное событие. И хотя в Документации нет такого термина "типичное событие графика", все же предлагаю его использовать для обращения к первым 10 типам события графика.

Разработчик предлагает для обработки всех событий графика 1 перечисление - ENUM_CHART_EVENT.

Согласно Документации, существует 65536 идентификаторов пользовательских событий. Первый и последний идентификаторы пользовательских событий задаются явными значениями CHARTEVENT_CUSTOM и CHARTEVENT_CUSTOM_LAST, что в численном выражении равно 1000 и 66534 соответственно (рис.1).

Рис.1 Первый и последний идентификаторы пользовательских событий

Рис.1 Первый и последний идентификаторы пользовательских событий

Автор: Dennis Kirichenko

Anatoli Kazharski
56910
Anatoli Kazharski 2014.10.10 16:56  
Английский язык конечно знать хорошо и полезно. Но, если статья на русском, то и комментарии должны быть тоже на русском. ))
Alexey Volchanskiy
16674
Alexey Volchanskiy 2015.02.10 00:10  
А я всегда пишу на инглише)) Просто потому, что куча клиентов из разных стран и английский худо-бедно знают все. Ну, а кто не знает, лишний стимул изучить основы, сейчас это легко и бесплатно, был бы интернет)) Так что все мяу, комменты на инглише.
juriy5555
28
juriy5555 2016.04.20 15:42  
Неужели нет встроенной поддержки событийной модели . Да уж.   ИМХО, Это не   события(event) как в C# , скорее это сообщения (message).  Разница большая.  
Делегатов нет в языке, да и вообще много чего нет.  Даже обработчика ошибок.  А ведь чужой класс - это черный ящик, смешно читать в данном контексте комменты разработчиков языка, что надо все ошибки "ловить" при написании.  Разочаровался в языке =(
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий