Errores, fallos, preguntas - página 3174

 
Andreas Hoogendoorn # :

Estoy utilizando las clases CGraphic y CCurve y ocurre algo extraño. Estoy ejecutando dos instancias del mismo EA en diferentes pares de divisas. Cuando desplazo un gráfico, el otro gráfico es visible por un momento. Parece que la memoria se desordena entre los dos gráficos. Reiniciar el terminal no hace ninguna diferencia. (La imagen es un gif animado)


¿Puedes publicar un ejemplo mínimo? Y, por favor, especifica los datos del terminal y del sistema operativo, algo así:

Foro sobre trading, sistemas automatizados de trading y prueba de estrategias de trading

Muy Glitchy MetaTrader

Vladimir Karputov, 2021.03.16 04:20

Si usted tiene una pregunta, en primer lugar debe mostrar las tres primeras líneas de la pestaña "Diario


(seleccione estas líneas, copie al portapapeles y pegue en el mensaje usando el botón Código). Debería ser así:

2021.03.16 05:13:07.133 Terminal        MetaTrader 5 x64 build 3003 started for MetaQuotes Software Corp.
2021.03.16 05:13:07.134 Terminal        Windows 10 build 19042, Intel Core i7-9750 H  @ 2.60 GHz, 26 / 31 Gb memory, 842 / 947 Gb disk, IE 11, UAC, GMT+2
2021.03.16 05:13:07.134 Terminal        C:\Users\barab\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075

 
Andreas Hoogendoorn #:

Estoy utilizando las clases CGraphic y CCurve y ocurre algo extraño. Estoy ejecutando dos instancias del mismo EA en diferentes pares de divisas. Cuando desplazo un gráfico, el otro gráfico es visible por un momento. Parece que la memoria se desordena entre los dos gráficos. Reiniciar el terminal no hace ninguna diferencia. (La imagen es un gif animado)


¡¡¡Ok he solucionado el problema aunque sigue siendo un bug !!!

Al utilizar la clase CGraphic se obliga a utilizar un nombre único al crear un recurso gráfico.

Los recursos no están aislados como debería ser. Un EA de un gráfico puede acceder al recurso de otro gráfico.


2022.04.17 12:44:13.049 Terminal        MetaTrader 5 x64 build 3260 started for MetaQuotes Software Corp.
2022.04.17 12:44:13.050 Terminal        Windows 10 build 19044, 4 x Intel Core i5  750 @ 2.67 GHz, 4 / 11 Gb memory, 4 / 124 Gb disk, UAC, GMT-3
2022.04.17 12:44:13.050 Terminal        C:\Users\andre\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075

#include <Graphics\Graphic.mqh>
CGraphic          graphic;

graphic.Create(0, "test", 0, 0, 0, 1200, 400);

Este ejemplo falla.

graphic.Create(0, (string) MathRand(), 0, 0, 0, 1200, 400);
Este ejemplo está bien.
 

Ya he escrito sobre ello. Pero es realmente molesto.
Estimados desarrolladores del backend de este sitio, por favor, arréglenlo:
sigo recibiendo notificaciones sobre nuevas versiones de productos de pago que nunca he comprado, a veces varias veces al día:

Hago clic en este enlace:

 
Andreas Hoogendoorn #:

Estoy utilizando las clases CGraphic y CCurve y ocurre algo extraño. Ejecuto dos instancias del mismo EA en diferentes pares de divisas. Cuando me desplazo por un gráfico, el otro se hace visible por un instante. La memoria parece confundirse entre los dos gráficos. Reiniciar el terminal no cambia nada. (La imagen es un gif animado).


Al crear un objeto gráfico, es necesario añadir el nombre, por ejemplo, el ID del gráfico en el que se dibujará:

   CGraphic graphic;

   graphic.Create(0,"G"+(string)ChartId(),0,30,30,780,380);


De lo contrario, el nombre del recurso gráfico en ambos gráficos será el mismo, y como los recursos gráficos son globales para el terminal, ambos programas trabajarán con el mismo recurso (es decir, dibujarán en el mismo lienzo).

 

Error : OrderCalcMargin devuelve un valor erróneo


OrderCalcMargin() a veces devuelve un valor incorrecto del margen requerido.

Por ejemplo, funciona correctamente en muchos de los principales pares de divisas y en muchos otros CFD, etc, devuelve el valor correcto.


Pero, en USDPLN o en PLATINUM, o en algún otro, devuelve un valor absolutamente erróneo del margen requerido.

El ENUM_SYMBOL_CALC_MODE solicitado para EURUSD y USDPLN es el mismo(SYMBOL_CALC_MODE_FOREX), pero si para EURUSD la función devuelve el valor correcto del margen requerido, para USDPLN es incorrecto.

¿Por qué?

 

Hola a todos, espero estar escribiendo en el lugar correcto (pero si acaso, sugieran un lugar más relevante).

Me refiero a la desaparición de alertas en MT5 (versión 5.00 build 3260, Just2Trade).

La esencia: si añado (o cambio) todas las asignaciones y simplemente reinicio el ordenador sin cerrar la ventana (Start Shutdown-Reboot),
todos los cambios en todas las asignaciones desaparecen. Y para guardarlos, hay que acordarse de cerrar la ventana del terminal con la cruz.

Se trata de un error bastante cruel que debe solucionarse.

 
Lazar Buga #: ¿Por qué?

Tu corredor lo ha estropeado. Habla con ellos.

 
Ilyas #:

Al crear un objeto gráfico, debe añadir el nombre, por ejemplo, el ID del gráfico en el que se dibujará:


De lo contrario, el nombre del recurso gráfico en ambos gráficos será el mismo, y como los recursos gráficos son globales para el terminal, ambos programas trabajarán con el mismo recurso (es decir, dibujarán en el mismo lienzo).

El nombre del recurso objeto gráfico no puede superar los 63 caracteres. Si se añade un identificador de gráfico al nombre, no queda mucho espacio para un nombre sano y legible, por desgracia.

 
a18 #:

Hola a todos, espero estar escribiendo en el lugar correcto (pero si acaso, sugieran un lugar más relevante).

Me refiero a la desaparición de alertas en MT5 (versión 5.00 build 3260, Just2Trade).

La esencia: si añado (o cambio) todas las asignaciones y simplemente reinicio el ordenador sin cerrar la ventana (Start Shutdown-Reboot),
todos los cambios en todas las asignaciones desaparecen. Y para guardarlos, hay que acordarse de cerrar la ventana del terminal con la cruz.

Es un fallo bastante cruel que hay que arreglar.

Arreglado, estará en la versión beta.

 
Error de compilación:
template<typename T>
struct A {
    T *t;
};
void OnStart()
{
    A<void> a; //Error: 'void' - expression of 'void' type is illegal
}