- Главное событие экспертов: OnTick
- Основные принципы и понятия: ордер, сделка, позиция
- Типы торговых операций
- Типы ордеров
- Режимы исполнения ордеров по цене и объемам
- Сроки действия отложенных ордеров
- Расчет залога для будущего ордера: OrderCalcMargin
- Оценка прибыли торговой операции: OrderCalcProfit
- Структура торгового запроса MqlTradeRequest
- Структура проверки запроса MqlTradeCheckResult
- Проверка корректности запроса: OrderCheck
- Результат отправки запроса: структура MqlTradeResult
- Отправка торгового запроса: OrderSend и OrderSendAsync
- Совершение покупки или продажи
- Модификация уровней Stop Loss и/или Take Profit позиции
- Трейлинг стоп
- Полное и частичное закрытие позиции
- Полное и частичное закрытие встречных позиций (хедж)
- Установка отложенного ордера
- Модификация отложенного ордера
- Удаление отложенного ордера
- Получение списка действующих ордеров
- Свойства ордеров (действующих и в истории)
- Функции для чтения свойств действующих ордеров
- Отбор ордеров по свойствам
- Получение списка позиций
- Свойства позиций
- Функции для чтения свойств позиций
- Свойства сделок
- Выборка ордеров и сделок из истории
- Функции для чтения свойств ордеров из истории
- Функции для чтения свойств сделок из истории
- Типы торговых транзакций
- Событие OnTradeTransaction
- Синхронные и асинхронные запросы
- Событие OnTrade
- Контроль за изменениями торгового окружения
- Особенности создания мультисимвольных экспертов
- Ограничения и преимущества экспертов
- Создание заготовки эксперта в Мастере MQL
Ограничения и преимущества экспертов
В силу своей специфики эксперты имеют некоторые ограничения, но также и преимущества по сравнению с другими типами MQL-программ. В частности в экспертах запрещены все функции, предназначенные для индикаторов:
- SetIndexBuffer;
- IndicatorSetDouble;
- IndicatorSetInteger;
- IndicatorSetString;
- PlotIndexSetDouble;
- PlotIndexSetInteger;
- PlotIndexSetString;
- PlotIndexGetInteger.
Также в экспертах не следует описывать обработчики событий, характерных для других типов программ: OnStart (скрипты и сервисы), OnCalculate (индикаторы).
Напомним, что в отличие от индикаторов, на каждом графике допускается размещать только один эксперт.
Вместе с тем, эксперты являются единственным типом MQL-программ, которые можно не только тестировать (что мы уже делали и для индикаторов, и для экспертов), но и оптимизировать, то есть находить лучшие входные параметры по различным критериям, как торговым, так и абстрактно-математическим. Для этих целей в API включены дополнительные функции и несколько специфических обработчиков событий. Мы изучим этот материал в следующей главе.
Кроме того, в экспертах (впрочем, как и в скриптах, и сервисах, то есть во всех типах программ кроме индикаторов) доступны группы встроенных функций MQL5 для работы с сетью на уровне сокетов и различных интернет протоколов (HTTP, FTP, SMTP). Их мы рассмотрим в заключительной 7-ой Части книги.