Обсуждение статьи "TradeObjects: Автоматизация торговли на основе графических объектов в MetaTrader"

 

Опубликована статья TradeObjects: Автоматизация торговли на основе графических объектов в MetaTrader:

Геометрические построения на графиках котировок — одни из самых популярных инструментов трейдера уже на протяжении десятилетий. С развитием технологий становится все легче наносить линии поддержки или сопротивления, исторические уровни цен и целые фигуры — например, каналы и сетку Фибоначчи. ПО для алгоритмического трейдинга позволяет не только анализировать классические фигуры, но и торговать на их основе. Для MetaTrader тоже разработаны программы, автоматизирующие процесс в той или иной степени: достаточно добавить объект на график с запущенным экспертом или скриптом, и далее программа сама в нужный момент откроет позицию, будет её сопровождать и закроет в соответствии с настройками. С помощью такого ПО можно не только торговать онлайн, но и тренировать свои навыки в тестере в режиме визуализации. Подобные программы представлены и в Базе исходных кодов, и в Маркете сообщества трейдеров.

Но не все так гладко. Как правило, программы в Базе исходных кодов имеют упрощенный функционал, редко обновляются и потому устаревают (вплоть до потери совместимости с последними версиями языка MQL и терминала), а коммерческие продукты не всем по карману.

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

Автор: Stanislav Korotky

 
Очень понравилась GUI-идея! Ну и реализация, конечно, на высоте, Спасибо!
 

Здравствуйте, спасибо за эту замечательную работу.


Я прочитал статью, но в MT5 я столкнулся со следующей ошибкой компиляции.


'SymbolInfoInteger' - ни одна из перегрузок не может быть применена к вызову функции mt4market.mqh 101 23.


Я пытаюсь решить эту проблему, не могли бы вы дать мне совет?

 
Cleverson Oliveira:

Здравствуйте, спасибо за эту замечательную работу.

Я прочитал статью, но в MT5 я столкнулся со следующей ошибкой компиляции.

'SymbolInfoInteger' - ни одна из перегрузок не может быть применена к вызову функции mt4market.mqh 101 23.

Я пытаюсь решить эту проблему, не могли бы вы дать мне совет?

Извините за неудобства.

К сожалению, API MetaTrader 5 был изменен несовместимым образом с момента публикации.

Раньше, чтобы определить, поддерживает ли символ режим "close by", нужно было использовать SymbolInfoInteger(symbol, SYMBOL_ORDER_CLOSEBY), который возвращал булево значение.

Теперь он заменен новым подходом: необходимо вызвать SymbolInfoInteger(_Symbol, SYMBOL_ORDER_MODE), который возвращает комбинацию флагов, одним из которых является SYMBOL_ORDER_CLOSEBY.

(SymbolInfoInteger(_Symbol, SYMBOL_ORDER_MODE) & SYMBOL_ORDER_CLOSEBY != 0)

Обновленный заголовочный файл прилагается.

Файлы:
mt4market.mqh  7 kb
 

Особенно спасибо эксперту по включению файла


дайте мне новое измерение ООП

 
Здесь представлен обновленный исходный код MT5, исправляющий проблемы совместимости с новыми сборками компилятора.
Файлы:
 
в последних версиях мт5 не работает
 
IuriiPrugov:
в последних версиях мт5 не работает

Попробуйте вот эту модификацию. Пожалуйста, проверьте, нормально ли работает и отпишитесь (если будут проблемы - сообщите подробности).

Файлы:
 

Эксперт больше не работает, в 2021 году?

 

Обновление

Моя проблема в том, что он не может открыть файл

не может открыть файл "C:\Users\YANG\AppData\Roaming\MetaQuotes\Terminal\F762D69EEEA9B4430D7F17C82167C844\MQL5\Include\MT4Bridge\MT4Account.mqh" include file TradeObjects.mq5 19 1

Вы можете помочь мне решить эту проблему?

 
Picee:

Обновление

Моя проблема в том, что он не может открыть файл

не может открыть "C:\Users\YANG\AppData\Roaming\MetaQuotes\Terminal\F762D69EEEA9B4430D7F17C82167C844\MQL5\Include\MT4Bridge\MT4Account.mqh" include файл TradeObjects.mq5 19 1

Вы можете помочь мне решить эту проблему?

Вы поместили заголовки MT4Bridge в указанную папку?