Discusión sobre el artículo "Representación personalizada de la historia comercial y creación de gráficos para los informes" - página 3

 
Andrey Azatskiy:

Prueba a sustituir el archivo DealHistoryGetter.mqh por el que se adjunta en este post.

Sólo queda este error

2018.09.01 19:11:36.150 Get_TradingHistory (GAZR Splice,H1)     zero divide in 'DealHistoryGetter.mqh' (457,51)
 
Punto de interrupción en 451 y 461 y mira a través de inputParam.deals[i].volume y la matriz de contratos.

Tienes el volumen del contrato a cero por alguna razón. Si estoy en lo cierto, debería haber 2 iteraciones antes de este error. Pero si estoy en lo cierto, no puedo imaginar por qué el volumen del contrato podría ser igual a cero, no sucede....
 
En la línea 460, en la primera iteración, se introduce el primer contrato en la matriz de contratos. En la línea 457, el último contrato activo se calcula a partir de la matriz de contratos utilizando el método descrito en el artículo. Con las historias que ejecuté, no se produjeron errores de este tipo.
 
Andrey Azatskiy:
Punto de interrupción en 451 y 461 y mira a través de inputParam.deals[i].volume y la matriz de contratos.

Tienes el volumen del contrato a cero por alguna razón. Si estoy en lo cierto, debería haber 2 iteraciones antes de este error. Pero si estoy en lo cierto, no puedo imaginar por qué el volumen del contrato podría ser igual a cero, no sucede....

No se usar el depurador, he puesto puntos, lo he ejecutado, pero no hay errores ahí.

Tal vez el punto es que hay tales operaciones en la historia?


 

También en la línea 407 sería bueno poner un breakpoint. y mirar el array lotArr.

No voy a reproducir tu problema porque está relacionado con tu historial de operaciones. Mis historiales (los que corrí a través de esta clase) no produjeron tales errores....

 
Andrey Azatskiy:

También sería bueno poner un breakpoint en la línea 407. y mirar el array lotArr.

No voy a reproducir tu problema porque está relacionado con tu historial de operaciones. Mis historiales (los que corrí a través de esta clase) no produjeron tales errores....

¿Probaste en una cuenta real o en una cuenta demo?

 
Tal vez haya un fallo en mi clase, pero no puedo reproducirlo.... Está relacionado con tu historial y, en consecuencia, con tu terminal y tu cuenta de trading. Quizás haya algún matiz en el análisis del histórico de Me5 que se me haya pasado al escribir esta clase, pero sólo tú puedes reproducirlo. Tendré que ingeniármelas con el depurador.
 
Aleksey Vyazmikin:

¿Probaste en una cuenta real o en una cuenta demo?

No se trata de la cuenta, sino de tu historial. El terminal genera el historial de la misma manera tanto para las cuentas reales como para las de demostración.

 
Andrey Azatskiy:
Tal vez haya un fallo en mi clase, pero no puedo reproducirlo.... Está relacionado con tu historial y, en consecuencia, con tu terminal y tu cuenta de trading. Quizás haya algún matiz en el análisis del histórico de Me5 que se me haya pasado al escribir esta clase, pero sólo tú puedes reproducirlo. Yo tendré que ocuparme del depurador.

Si escribes más específicamente qué y dónde buscar y escribir, te ayudaré a encontrar el error.

 
Andrey Azatskiy:

No se trata de la cuenta, sino de tu historial. El terminal genera el historial de la misma manera tanto para la cuenta real como para la demo.

No hay correcciones en la demo, cuya captura de pantalla he dado más arriba.

Todos los días empiezan con ellas.