Caratteristiche del linguaggio mql5, sottigliezze e tecniche - pagina 66

 
fxsaber:

Riduzioni.

Bene, ho resettato l'array tramite FileWriteArray, se FileSave riduce la dimensione, gli sviluppatori dovrebbero probabilmente correggere anche il codice della funzione FileWriteArray

 
Konstantin:

Stavo resettando l'array tramite FileWriteArray. Se FileSave riduce la dimensione, gli sviluppatori dovrebbero probabilmente correggere anche il codice della funzione FileWriteArray.

Cercalo nell'Aiuto.

 

Forum sul trading, sistemi di trading automatico e test di strategie di trading

Discussione su "Il sistema di contabilità delle posizioni di copertura aggiunto a MetaTrader 5

fxsaber, 2018.01.17 18:45

Cronologicamente

  1. Ordine pendente attivato parzialmente - posizione aperta con Position_ID = Order_Ticket.
  2. Ha chiuso la posizione manualmente.
  3. Il resto dell'ordine è stato eseguito - è stata aperta una posizione con Position_ID != Order_Ticket.

Il valore dell'ORDER_POSITION_ID risultante, e come funzionerà la HistorySelectByPosition è ancora una domanda.

Ovviamente, l'unica (su due) offerta di apertura nel suo ordine DEAL_ORDER avrà DEAL_POSITION_ID != ORDER_POSITION_ID.

Quindi, non dovremmo fare affidamento su HistorySelectByPosition anche in Hedges.

 

Dopo aver impostato l'EventTimer, la prima chiamata a OnTimer non avviene immediatamente, ma dopo l'intervallo di tempo impostato.

 
fxsaber:

Dopo aver impostato l'EventTimer, la prima chiamata a OnTimer non avviene immediatamente, ma dopo l'intervallo di tempo impostato.

Osservazione interessante e utile. Grazie. Ma è logico...

 
Un confronto sfumato di numeri interi usando un esempio di vita reale
void OnStart()
{
  const ulong StartTime = GetMicrosecondCount();
  
  Sleep(1000);
  
//  if (GetMicrosecondCount() > StartTime + 1000000) // Неправильно
  if (GetMicrosecondCount() - StartTime > 1000000) // Правильно
    Print("Прошло больше секунды.");
  else
    Print("Прошло меньше секунды."); 
}
 
fxsaber:
Una sfumatura del confronto tra interi usando un esempio reale
1e6 è un letterale di tipo double.
 
Combinatore:
1e6 è un letterale di tipo double.

Ne sono consapevole. L'esempio non è influenzato da questo. Pensatelo come un milione intero.

 
fxsaber:

Ne sono consapevole. L'esempio non ne è influenzato.

Colpisce direttamente
 
Combinatore:
Colpisce direttamente

Sono d'accordo, ma l'esempio non riguarda questo. Nel codice, sostituito da un milione.

Motivazione: