Пользовательские Графические Объекты

 
Для проведения технического анализа в MT4 существует множество всяких разных встроенных индикаторов и графических объектов.

Если трейдера не устраивают встроенные индикаторы, то он всегда может подключить пользовательский индикатор

А как быть, если трейдера не устраивают встроенные графические объекты?
Например, если нужно расширить функциональность графического объекта ЛинейнаяРегрессия таким образом чтобы регрессия и границы канала считались по отличному от заложенного алгоритма. Или, например, если необходимо при перемещении некоего графического объекта на графике записать информацию об этом в файл или глобальную переменную. Или если нужен такой графический объект, чтобы он состоял из нескольких примитивных объектов .......

Некоторые продвинутые форумяне для реализации своих ПользовательскихГрафическихОбъектов проявляют чудеса изобретательности - используют сложные схемы взаимодействия между Графическими объектами, Скриптами и Советниками. Но разве это решение проблемы?

На мой взгляд здесь имеется огромная незаполненная ниша, имя которой Пользовательские Графические Объекты

В общем, было бы здорово иметь наряду с Пользовательскими Индикаторами такой мощный инструмент как Пользовательские Графические Объекты.

Кто что думает по этому поводу?
 
Сформулируйте свои предложения более конкретно.
 
В общем, было бы здорово иметь наряду с Пользовательскими Индикаторами такой мощный инструмент как Пользовательские Графические Объекты.


Вы когда-нибудь слыхали об MQL4 ?
Так вот, он позволяет не только писать самые разнообразные индикаторы, но также и создавать самые разнообразные по характеру поведения, возможностям и виду графические объекты. Например, один из форумян по имени SK написал даже инструмент (который называется AutoGraf) с помощью которого можно одной только мышкой торговать и управлять ордерами, которые отображены как графические объекты на графике.

Так что учите мат.часть, уважаемый.
 

Сформулируйте свои предложения более конкретно.


Предлагаю вывести архитектуру MT и язык MQL на новый уровень, а именно включить в будущие версии MT новое понятие "Пользовательский Графический Объект" (по аналогии с "пользовательский индикатор"), т.е. дать трейдерам возможность разрабатывать и подключать к терминалу свои собственные Графические Объекты, которые будут реагировать на действия пользователя в соответствии с заложенным в них алгоритмом.
 

Вы когда-нибудь слыхали об MQL4 ?
Так вот, он позволяет не только писать самые разнообразные индикаторы, но также и создавать самые разнообразные по характеру поведения, возможностям и виду графические объекты. Например, один из форумян по имени SK написал даже инструмент (который называется AutoGraf) с помощью которого можно одной только мышкой торговать и управлять ордерами, которые отображены как графические объекты на графике.

Так что учите мат.часть, уважаемый.

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

Если бы в MT4 имелась возможность подключать Пользовательские Графические Объекты (ПГО), то AutoGraf пожно было бы сделать более простым и надежным, заложив всю логику непосредственно в ПГО.
 
Если бы в MT4 имелась возможность подключать Пользовательские Графические Объекты (ПГО), то AutoGraf пожно было бы сделать более простым и надежным, заложив всю логику непосредственно в ПГО.

Мне как программисту интересно знать как вы себе представляете техническую реализацию вашего предложения? Что должен вводить пользователь и куда? И как это всё должно выглядеть/работать в "Пользовательских Графических Объектах"? Или же это предложение просто из разряда "хотелось бы чтобы что-то такое эдакое было, что ещё не понятно как оно должно выглядеть, но всё равно пускай будет, так как такое должно существовать обязательно и в МТ4"?;o)

PS: Честно говоря достаточно много программирую под МТ4, но никогда подобных мыслей в голову и не приходило. Всё что угодно просчитывается с помощью MQL4 и выводится на экран без всяких особых "ухищрений" с помощью самого универсального графического объекта "Отрезок".
 
На самом деле - это очень хорошая идея. Но важно правильно сформулировать задачу. Rosh уже примерно месяц собирает информацию об использовании и построении таких объектов. Так что, все предложения направляйте в его копилку.
 
Эээ... А можно ли увидеть, что в копилке накопилось уже? )))

Не уверен, что лично мне нужны некие сложные абстрактные "пользовательские объекты", но:

Было бы здорово получить возможность назначать клавиатурные комбинации для установки объектов (и вообще произвольных пунктов меню). Трендов я рисую много, и было бы гораздо удобней тыркнуть в клавишу T, чем тянуться к меню.

Так же хотелось бы увидеть опцию в rect-ах, позволяющую рисовать их не xor-ом, а поверх всего. Сейчас при необходимости закрыть кусок графика приходится рисовать N толстых вертикальных линий.

И толстые пунктирные линии тоже бы не помешали. (за давностью лет не помню, но неужели win gdi ограничивает это?)

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

Опять же - было бы полезно поправить эллипсы так, чтобы они не корежились при смене масштаба.


P.S: да, было бы забавно получить возможность зарегистрировать некий OBJ_USER1 "на базе" (т.е. со свойствами) OBJ_TREND, поместить его на панель меню (с какой-нибудь условной иконкой "юзер1"), и иметь возможность отрисовать его (пусть в виде обычной линии). И потом скриптом обрабатывать их как заблагорассудится. Сейчас при необходимости рисовать "особые тренды" приходится думать, какие объекты используешь меньше всего, брать какой-нибудь FIBOFAN и работать с ним.

но, учитывая общую замороженность проекта, такая переделка явно вне возможностей разработчиков ))). А вот описанное в начале - было бы на самом деле полезно и не так сложно.
 
Уважаемые разработчики !

Предлагаю ввести функцию объединения нескольких графических элементарных объектов в один комплексный объект.

Пример: к наклонной стрелке вверх сзади добавляем отрезок, или стрелка + текстовая надпись. После объединения оба графических объекта выделяются, перемещаются и удаляются синхронно, как единое целое.
 
Уважаемые разработчики !

Предлагаю ввести функцию объединения нескольких графических элементарных объектов в один комплексный объект.

Пример: к наклонной стрелке вверх сзади добавляем отрезок, или стрелка + текстовая надпись. После объединения оба графических объекта выделяются, перемещаются и удаляются синхронно, как единое целое.


Это задумано. Но сроков не скажу :)
 
Rosh

Рашит, очень нехватает одной функции:

bool ObjectIsSelected(string name)

(если необходимо, могу пояснить о чем это..)


друзья, остальное всё отлично решаемо скриптами. если у кого-нибудь проблемы реализации какой-либо сложной графики, опишите.
или здесь, или звоните (мой скайп: tovaroved.lv) - весьма вероятно, помогу кусками кода. мне много приходится с ней работать.
Причина обращения: