Discusión sobre el artículo "Creación y simulación de símbolos personalizados en MetaTrader 5" - página 3

 
fxsaber:

Toma el 1653 (hay cambios significativos en este tema) y si no funciona, publícalo aquí.


¿Dónde puedo conseguirlo? Incluso 1643 se descarga desde metatrader5.com?

 
bistreevseh:

¿Dónde conseguirlo? Incluso desde metatrader5.com se descarga 1643?

Abre una cuenta en Metaquotes-Demo y mira los logs.

 

Gracias, ¡lo he instalado!

2017.11.14 12:51:04.173 Ticks   old tick ARBINDEX (tick: 1970.01.01 00:00:25.934, last: 2017.11.14 11:50:09.000) 5.0000/6.0000
2017.11.14 12:51:05.198 Ticks   old tick ARBINDEX (tick: 1970.01.01 00:00:00.002, last: 2017.11.14 11:50:09.000) 5.0000/6.0000
2017.11.14 12:51:06.426 Ticks   future price ARBINDEX (tick: , last: 2017.11.14 11:49:46.000) 5.0000/6.0000/0.0000

Me las arreglé para crear un par de garrapatas, pero por lo que entiendo hay errores, ¿me puede decir lo que significan? ¡Gracias!

 
bistreevseh:

He conseguido crear un par de ticks, pero por lo que tengo entendido hay errores, ¿podéis decirme qué significan? Gracias.

Para un tick necesitas especificar también la hora.

 
fxsaber:

Para un tick hay que especificar también la hora.


También pensé en ello antes de escribir el último mensaje.
Ejecuté este código:

   MqlTick tick[];
   ArrayResize(tick, 1);
   tick[0].ask=6;
   tick[0].bid=5;
   tick[0].flags=TICK_FLAG_BID|TICK_FLAG_ASK;
   tick[0].time=TimeCurrent();
 
bistreevseh:

Yo también pensé en eso, antes de escribir el último post.

Tienes una incoherencia entre los dos tiempos, hazlo

tick[0].time_msc = 0;
 
También vale la pena recordar que 1653 tiene errores con los caracteres personalizados. Llevamos más de un mes esperando una versión con correcciones. ;-/
 
Stanislav Korotky:
También vale la pena recordar que 1653 tiene errores con los caracteres personalizados. Llevamos más de un mes esperando una versión con correcciones. ;-/
¿Qué errores?
 
Aidas Geguzis:
¿Qué tipo de errores?

Específicamente lo que encontré: la eliminación de barras personalizadas no funcionaba y el registro estaba atascado con gigabytes de mensajes de error inexplicables.

Pero la esencia de mi advertencia es que debes estar preparado para los fallos y esperar a una nueva compilación. Aunque la espera es muy larga.

 

Crecimiento infinito de tkc-file al escribir los mismos datos

void OnStart()
{
  MqlTick Ticks[];

  const string Name = "A1234";
  
  if (CustomSymbolCreate(Name) && CustomSymbolSetInteger(Name, SYMBOL_DIGITS, _Digits))
  {
    if (CopyTicks(_Symbol, Ticks, COPY_TICKS_ALL, 0, 100000) > 0)
      Print(CustomTicksReplace(Name, Ticks[0].time_msc, Ticks[ArraySize(Ticks) - 1].time_msc, Ticks));
  }
  else if (SymbolInfoInteger(Name, SYMBOL_CUSTOM) && (CopyTicksRange(Name, Ticks) > 0))
    Print(CustomTicksReplace(Name, Ticks[0].time_msc, Ticks[ArraySize(Ticks) - 1].time_msc, Ticks));
}

Cada ejecución aumenta el archivo tkc en 0,5 Mb.


CustomTicksDelete borra los ticks, pero el tkc-file permanece igual. Curiosamente, la lectura de ticks de un símbolo personalizado antes y después de un reinicio puede dar resultados diferentes.