Características del lenguaje mql5, sutilezas y técnicas - página 66

 
fxsaber:

Reducciones.

Bueno, yo restablezco el array a través de FileWriteArray, si FileSave reduce el tamaño, los desarrolladores probablemente deberían corregir también el código de la función FileWriteArray

 
Konstantin:

Si FileSave reduce el tamaño, los desarrolladores deberían corregir también el código de la función FileWriteArray.

Búscalo en la Ayuda.

 

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

Discusión sobre "El sistema de contabilidad de posiciones de cobertura se añade a MetaTrader 5"

fxsaber, 2018.01.17 18:45

Cronológicamente

  1. Orden pendiente activada parcialmente - posición abierta con Position_ID = Order_Ticket.
  2. Cerrar la posición manualmente.
  3. El resto de la orden se ha ejecutado: se ha abierto una posición con Position_ID != Order_Ticket.

El valor del ORDER_POSITION_ID resultante, y cómo funcionará el HistorySelectByPosition es todavía una incógnita.

Obviamente, la única (de dos) operación de apertura en su orden DEAL_ORDER tendrá DEAL_POSITION_ID != ORDER_POSITION_ID.

Por lo tanto, no debemos confiar en HistorySelectByPosition ni siquiera en Hedges.

 

Después de establecer el EventTimer, la primera llamada a OnTimer no ocurre inmediatamente, sino después del intervalo de tiempo establecido.

 
fxsaber:

Después de establecer el EventTimer, la primera llamada a OnTimer no ocurre inmediatamente, sino después del intervalo de tiempo establecido.

Una observación interesante y útil. Gracias. Pero es lógico...

 
Una comparación matizada de números enteros con un ejemplo de la vida real
void OnStart()
{
  const ulong StartTime = GetMicrosecondCount();
  
  Sleep(1000);
  
//  if (GetMicrosecondCount() > StartTime + 1000000) // Неправильно
  if (GetMicrosecondCount() - StartTime > 1000000) // Правильно
    Print("Прошло больше секунды.");
  else
    Print("Прошло меньше секунды."); 
}
 
fxsaber:
Un matiz de la comparación de enteros con un ejemplo real
1e6 es un literal de tipo double.
 
Combinador:
1e6 es un literal de tipo double.

Soy consciente de ello. El ejemplo no se ve afectado por esto. Piensa en ello como un millón entero.

 
fxsaber:

Soy consciente de ello. El ejemplo no se ve afectado por ello.

Afecta directamente a
 
Combinador:
Afecta directamente

Estoy de acuerdo, pero el ejemplo no es para eso. En el código, sustituido por un millón.