ВОПРОС! тем кто занимается тех.анализом.

 

Можно ли группировать графические элементы, и отображать группы по желанию каким нибудь быстрым и удобным способом? (по типу работы со слоями Фотошопа) Если вы натыкались на подобные решения, буду очень благодарен за ссылочку! (как вариант, возможно другая платформа)

Вопрос конечно же не принципиальный, конечно же можно обойтись, НО. очень часто возникает захламлённость графиков многими графическими объектами и это немного раздражает))

 

Все просто.

Нужно использовать шаблоны. Это встроенная функция МТ.

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

 
 
Шаблон, это всё равно что параллельное окно с той же валютной парой. В одном шаблоне мы сможем нарисовать одни сигналы, в другом другие, в третьем третьи. А вот посмотреть в разном сочетании уже не получится это сделать. Ну если конечно нельзя добавить уже к загруженному шаблону ещё один. Я вот не знаю как это сделать... скорее всего это невозможно. Тут вопрос больше за удобство работы в сочетании разных сигналов/графических объектов.
 
fozi:

Все просто.

Нужно использовать шаблоны. Это встроенная функция МТ.

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


ответил выше.
 
halk2009:

Можно ли группировать графические элементы, и отображать группы по желанию каким нибудь быстрым и удобным способом? (по типу работы со слоями Фотошопа) Если вы натыкались на подобные решения, буду очень благодарен за ссылочку! (как вариант, возможно другая платформа)

Вопрос конечно же не принципиальный, конечно же можно обойтись, НО. очень часто возникает захламлённость графиков многими графическими объектами и это немного раздражает))



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

В этом случае:
- для каждой группы объектов предусматривается внешняя булева "переменная видимости", (on/off)
- каждая группа объектов имеет в имени идентификационный префикс  
- программно предусматривается при установке объектов проверять состояние "переменной видимости" и устанавливать только те объекты, префикс которых разрешен внешней переменной

Таким образом, изменяя внешние переменные, на экране можно получить любой набор групп объектов.

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

 
granit77:


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

В этом случае:
- для каждой группы объектов предусматривается внешняя булева "переменная видимости", (on/off)
- каждая группа объектов имеет в имени идентификационный префикс  
- программно предусматривается при установке объектов проверять состояние "переменной видимости" и устанавливать только те объекты, префикс которых разрешен внешней переменной

Таким образом, изменяя внешние переменные, на экране можно получить любой набор групп объектов.

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


Тяжело с программированием ) думал есть какое то готовое решение! Если честно вообще не понял о чём вы говорили) Объекты (прямые, горизонтальные, символи, фибо, и другие стандартные объекты) на график добавляются в ручную.
 
halk2009:

Тяжело с программированием ) думал есть какое то готовое решение! Если честно вообще не понял о чём вы говорили) Объекты (прямые, горизонтальные, символи, фибо, и другие стандартные объекты) на график добавляются в ручную.
Тогда остается единственный путь.

1. При ручной постановке объектов вы приписываете к имени объекта префикс группы. Например, основное имя объекта "Trendline 568456", дописываете "01", получается "01Trendline 568456". "01" - признак первой группы, "02" - второй, и так далее 

2. Заказываете во Фриланс'е индикатор, который будет на каждом тике перебирать все объекты и делать "невидимыми", придав им цвет фона, те, которые в данный момент вам не нужны. Номера групп объектов для показа указываются в параметрах (внешних переменных) индикатора. Индикатор простой, дорого не встанет. Может, кто-то и бесплатно напишет, если заинтересуется. 
 
granit77:
Тогда остается единственный путь.

1. При ручной постановке объектов вы приписываете к имени объекта префикс группы. Например, основное имя объекта "Trendline 568456", дописываете "01", получается "01Trendline 568456". "01" - признак первой группы, "02" - второй, и так далее 

2. Заказываете во Фриланс'е индикатор, который будет на каждом тике перебирать все объекты и делать "невидимыми", придав им цвет фона, те, которые в данный момент вам не нужны. Номера групп объектов для показа указываются в параметрах (внешних переменных) индикатора. Индикатор простой, дорого не встанет. Может, кто-то и бесплатно напишет, если заинтересуется. 


Чуть более чем на под года уходил в С++ из MQL, но все же неужели надо все на каждом тике смотреть? А ессли:

1) Создать таблицу в которой будут находиться имена слоев (можно выделять ни более ни менее одного слоя)

2) Обрабатывать событие создание объекта (наверное оно есть, не в курсе честно говоря) и ассоциировать выделенный в таблице слой с созданным объектом 

3) Обрабатывать событие переключения слоев (при нажатии на имя другого слоя  - делать невидимыми объекты прошлого и видимыми нового слоя)

видимость - невидимость тоже под вопросом, есть иные способы достижения кроме изменения цвета фона?

4) Продумать процесс создания нового слоя и его имени

5) Продумать процесс удаления слоя и его объектов

6) Продумать процесс междуслойного копирования объетов

7) ... 

 

Не надо ничего делать ни на каждом тике, ни на каждом баре, да и события никакие отслеживать не надо.

1. В свойствах каждого графического объекта должна присутствовать ссылка на понятие вышестоящего уровня.

2.  Необходимо описание слоев, но не в иерархическом, а в сетевом виде. 

Причина обращения: