Errores, fallos, preguntas - página 3014

 

b2875

 
Aquí está la pregunta: ¿Cómo puedo configurar un símbolo personalizado, que es una copia de algún par cruzado (por ejemplo, CADJPY), pero con ticks modificados, pero de tal manera, que el probador de la estrategia no utilizaría USDCAD, USDJPY pares de base cuando se utiliza. Las posiciones deben contabilizarse correctamente para obtener ganancias y pérdidas.
 
Maksim Emeliashin:
Aquí está la pregunta: ¿Cómo puedo configurar un símbolo personalizado, que es una copia de algún par cruzado (por ejemplo, CADJPY), pero con ticks modificados, pero de tal manera, que el probador de la estrategia no utilizaría USDCAD y USDJPY pares de base. Las posiciones deben contabilizarse correctamente para obtener ganancias y pérdidas.

Modo basado en pipas.

 
fxsaber:

Modo basado en pipas.

Oh, efectivamente, no utiliza pares de bases en este modo. Eh, tendrá que reescribir todo el código donde tengo las estadísticas de ganancias actuales contadas para arreglar.

 

Tengo 12 núcleos, 6 núcleos físicos con hyperthreading. Sólo quiero conservar las físicas, ¿cómo sé cuáles conservar y cuáles desactivar?

 
Alain Verleyen:

Tengo 12 núcleos, 6 núcleos físicos con hyperthreading. Sólo quiero conservar las físicas, ¿cómo sé cuáles conservar y cuáles desactivar?

Sólo desactivar la mitad de ellos
 
Aliaksandr Hryshyn:
Sólo apaga la mitad

Sí. Eso es.

 
Aliaksandr Hryshyn :
Sólo hay que desactivar la mitad de ellos.
Slava:

Sí. Eso es.

Gracias.

Hecho, tengo 6 núcleos físicos, 12 agentes, los últimos 6 desactivados.


Pero todos los núcleos se siguen utilizando (aunque menos intensamente que con 12 agentes). ¿Cuál es la explicación?


 
Alain Verleyen:

Tengo 12 núcleos, 6 núcleos físicos con hyperthreading. Sólo quiero conservar las físicas, ¿cómo sé cuáles conservar y cuáles desactivar?

Los hipercores tienen sentido si las pruebas ponen la mayor parte de las citas en la caché. Digamos que si estamos probando en ticks basados en los reales, no sirve de nada los hipercores, la velocidad no cambia. Sin embargo, para las pruebas en OHLC 1M durante uno o dos años, la velocidad de 12 hipercores es notablemente superior a la de seis físicos.

 

¿Quién puede decirme si es algo que hice mal o un error de MQL5?

Código

/*******************Expert initialization function*******************/
int OnInit()
 {
  MqlDateTime mqlTime;
  datetime tgmt = TimeGMT();
  TimeToStruct(tgmt, mqlTime);
  return(INIT_SUCCEEDED);
 }/******************************************************************/

La estructura está vacía aunque la variable tgmt contiene la hora actual normal...

Código

/*******************Expert initialization function*******************/
int OnInit()
 {
  MqlDateTime mqlTime;
  datetime tgmt = TimeGMT(mqlTime);
  //TimeToStruct(tgmt, mqlTime);
  return(INIT_SUCCEEDED);
 }/******************************************************************/

La estructura contiene basura a pesar de que la variable tgmt contiene la hora actual normal...

En este hardware

2021.05.13 09:42:03.384 Terminal        MetaTrader 5 x64 build 2899 started for MetaQuotes Software Corp.
2021.05.13 09:42:03.384 Terminal        Windows 7 Service Pack 1 build 7601, AMD FX-4170 Quad-Core, 8 / 11 Gb memory, 56 / 465 Gb disk, IE 11, Admin, GMT+3

En el manejador OnTick() también