Probador de Estrategias de MetaTrader 5: errores, fallos, sugerencias de mejora - página 49

 
fxsaber:

Ordenar la columna "Resultado".

Ordenados por resultado, beneficio, pases, etc. El resultado está en la imagen.
 
Grozir:
Ordenados por resultado, beneficio, pases, etc. El resultado está en la imagen.

Necesitas un archivo opt de esta optimización para averiguarlo.

 
fxsaber:

Necesitas un archivo opt de esta optimización para averiguarlo.

Esta congelación de los resultados se produjo 30 minutos después del inicio de la optimización. Al terminar el proceso, la mesa se sacudió y mostró todos los resultados.
 
Grozir:
Este cuelgue de resultados se produjo 30 minutos después del inicio de la optimización. Al terminar el proceso, la mesa se sacudió y mostró todos los resultados.

La tabla no se actualiza cuando está abierta (por razones de rendimiento). Tienes que cambiar de pestaña para actualizar.

 

El informe HTML del pase único no se genera correctamente. Reproducción.

#include <MT4Orders.mqh> // https://www.mql5.com/ru/code/16006

#define  Bid SymbolInfoDouble(_Symbol, SYMBOL_BID)
#define  Ask SymbolInfoDouble(_Symbol, SYMBOL_ASK)

void OnTick()
{  
  static bool FirstRun = true;
  
  if (FirstRun)
  {        
    const double TP = Bid - 100 * _Point;
    
    OrderSend(_Symbol, OP_SELL, 0.1, Bid, 0, 0, TP);
    OrderSend(_Symbol, OP_BUYLIMIT, 0.2, TP, 0, 0, 0);
    
    FirstRun = false;
  }
}

Brevemente, la posición abierta tiene una toma al mismo nivel que la orden limitada. Resultado de la ejecución.

El probador ejecuta primero la TP y luego la orden limitada. Esto es correcto. De lo contrario, nos encontraríamos con la situación de que no hay suficiente margen para la ejecución de la orden Limit.

En el Terminal el ejemplo posterior (ver la primera captura de pantalla) de los tratos es correcto (incluyendo el archivo tst). Pero no es así en el informe HTML. Además, también se rompe la secuencia de activación de las órdenes correspondientes en el Terminal (incluido el archivo tst).

 

Foro sobre comercio, sistemas de comercio automatizados y pruebas de estrategias

Bibliotecas: SingleTesterCache

fxsaber, 2020.01.15 22:46

El volumen de operaciones/órdenes no se escribe correctamente en tst. Siempre se calcula como siSYMBOL_TRADE_CONTRACT_SIZE= 100.000.

Si se establece un valor diferente, no tiene efecto sobre el valor del volumen en tst.

 

Existe la sospecha de que cuando se cambia la cuenta durante la optimización, ésta se detiene. Pero, en teoría, todos los ajustes de la cuenta deberían conocerse ya.

También existe la sospecha de que si el bot se recompila durante la optimización para que no funcione, entonces la optimización comenzará a detenerse también.

PS. Lo comprobaré en cuanto la CPU esté libre.
 

Ya hay 150 resultados y muestra 9. ¿Por qué?

Esta es la imagen de los agentes:


 
Andrey Pogoreltsev:

Ya hay 150 resultados y muestra 9. ¿Por qué?

Esta es la imagen de los agentes:


150 tareas en curso y 9 completadas. La línea superior de la segunda captura de pantalla.
 
Grozir:
Hay 150 tareas en marcha y 9 completadas. La línea superior de la segunda pantalla.

En la primera captura de pantalla se puede ver que hay tareas completadas. Hay 150 de ellos.

Si se cuentan las tareas del trabajo en la segunda pantalla, hay 103, de las cuales se han completado 9.