Cómo hacer que los objetos dibujados por XY cambien suavemente (MT4 vs MT5) - página 5

 
Dmitry Fedoseev:

¿Qué estás haciendo? ¿Por qué se necesita esa vinculación, para fijar el precio a través de los píxeles?

Tratando de conquistar el mundo).

De hecho, quiero transferir un par de productos a MT5. Tienen tal especificidad que no funcionará sin XY.

Aleksei Beliakov:

Intenta que la salida/actualización del lienzo no sea más de 30 veces por segundo

¿Para acelerar el probador? Bueno aún no ha pasado mucho tiempo, estaré pinchando botones y probando diferentes manipulaciones.

 
Vitaliy Kuznetsov:

...

En realidad quiero transferir un par de productos a MT5. Son tan específicos que no funcionan sin XY.

...

Eso es lo que pido. ?

 
Nikolai Semko


Nikolai, tengo una pregunta sobre los kanvas. También tengo un panel de operaciones en MT4.

Estoy pensando en reescribir los gráficos para que se vean bien en MT5 en diferentes resoluciones de pantalla. El único problema es que casi todos los gráficos están en bmp.

¿Es realista controlar el tamaño de la fuente y hacer un "diseño de goma" del panel cambiando el tamaño de los archivos bmp? ¿O es más fácil hacer dos versiones de gráficos bmp: "normal" y 4k?

 
Por cierto, Vitaly, presta atención también a los kanvas implementados en OBJ_BITMAP y no en OBJ_BITMAP_LABEL.
https://www.mql5.com/ru/forum/364640/page12#comment_21305905
Todavía no he experimentado con este tipo de kanvas.
Podría haber una solución más ideal en este caso.

 
Vitaliy Kuznetsov:
Nikolai Semko


Nikolai, tengo una pregunta sobre los kanvas. También tengo un panel de operaciones en MT4.

Estoy pensando en reescribir los gráficos para que se vean bien en MT5 en diferentes resoluciones de pantalla. El único problema es que casi todos los gráficos están en bmp.

¿Es realista controlar el tamaño de la fuente y hacer un "diseño de goma" del panel cambiando el tamaño de los archivos bmp? ¿O es más fácil hacer dos versiones de gráficos bmp - "normal" y 4k?

Por supuesto que es posible. La principal ventaja de kanvas es la flexibilidad al 100% y la posibilidad de todo y sin limitaciones. Lo principal es la creatividad.
Puede descargar mi último producto gratuito, abrir el panel y escalar la ventana de MT5.
Incluso los bmp pueden ser escalados en kanvas. Te di un ejemplo en algún lugar.
Aquí está:
https://www.mql5.com/ru/forum/227736/page66#comment_20456641
puedes usar mi mejor algoritmo (en términos de imagen) o el más simple y rápido de Yuri.

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


Estoy pensando en reescribir los gráficos para que se vean bien en MT5 en diferentes resoluciones de pantalla. Excepto que casi todos los gráficos están en bmp.

No te olvides del parámetro

TerminalInfoInteger(TERMINAL_SCREEN_DPI)
 
Nikolai Semko:

...

Gracias. Creo que si estoy presionado por el tiempo, es más fácil ser autónomo para reescribir los gráficos a través de kanvas.

Por cierto, la optimización está empezando a funcionar poco a poco. El probador es ahora más rápido que antes. Lo único que queda es encontrar y arreglar por qué el histograma no se desplaza mientras se trabaja.

También me molesta un poco MT5 para cargar las cotizaciones y el efecto que produce en el proceso. Aquí hay una descripción y un prototipo -https://www.mql5.com/ru/forum/373465

Hago un enlace cruzado, porque quién sabe si ese tema se verá o no, y aquí hay progers fuertes, y quizás presten atención.
Мигание линий и прямоугольников в момент прогрузки котировок
Мигание линий и прямоугольников в момент прогрузки котировок
  • 2021.07.16
  • www.mql5.com
Столкнулся со следующей проблемой в МТ5. Есть индикаторы, которые рисуют линии и прямоугольники на указанное кол-во свечей...
 
Vitaliy Kuznetsov:

Gracias. Creo que si el tiempo es escaso, sería más fácil ir por libre para reescribir los gráficos a través de Canvas.

Dudo que se pueda hacer en autónomo. La entrada al sitio ya está abierta y la entrada al sitio ya está cerrada, entonces la entrada es libre.

Vitaliy Kuznetsov:

Para MT5 también me molesta un poco la carga de cotizaciones y el efecto que produce. He dado una descripción y un prototipo aquí -https://www.mql5.com/ru/forum/373465

Hago un enlace cruzado, ya que quién sabe si verán ese hilo o no, y aquí hay progamadores fuertes, y quizás les hagan caso.

Por eso no me gustan los objetos, porque tienen vida propia en sus flujos, cuyo control no está a tu alcance. Con kanvas, por el contrario, todo está en tus manos. Por eso tengo que escribir código adicional para que el probador con lienzo no se ralentice al calcular los frames en cada tick más de 30 veces por segundo.
Además, el trabajo con los TFs y la carga del historial es muy poco razonable e ineficiente en MT5. Sólo se cargan los M1, y de forma descomprimida, mientras que los demás sólo se calculan a partir de los M1. Por lo tanto, si activa MN1 por primera vez, 100 barras tardarán más de 10 segundos en cargarse. Tuve que escribir la carga de la barra yo mismo y convertir M1 en forma empaquetada y tener todos los TFs calculados en la memoria. Todos mis TFs junto con el M1 ocupan una fracción del espacio en la RAM que sólo el M1 regular en MT5.

 
Nikolai Semko:

Y trabajar con los TFs y la carga del historial en MT5 es horriblemente irracional e ineficiente. Sólo se descarga M1, y en forma descomprimida, los demás sólo se calculan a partir de M1. Por lo tanto, si activa MN1 por primera vez, 100 barras tardarán más de 10 segundos en cargarse. Tuve que escribir la carga de la barra yo mismo y convertir M1 en forma empaquetada y tener todos los TFs calculados en la memoria. Todos mis TFs junto con el M1 ocupan mucho menos espacio en la RAM que un solo M1 normal en MT5.

¿Por qué no reaccionan los administradores y programadores del proyecto? Esta es la base principal. He oído que a algunos operadores les resulta difícil cambiar a MT5 debido a la lentitud con la que se cambian los marcos temporales.

Pero no lo entendí hasta que me enfrenté a ello. Y ahora resulta que los programadores escriben su propio cargador por comodidad.


Pero tengo un gráfico rectangular escrito a través de un lienzo que no parpadea sino que rebota a la izquierda/derecha


 
Vitaliy Kuznetsov:

Pero el gráfico del rectángulo de conteo de barras, escrito a través de un lienzo, no parpadea, sino que rebota a la izquierda/derecha


Se trata de un error en el código. El lienzo no tiene nada que ver.