Сетевые функции
Программы MQL5 могут обмениваться данными с удаленными серверами, отправлять push-уведомления, электронные письма и данные по FTP.
- Группа функций Socket* позволяет создать TCP-соединение (в том числе защищенное соединение TLS) с удаленным хостом через системные сокеты. Схема работы проста: вы создаете сокет, подключаетесь к серверу и можете начинать чтение и запись данных.
- Функция WebRequest предназначена для работы с веб-ресурсами и позволяет легко отправлять HTTP-запросы (в том числе GET и POST).
- SendFTP, SendMail и SendNotification — это более простые функции для отправки файлов, электронной почты и мобильных уведомлений.
Для безопасности конечного пользователя на стороне клиентского терминала реализован список разрешенных IP-адресов, с которыми может соединяться MQL5-программа при помощи функций Socket* и WebRequest. Например, если ей требуется подключение к https://www.someserver.com, то этот адрес должен быть явно указан пользователем терминала в списке разрешенных. Программно добавить адрес нельзя.

Чтобы уведомить пользователя о необходимости дополнительной настройки, добавьте в MQL5-программу явное сообщение. Например, через #property description, Alert или Print.
Функция | Действие |
|---|---|
Создает сокет с указанными флагами и возвращает его хэндл | |
Закрывает сокет | |
Выполняет подключение к серверу с контролем таймаута | |
Проверяет, подключен ли сокет в текущий момент времени | |
Получает количество байт, которое можно прочитать из сокета | |
Проверяет, возможна ли запись данных в сокет в текущий момент времени | |
Устанавливает таймауты получения и отправки данных для системного объекта сокета | |
Читает данные из сокета | |
Записывает данные в сокете | |
Инициирует защищенное TLS (SSL)-соединение с указанным хостом по протоколу TLS Handshake | |
Получает данные о сертификате, используемом для защиты сетевого соединения | |
Читает данные из защищенного TLS-соединения | |
Читает все доступные данные из защищенного TLS-соединения | |
Отправляет данные через защищенное TLS-соединение | |
Отправляет HTTP-запрос на указанный сервер | |
Посылает файл по адресу, указанному в окне настроек на закладке "FTP" | |
Посылает электронное письмо по адресу, указанному в окне настроек на закладке "Почта" | |
Посылает Push-уведомления в мобильные терминалы, чьи MetaQuotes ID указаны на закладке "Уведомления" |