Смотри, как бесплатно скачать роботов
Ищи нас в Twitter!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Библиотеки

Библиотека для работы с COM-объектами. - библиотека для MetaTrader 5

Просмотров:
1471
Рейтинг:
(17)
Опубликован:
2020.03.10 16:20
Обновлен:
2022.08.30 05:05
\MQL5\Include\ \MQL5\Experts\COM Test\ \MQL5\Scripts\COM Test\
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Библиотека для работы с COM-объектами.

Эта библиотека даёт возможность работать с COM-объектами, предоставленными некоторыми приложениями.

Например: Excel, Word, Mathcad, Matlab. А также объект ADODB для работы с базами данных через драйвер ODBC.

Библиотека работает и в MT4 и в MT5.


Инициализация.

Перед работой с COM-объектами необходимо вызвать функцию CoInitialize(). Лучше всего в функции OnInit().

В функции OnDeinit() надо вызвать функцию CoUninitialize().


Класс Variant.

Это специальный тип данных, который может содержать данные разных типов.

Используется для передачи параметров между приложениями.


Класс SafeArray.

Разновидность типа Variant, в котором содержится массив.


Класс ComObject.

Это тоже тип Variant, содержащий указатель на интерфейс IDispatch COM-объекта.


Базы данных.

COM-объект ADODB предоставляет интерфейс для работы с базами данных, для которых установлен драйвер ODBC.

Прикладываю три советника, собирающих тики в базу данных MySql, MS Access и SQLite.

В них главное отличие в строке подключения 'ConnectionString'.

ConnectionString для вашей базы данных легко найдёте в интернете.

Если хотите создать базу SQLite в памяти, в качестве имени файла нужно задать: ":memory:".


Примеры: MySqlTest.mq5, SqliteTest.mq5, AccessTest.mq5.


Excel.

У Excel есть свой COM-объект "Excel.Application". Он позволяет создавать любые документы Excel.

Кроме этого, есть возможность передавать данные в Excel, при помощи SQL-запросов.


Примеры: Excel.mq5, ExcelTest.mq5.


Mathcad.

Создаём в маткаде такой документ:

A := in1  B := in2

C := A * B

И сохраняем его в файл "c:\Test\Test1.xmcd".

MQL-скрипт передаёт в маткад in1, in2 и получает переменную C.


Пример: Mathcad.mq5.


    Intersection 2 iMA Choosing Strategies Intersection 2 iMA Choosing Strategies

    Торговля на пересечении двух iMA (Moving Average, MA). Выбор из нескольких стратегий для открытия

    Fixed Loss Fixed Loss

    Пример для расчёта размера лота если задан Стоп лосс (в Points) и задан допустимый убыток в деньгах депозита

    Shadow of yesterday Shadow of yesterday

    Индикатор отображает на текущем таймфрейме High и Low вчерашнего бара D1

    iAlligator Alert iAlligator Alert

    На основе стандартного индикатора iAlligator (Alligator) - при определённых условиях выдаётся Alert и рисуется значок Arrow