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

 
Dmitry Fedoseev:

А что вы делаете? Зачем нужна такая привязка - к цене через пиксели? 

Пытаюсь завоевать этот мир)

На самом деле хочу пару продуктов на МТ5 перевести. У них такая специфика, что без XY не получится.

Aleksei Beliakov:

попробуй выводить/обновлять канвас не больше 30 раз в секунду

Для ускорения тестера? Ну ещё мало времени прошло, буду тыкать кнопочки и пробовать разные манипуляции.

 
Vitaliy Kuznetsov:

...

На самом деле хочу пару продуктов на МТ5 перевести. У них такая специфика, что без XY не получится.

...

Вот об этом и спрашиваю. ?

 
Nikolai Semko


Николай, у меня вопрос по канвасу. Есть ещё у меня одна торговая панель на МТ4.

Думаю переписать графику, чтобы красиво смотрелось на МТ5 на разном разрешении экрана. Вот только графика почти вся через bmp.

Реально ли отслеживать размер шрифта и сделать "резиновый дизайн" панели, изменяя размеры bmp файлов? Или проще сделать два варианта bmp графики - "обычный" и 4к?

 
Кстати, Виталий, обратите внимание еще на канвас, реализованный на  OBJ_BITMAP, а не на  OBJ_BITMAP_LABEL.  
https://www.mql5.com/ru/forum/364640/page12#comment_21305905
Я еще с ним таким видом канваса не экспериментировал.
Возможно, что здесь будет более идеальное решение.

 
Vitaliy Kuznetsov:
Nikolai Semko


Николай, у меня вопрос по канвасу. Есть ещё у меня одна торговая панель на МТ4.

Думаю переписать графику, чтобы красиво смотрелось на МТ5 на разном разрешении экрана. Вот только графика почти вся через bmp.

Реально ли отслеживать размер шрифта и сделать "резиновый дизайн" панели, изменяя размеры bmp файлов? Или проще сделать два варианта bmp графики - "обычный" и 4к?

Ну конечно можно. Главное преимущество канваса в том, что 100% гибкость и возможность всего и отсутствие ограничений. Главное креативность.
Можете скачать мой последний бесплатный продукт, открыть панель и помасштабировать окно MT5.
Даже bmp можно масштабировать в канвасе. Где-то приводил уже пример.
Вот нашел:
https://www.mql5.com/ru/forum/227736/page66#comment_20456641
можете использовать мой более качественный(по изображению) алгоритм или более простой и быстрый Юрия.

Canvas - это круто!
Canvas - это круто!
  • 2021.01.29
  • www.mql5.com
Поставил себе задачу: коротким кодом эффектно продемонстрировать возможности пользовательской графики через класс CCanvas...
 
Vitaliy Kuznetsov:
Nikolai Semko


Думаю переписать графику, чтобы красиво смотрелось на МТ5 на разном разрешении экрана. Вот только графика почти вся через bmp.

Только не забываем про параметр

TerminalInfoInteger(TERMINAL_SCREEN_DPI)
 
Nikolai Semko:

...

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

Кстати, потихоньку уже начинает получаться оптимизация. Теперь тестер быстрее, чем был. Осталось найти и исправить, почему гистограмма не смещается в процессе работы.

И ещё по МТ5 меня немного раздражает прогрузка котировок и тот эффект, что получается в её процессе. Тут описание дал и прототип - https://www.mql5.com/ru/forum/373465

Делаю кросс-ссылку, т.к. кто знает, увидят ту тему или нет, а тут прогеры сильные, авось обратят внимание.
Мигание линий и прямоугольников в момент прогрузки котировок
Мигание линий и прямоугольников в момент прогрузки котировок
  • 2021.07.16
  • www.mql5.com
Столкнулся со следующей проблемой в МТ5. Есть индикаторы, которые рисуют линии и прямоугольники на указанное кол-во свечей...
 
Vitaliy Kuznetsov:

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

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

Vitaliy Kuznetsov:

И ещё по МТ5 меня немного раздражает прогрузка котировок и тот эффект, что получается в её процессе. Тут описание дал и прототип - https://www.mql5.com/ru/forum/373465

Делаю кросс-ссылку, т.к. кто знает, увидят ту тему или нет, а тут прогеры сильные, авось обратят внимание.

Вот поэтому я не люблю объекты, так как они живут собственной жизнью в своих потоках, контроль над которой Вам не доступен. С канвасом напротив - все в ваших руках. Именно поэтому для тестера с канвасом приходится дописывать код, чтоб не тормозил, рассчитывая кадр на каждом тике более 30 раз в секунду. 
Да и работа с ТФ и с подгрузкой истории в MT5 реализована ужасно неразумно и неэффективно. Подгружаются только М1, причем в незапакованном виде, остальные только рассчитываются из M1. Поэтому если на первый раз включите MN1, то 100 баров будут грузится более 10 секунд. Мне пришлось самому писать загрузку баров и переводить М1 в упакованный вид и иметь все рассчитанные ТФ в памяти. Все мои ТФ вместе с M1 занимает места в ОЗУ в разы меньше места, чем только один штатный M1 в MT5.

 
Nikolai Semko:

Да и работа с ТФ и с подгрузкой истории в MT5 реализована ужасно неразумно и неэффективно. Подгружаются только М1, причем в незапакованном виде, остальные только рассчитываются из M1. Поэтому если на первый раз включите MN1, то 100 баров будут грузится более 10 секунд. Мне пришлось самому писать загрузку баров и переводить М1 в упакованный вид и иметь все рассчитанные ТФ в памяти. Все мои ТФ вместе с M1 занимает места в ОЗУ в разы меньше места, чем только один штатный M1 в MT5.

Собственно, почему Админы и программисты проекта не реагируют? Это же первичная основа. Я уже слышал, что некоторым трейдерам тяжело переходить на МТ5 из-за "тормознутости" с переключением таймфреймов.

Но тогда я не понимал, пока сам не столкнулся. А тут ещё оказывается, что для удобства программисты пишут собственный загрузчик.


А вот графика прямоугольников по bars count, написанная через канвас у меня не мигает, а прыгает влево/вправо


 
Vitaliy Kuznetsov:

А вот графика прямоугольников по bars count, написанная через канвас у меня не мигает, а прыгает влево/вправо


Это ошибка в коде. Канвас здесь ни при чем.