Как сделать плавность изменения объектов, нарисованных по XY (MT4 vs MT5) - страница 8

 
spiderman8811:
Очень много скептиков))) 
Вам нравится другой подход - используйте его. Мне свой метод ближе. 

Еще больше уехавших кукух... Причем тут нравится или не нравится? Терпи моя красавица)) Дважды 2 равно 4, хоть тресни)))) независимо от личных предпочтений.

 
Dmitry Fedoseev:

Вы прикалываетесь или прикидываетесь? Что здесь непонятного? Что за задача такая, которая требует привязки к пикселям через цену или к цене через пиксели? Что индикатор какой-то делаете - это уж понятно))) Вы бы еще ответили - "программирую что-то на MQL5..." )) 

Я разочарую Вас), поскольку не дам более конкретной информации до выпуска продукта. Как показала многолетняя практика, лучше о деталях всегда молчать.

У меня с идеями хорошо, а вот с программированием скорости не хватает. А у кого-то наоборот, поэтому безопаснее отвечать общими фразами.

 
Vitaliy Kuznetsov:

Я разочарую Вас), поскольку не дам более конкретной информации до выпуска продукта. Как показала многолетняя практика, лучше о деталях всегда молчать.

У меня с идеями хорошо, а вот с программированием скорости не хватает. А у кого-то наоборот, поэтому безопаснее отвечать общими фразами.

Да вы уже давно меня разочаровали, точнее - даже не очаровывали. Было бы за что цепляться - за очередное извращение в программировании - решение банальной задачи через небанальную жо***... Потому что я такой особенный)))

С идеями у всех хорошо - бередить не мешки ворочать. С программированием у вас не скорости не хватает, а кое чего другого.  

 

Вообще жаба прищемила, даже озвучить свою задачу как-то так: ценовые уровни обозначаются графическими объектами (или выводятся комментарии к уровням) и они должны оставаться на графике при его прокрутке, но перемещаться по вертикали. То есть одна координата в цене или времени, другая в пикселях. Что в этом такого секретного? Попытка делать тайной то, что тайной быть не может, очень пагубно влияет на когнитивное функционирование.

Но кто знает, а вдруг там обе координаты из цены в пиксели... тут же место волшебных сюрпризов.

 
Dmitry Fedoseev:

Еще больше уехавших кукух... Причем тут нравится или не нравится? Терпи моя красавица)) Дважды 2 равно 4, хоть тресни)))) независимо от личных предпочтений.

И к чему это написали? Может, для Вас это угадайки и нерабочие ТС. Сразу огрызаться...

 
spiderman8811:

И к чему это написали? Может, для Вас это угадайки и нерабочие ТС. Сразу огрызаться...

Открытым текстом: вы или бредите, или *** пытаетесь разводить (что еще хуже). 

 
Dmitry Fedoseev:

Да вы уже давно меня разочаровали

Взаимно, не думал, что окажетесь таким...

 
Nikolai Semko:

Ну конечно можно. Главное преимущество канваса в том, что 100% гибкость и возможность всего и отсутствие ограничений. Главное креативность.
...

Николай, а есть ли решение следующего вопроса?

Сам канвас начинает проседать по скорости, когда на графике, помимо него используется индикатор по XY (не канвасовский)

Индикатор по канвасу отдельно (Prototype_RectangleAndLine v2.mq5):

Работает быстро. Но если есть иной индикатор по XY (PrototypeXY.mq5), то уже и канвасовский проседает/дёргается/тормозит.


Что можно сделать?

Я то могу написать продукт через канвас, но использование с другими объектовыми индикаторами снижает его скорость.

И мне потом обязательно напишут и пожалуются)

 
Vitaliy Kuznetsov:

Николай, а есть ли решение следующего вопроса?

Сам канвас начинает проседать по скорости, когда на графике, помимо него используется индикатор по XY (не канвасовский)

Индикатор по канвасу отдельно (Prototype_RectangleAndLine v2.mq5):

Работает быстро. Но если есть иной индикатор по XY (PrototypeXY.mq5), то уже и канвасовский проседает/дёргается/тормозит.


Что можно сделать?

Я то могу написать продукт через канвас, но использование с другими объектовыми индикаторами снижает его скорость.

И мне потом обязательно напишут и пожалуются)

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


во вторых, еще раз повторяю - главный источник тормозов - асинхронность функций ChartGet.
Пока MQ не решит это, проблемы с нормальной комфортной визуализацией сохранятся. 

в-третьих, зачем вы используете координаты X Y для привязки и пересчета позиции, а не время и цену (OBJPROP_TIME и OBJPROP_PRICE) и не используете функцию ObjectMove?
в-четвертых, чтобы разные индикаторы на одном окне не пересчитывали одно и тоже (речь о асинхронных тормозных функциях), то для экономии времени можно "подружить" эти индикаторы через совместное использование ресурсов, для передачи одних и тех же параметров в рамках одного окна. В данном случае max_price, min_price, win_width, win_height, на поддержание которых в актуальном состоянии уходит больше всего времени. Т.е. можно реализовать некий ресурсный singleton. Один на все дружественные индикаторы.

Но это чуть посложнее и заморочистее.

https://www.mql5.com/ru/forum/373000/page5#comment_23374308
https://www.mql5.com/ru/forum/373000/page7#comment_23375703

 

не совсем в тему, но раз уж тут собрались знатоки и фанаты Canvas..

встретил действительно нужную вещь, которой явно нехватает в терминале и которую иначе чем через через Canvas не сделать никак вообще

("вражеский" терминал, стиль рисования баров - тремя точками.)

если кто хочет потренироваться (или показать сколь крут), велкам.