Errori, bug, domande - pagina 2320

 
fxsaber:

Mi hai frainteso.


Intendevo la formula citata di C++.

Non ho capito assolutamente nulla - perché dovrei capire quella citazione? Hai fatto una supposizione - l'ho controllata e pubblicata. Dato che molte persone credono solo a quello che c'è scritto sul recinto. Nessuno controllerà ciò che è scritto, dovete farlo voi stessi prima che si vada troppo lontano.

 
Rashid Umarov:

Non ho capito assolutamente nulla - perché dovrei preoccuparmi di quella citazione? Hai fatto una supposizione - l'ho controllata e l'ho postata. Come molte persone credono solo a ciò che è scritto sul recinto. Nessuno controllerà ciò che è scritto, dovete farlo voi stessi prima di andare troppo lontano.

Ho capito il codice C++ e ne ho scritto un esempio. Se non ci fosse un divieto, sarebbe interessante sentire la risposta all'esempio di divergenza di Sharpe dato per i TC identici.


Riassunto:

  • La formula in MT dà lo stesso risultato per i TC identici.
  • La formula del codice C++ mostra risultati diversi per TC identici.
 

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

Bug, bug, domande

fxsaber, 2018.11.06 18:16

ZS E nella formula usata in MT, naturalmente, uno non verrebbe sottratto. Allora l'esempio proposto, non importa quanti intervalli di 144 siano osservati, Sharpe sarebbe sempre lo stesso.

A causa di questa unità, la differenza sarebbe chiaramente visibile con un piccolo numero di scambi. Per esempio, 5 e 5*10.

 
fxsaber:

Ho capito il codice C++ e ne ho scritto un esempio. Se non ci fosse un divieto, sarebbe interessante sentire la risposta all'esempio di divergenza di Sharpe dato per i TC identici.


Riassunto:

  • La formula in MT dà lo stesso risultato per i TC identici.
  • La formula del codice C++ mostra risultati diversi per TC identici.

Ho incontrato questo problema un anno fa, non so se ormai è stato risolto.

Il ciclo FOR in MT5 non funziona correttamente se uso l'operatore di pre-incremento per una variabile.

Il punto è che in C++ in molti casi il pre-incremento in tali cicli dà un piccolo guadagno di prestazioni, ma in MT5 ha causato solo un calcolo errato.

 
Ilham Djumatov:

Ho incontrato questo problema un anno fa, non so se ormai è stato risolto.

In MT5 il ciclo FOR non funzionava correttamente se l'operatore di pre-incremento di una variabile era usato in esso.

Il punto è che in C++ in molti casi il pre-incremento in tali cicli dà un piccolo guadagno di prestazioni, ma in MT5 ha causato solo un calcolo errato.

Tali dichiarazioni devono essere supportate da dettagli tecnici.

Mostra un esempio per illustrare il problema

 

Probabilmente una domanda per il ramo dei principianti. C'è un altro modo per scoprire l'ora attuale nel Tester?

input int inTimer = 1;
const bool Init = EventSetTimer(inTimer);

void OnTimer()
{
  static datetime TimeTester = TimeCurrent();
  TimeTester += inTimer;
    
  Print(__FUNCTION__ + ": " + (string)TimeCurrent());
  Print(__FUNCTION__ + ": " + (string)TimeTester); // Время Тестера
}

void OnTick()
{
  static bool FirstRun = true;
  
  if (FirstRun)
  {
    DebugBreak();
    
    FirstRun = false;
  }
}


Risultato

2018.09.03 01:35:45   OnTimer: 2018.09.03 01:35:45
2018.09.03 01:35:46   OnTimer: 2018.09.01 00:00:00
2018.09.03 01:35:46   OnTimer: 2018.09.03 01:35:46
2018.09.03 01:35:47   OnTimer: 2018.09.01 00:00:00
2018.09.03 01:35:47   OnTimer: 2018.09.03 01:35:47
2018.09.03 01:35:48   OnTimer: 2018.09.01 00:00:00
2018.09.03 01:35:48   OnTimer: 2018.09.03 01:35:48
2018.09.03 01:35:49   OnTimer: 2018.09.01 00:00:00
2018.09.03 01:35:49   OnTimer: 2018.09.03 01:35:49
 

Perché la data di scadenza di un ordine in sospeso non può essere impostata al secondo più vicino? Risparmio di risorse informatiche?

Per cancellare un ordine pendente preciso al secondo, dobbiamo creare un intero sistema con un timer. Non c'è modo di risolvere questo problema nel tester senza il timer (vedi sopra).

 
Che tipo di errore è questo?
2018.11.07 22:15:35.840 Core 1  2018.11.02 16:34:10   failed unknown 184467.4407360955 M FILTER_EURUSD.rann_RannForex at 0.00000 tp: 0.00000 [Invalid request]
 
fxsaber:

Probabilmente una domanda per il ramo dei principianti. C'è un altro modo per scoprire l'ora corrente nel Tester?

TimeTradeServer().

 
Avevo diverse centinaia di temi nei miei preferiti, tutti cancellati... A mia insaputa.