Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1934

 
EVGENII SHELIPOV #:

¡¡¡¡Buenas tardes!!!!

Por favor, ayúdenme a cambiar una función que calcula sólo las pérdidas de las órdenes no rentables en una parrilla de órdenes

Tenemos que cambiar la función que calcula sólo el tamaño de lote mínimo de cada orden en la red de órdenes. Lote mínimo=0,01

¡¡¡¡Gracias!!!!

Describa más claramente lo que quiere
 
¿Pueden decirme cómo gestionar el orden de los planos (primer plano, fondo) de los objetos gráficos? Por ejemplo, tengo un pequeño campo de información cuadrado con un gráfico debajo y una línea de tendencia que sube en el propio campo, y una etiqueta que se esconde debajo del campo.
 
Ivan Butko #:
¿Puede decirme cómo gestionar la secuencia de planos (primer plano, fondo) de los objetos gráficos? Por ejemplo, tengo un pequeño infofield cuadrado con un gráfico debajo, y una línea de tendencia está escalando en el propio campo, y una etiqueta se esconde debajo del campo.
  1. Establecer OBJPROP_TIMEFRAMES a OBJ_NO_PERIODS
  2. Establezca el parámetro de objeto OBJPROP_TIMEFRAMES en OBJ_ALL_PERIODS
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Видимость объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Видимость объектов
  • www.mql5.com
Видимость объектов - Константы объектов - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Artyom Trishkin #:
  1. Establecer OBJPROP_TIMEFRAMES a OBJ_NO_PERIODS
  2. Establezca el parámetro OBJPROP_TIMEFRAMES en OBJ_ALL_PERIODS

Artyom, probablemente no entendí bien, tal vez hice la pregunta torcida:

Hay tres(cuatro, cinco...) objetos creados por el hombre (ObjectCreate). El primero se esconde detrás del tercero, el segundo está en primer plano,. Cómo poner uno en primer plano, el segundo en segundo y el tercero en segundo plano. Para que el primer objeto sea siempre visible, el segundo es siempre visible, pero no detrás del primero. El tercer objeto también es siempre visible, pero no detrás del primero y del segundo. Es una especie de alternancia de planes.
No acababa de entender el TF.

 
Ivan Butko #:

Artyom, probablemente no he entendido bien, tal vez he formulado mal la pregunta:

Hay tres (cuatro, cinco...) objetos creados por el hombre (ObjectCreate). El primero se esconde detrás del tercero, el segundo está en primer plano,. Cómo poner uno en primer plano, el segundo en segundo y el tercero en segundo plano. Para que el primer objeto sea siempre visible, el segundo siempre es visible, pero no detrás del primero. El tercer objeto también es siempre visible, pero no detrás del primero y del segundo. Una especie de plan alternativo.
No entendí muy bien lo de la TF.

Hazlo por turnos como se ha descrito anteriormente para cada uno de tus objetos. La alternancia afectará al diseño. El último al que se le aplicará esta acción será el más alto.

Una vez que haya determinado que cualquier objeto gráfico que debería estar por debajo de sus objetos ha aparecido en el gráfico, haga alternativamente un ocultamiento para cada uno de sus objetos (como escribí anteriormente). Esta acción hace que el objeto pase al primer plano del gráfico. El primer objeto al que se le aplicó esta acción estará en la parte inferior (pero por encima de cualquier otro objeto gráfico dibujado en el gráfico después de la creación de sus objetos), el segundo estará por encima del primero, el tercero estará por encima del primero y del segundo, y así sucesivamente. Todos los objetos que han sido ocultados estarán por encima del resto de los objetos gráficos.

Es decir, el orden en el que se aplican los objetos de ocultación a sus objetos establece su orden por encima de los demás. Pero todos ellos aparecerán por encima de todo lo demás en el gráfico.

La lógica es esta:

Si aparece algún objeto gráfico en el gráfico que no debería superponerse a sus objetos, se hace una ocultación de cada uno de sus objetos en el orden en que deberían aparecer visualmente (el primero en la parte inferior, el último en la parte superior). Después de ocultar-mostrar todos sus objetos haga ChartRedraw().
Esto es importante - redibuje el gráfico sólo después de que todos sus objetos hayan sido ocultados-mostrados, para que visualmente no haya parpadeo en el gráfico.

 
Artyom Trishkin #:

Hagan por turnos lo descrito anteriormente para cada una de sus propiedades. La rotación afectará al posicionamiento. El objeto más reciente al que se aplique esta acción será el superior.

Una vez que haya determinado que cualquier objeto gráfico que debería estar debajo de sus objetos ha aparecido en el gráfico, haga alternativamente una ocultación de cada uno de sus objetos (como escribí anteriormente). Esta acción hace que el objeto pase al primer plano del gráfico. El primer objeto al que se le aplicó esta acción estará en la parte inferior (pero por encima de cualquier otro objeto gráfico dibujado en el gráfico después de la creación de sus objetos), el segundo estará por encima del primero, el tercero estará por encima del primero y del segundo, y así sucesivamente. Todos los objetos que han sido ocultados estarán por encima del resto de los objetos gráficos.

Es decir, el orden en el que se aplican los objetos de ocultación a sus objetos determina su orden sobre los demás. Pero todos ellos aparecerán por encima de todo lo demás en el gráfico.

La lógica es esta:

Si aparece algún objeto gráfico en el gráfico que no debería superponerse a sus objetos, se hace una ocultación de cada uno de sus objetos en el orden en que deberían aparecer visualmente (el primero en la parte inferior, el último en la parte superior). Después de ocultar-mostrar todos sus objetos haga ChartRedraw().
Esto es importante - redibuje el gráfico sólo después de que todos sus objetos hayan sido ocultados-mostrados, para que visualmente no haya parpadeo en el gráfico.

Ahhhh, ¡muchas gracias! Ahora lo entiendo. Gran
 
Por favor, una cosa más: pasé de un monitor 2k a un portátil 1080 y todo el texto se hizo grande y se superpuso. ¿Pueden aconsejarme cómo resolver este problema?
 
Ivan Butko #:
Por favor, una cosa más: cambié de un monitor 2k a un portátil 1080 y todo el texto se hizo demasiado grande y se superpuso entre sí. Por favor, aconséjeme cómo resolver este problema

Es más complicado que eso. Es necesario utilizar recursos para dar salida a los gráficos. Leer TextSetFont() - se trata del tamaño de la fuente en píxeles lógicos.

En consecuencia TextOut() - sobre la salida de texto del recurso. Puede encontrar todo esto en los enlaces de la documentación.

Документация по MQL5: Графические объекты / TextSetFont
Документация по MQL5: Графические объекты / TextSetFont
  • www.mql5.com
TextSetFont - Графические объекты - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Artyom Trishkin #:

Es más complicado que eso. Es necesario utilizar recursos para dar salida a los gráficos. Leer TextSetFont() - se trata del tamaño de la fuente en píxeles lógicos.

En consecuencia TextOut() - sobre la salida de texto del recurso. Y todo ello a través de enlaces en la documentación.

¡Lo tengo! Muchas gracias.

 
Ivan Butko #:
Por favor, una cosa más: pasé de un monitor 2k a un portátil 1080 y todo el texto se hizo grande y se superpuso. Por favor, aconséjeme cómo resolver este problema
Herramientas de Windows. La configuración de los gráficos con fuentes grandes y pequeñas también debería ajustarse.
Razón de la queja: