Errori, bug, domande - pagina 571

 

Ipercompressione dei frattali del TF inferioreIperdecompressione di frattali da vecchi TF

Il primo esempio è l'ipercompressione dei frattali dei TF più giovani, che si arrampicano l'uno sull'altro entro una o due barre del TF corrente. È chiaro che questo è visivamente illeggibile e dovrebbe essere filtrato. La seconda variante è abbastanza decente (rimangono solo i frattali dell'attuale TF e superiori).

Questo è l'aspetto dei frattali per tutte e cinque le TF su M1

 

In base ai risultati dell'ottimizzazione abbiamo:

Scegliamo la prima linea con un passaggio di 1870 e otteniamo:

o

Come facciamo a capire questo?

 

Qualcosa è rotto nella build 540 - a giudicare dal feedback(http://forum.fxtde.com/index.php?showtopic=2747&view=findpost&p=34925) la semplice ricompilazione non ha aiutato.

Io stesso l'ho fatto funzionare in alcuni broker, un broker

2011.11.15 17:35:54 HistoryBase 'AUDUSD' 1 barre non valide rimosse
2011.11.15 17:35:52 HistoryBase 'AUDUSD' 1 barre non valide rimosse
2011.11.15 17:35:50 HistoryBase 'AUDUSD' 1 barre non valide rimosse
2011.11.15 17:35:48 HistoryBase 'AUDUSD' 1 barre non valide rimosse

Поисково-аналитический комплекс HWAFM
  • 2011.11.15
  • Tesla
  • forum.fxtde.com
Независимый открытый финансовый форум аналитиков и трейдеров валютных и фондовых рынков - FOREX (ФОРЕКС), MICEX (ММВБ), NASDAQ, NYSE
 

+++

L'ho eseguito sull'edizione a 32 bit... All'inizio non è uscito niente, poi:

2011.11.15 18:24:38 HWAFM_instrument (EURUSD,M1) Violazione di accesso letto a 0x449C2D9C in 'E:\MetaTrader5\MT532\MQL5\Experts\HWAFM\HWAFM_instrument.ex5'


nessun problema apparente su 64-bit

 
Erm955:

Come si deve intendere questo?

Il tester funziona con errori.
 
MoneyJinn:
Il tester funziona con errori.

Ha bisogno di essere riparato!

 
Erm955:

Sulla base dei risultati dell'ottimizzazione abbiamo:

Scegliamo la prima linea con un passaggio di 1870 e otteniamo:

o

Come facciamo a capire questo?

È sull'ultima build?

Fornisci anche il numero di build dell'agente tester.

In generale, si dovrebbe contattare il Service Desk per tali domande.

 
Erm955:

Sulla base dei risultati dell'ottimizzazione abbiamo:

Scegliamo la prima linea con un passaggio di 1870 e otteniamo:

o

Come facciamo a capire questo?

Scrivete a servicedesk. Allega l'esperto, le impostazioni di ottimizzazione, i parametri di input, il server dove è stata fatta l'ottimizzazione + quali agenti sono stati utilizzati.

Se sono rimasti dei registri, si prega di includere anche quelli.

 

   if (SymbolSelect(Exp_Symbol, true))
    {
     Print("Символ " + Exp_Symbol + " выбран в окне MarketWatch.");
    }
   else
    {
     Print("Произошла ошибка при выборе символа " + Exp_Symbol);
     GetMyLastError(GetLastError());
    }

  

    CSymbolInfo       Exp_Symbol_Info;

   if (!Exp_Symbol_Info.Name(Exp_Symbol))
    {
     Print("Не удалось инициализировать стандартный торговый класс CSymbolInfo на паре " + Exp_Symbol);
     return(false);
    }

   Exp_Symbol_Info.Refresh();
   Exp_Symbol_Info.RefreshRates();
   Sleep(1000);
   if(!Exp_Symbol_Info.IsSynchronized())
     {
      Exp_Symbol_Info.Refresh();
      Exp_Symbol_Info.RefreshRates();
     }
   ResetLastError();
   //-- запрос данных холостой (неважно с ошибкой или нет, запрос осуществлен = > должна начать подкачиваться история)
   MqlRates rt[10];   // Массив значений цен для X последних баров
   if(CopyRates(Exp_Symbol,Exp_Period_Work,0,10,rt)!=10) // Копируем в массив значения цен 2-х последних баров
     {
      PrintLog("CopyRates "+Exp_Symbol+" не загружена история");
      GetMyLastError(GetLastError());
      Sleep(1000);
      Exp_Symbol_Info.Refresh();
      Exp_Symbol_Info.RefreshRates();
     }


C'è un errore in questo codice? Expert Advisor è multi-valuta. I prezzi vanno bene per la coppia di valute su cui l'ho eseguito, ma per altre coppie succede qualcosa di strano con i prezzi.

O ci sono o non ci sono. Se il tester carica i dati normalmente, allora nei log ci sono le righe

2011.11.16 10:09:07 Core 1 GBPUSD,H1: la storia inizia dal 2009.01.02 10:00
2011.11.16 10:09:07 Core 1 GBPUSD,H1: cache della storia riservata alle 12497 barre stimate
2011.11.16 10:09:07 Core 1 GBPUSD: contiene 355335 record M1 di dati iniziali dal 2009.01.02 10:00 to 2009.12.31 18:59
2011.11.16 10:09:07 Core 1 GBPUSD: simbolo tick base trovato
2011.11.16 10:09:07 Core 1 2010.01 00:00:02 simbolo GBPUSD selezionato in MarketWatch.
2011.11.16 10:09:07 Core 1 GBPUSD: cronologia sincronizzata dal 2009.01.02 al 2010.12.31
2011.11.16 10:09:07 Core 1 GBPUSD: caricare 27 byte di dati storici per sincronizzare
2011.11.11.16 10:09:07 Core 1 GBPUSD: simbolo sincronizzato, 3304 byte di informazioni sul simbolo ricevuti
2011.11.16 10:09:06 Core 1 GBPUSD: simbolo da sincronizzare

2011.11.16 10:09:06 Core 1 2010.01.01 00:00:02 Inizializzare EA... GBPUSD

................

2011.11.16 10:09:08 Core 1 GBPCHF,H1: history starts from 2009.01.02 06:00
2011.11.16 10:09:08 Core 1 GBPCHF,H1: history cache reserved for estimated 12497 bars
2011.11.16 10:09:08 Core 1 GBPCHF: contiene 365428 record M1 di dati iniziali dal 2009.01.02 06:01 a 2009.12.31 18:59
2011.11.16 10:09:07 Core 1 GBPCHF: simbolo tick base trovato
2011.11.16 10:09:07 Core 1 2010.01 00:00:03 GBPCHF è selezionato in MarketWatch.
2011.11.16 10:09:07 Core 1 GBPCHF: storia sincronizzata dal 2009.01.02 al 2010.12.31
2011.11.16 10:09:07 Core 1 GBPCHF: caricare 27 byte di dati storici per sincronizzare
2011.11.11.16 10:09:07 Core 1 GBPCHF: simbolo sincronizzato, 3304 byte di informazioni sul simbolo ricevuti
2011.11.16 10:09:07 Core 1 GBPCHF: simbolo da sincronizzare
.................

2011.11.16 10:09:09 Core 1 USDJPY,H1: la storia inizia dal 2009.01.02 10:00
2011.11.16 10:09:09 Core 1 USDJPY,H1: cache della storia riservata per 12497 barre stimate
2011.11.16 10:09:09 USDJPY Core 1: contiene 352656 record M1 di dati iniziali dal 2009.01.02 10:00 a 2009.12.31 18:59
2011.11.16 10:09:09 Core 1 USDJPY: trovato simbolo tick base
2011.11.16 10:09:09 Core 1 2010.01.01 00:00:05 simbolo USDJPY selezionato in MarketWatch.
2011.11.16 10:09:09:09 Core 1 USDJPY: cronologia sincronizzata dal 2009.01.02 al 2010.12.31
2011.11.16 10:09:09 Core 1 USDJPY: caricare 27 byte di dati cronologici per sincronizzare
2011.11.11.16 10:09:09 Core 1 USDJPY: simbolo sincronizzato, 3304 byte di informazioni sul simbolo ricevuti
2011.11.16 10:09:09 Core 1 USDJPY: simbolo da sincronizzare

Ma a volte i rapporti dei tester

2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDCHF

................

2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY
2011.11.16 10:09:52 Core 1 nessun prezzo per il simbolo USDJPY

.....................

2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF
2011.11.16 10:09:51 Core 1 nessun prezzo per il simbolo USDCHF

E se il primo test passa normalmente e i dati vengono caricati, la seconda volta niente prezzi. La cronologia dei simboli è stata caricata, l'Expert Advisor è stato eseguito più volte. Cosa bisogna fare per controllare che i dati siano caricati per i simboli diversi da quello testato nell'esperto?

Ho notato che la seconda inizializzazione fallisce se chiudo il test dopo un avvio riuscito. Se chiudete il terminale e lo riaprite, la prima esecuzione sarà normale. Se non interrompo il test e lo eseguo di nuovo, ottengo l'errore "nessun prezzo per il simbolo".

 

Konstantin83:

E se la prima volta il test passa normalmente e i dati vengono caricati, la seconda volta i prezzi non lo sono. La cronologia è caricata dai simboli, Expert Advisor è stato eseguito più volte. Che cosa devo fare? Quali controlli devo mettere per il caricamento di dati per simboli diversi da quello testato nell'Expert Advisor?

Ho notato che se dopo un test di successo, interrotto, la seconda inizializzazione fallisce. e la terza e la quarta. Se si chiude il terminale e lo si riapre, la prima esecuzione va bene. Se non interrompo il test e lo riavvio, ottengo di nuovo l'errore "nessun valore per il simbolo".

Dove e come viene generato MarketWatch?

Per quanto ho capito, questo blocco cerca di aggiungere un simbolo alla lista e controllare il risultato.

   if (SymbolSelect(Exp_Symbol, true))
    {
     Print("Символ " + Exp_Symbol + " выбран в окне MarketWatch.");
    }
   else
    {
     Print("Произошла ошибка при выборе символа " + Exp_Symbol);
     GetMyLastError(GetLastError());
    }

Ma se l'Expert Advisor è un multilinea, significa che devono essere aggiunte diverse coppie di valute (l'esempio precedente non lo mostra).