Erreurs, bugs, questions - page 571

 

Hypercompression des fractales de la TF inférieureHyperdécompression de fractales à partir de TF plus anciennes

Le premier exemple est l'hyper-compression des fractales des TF les plus récentes, qui se superposent à une ou deux mesures de la TF actuelle. Il est clair qu'elle est visuellement illisible et doit être filtrée. La deuxième variante est tout à fait décente (il ne reste que les fractales de la TF actuelle et plus).

Voici à quoi ressemblent les fractales pour les cinq TF sur M1.

 

Sur la base des résultats de l'optimisation, nous avons :

Nous choisissons la première ligne avec une passe de 1870 et obtenons :

ou

Comment comprendre cela ?

 

Quelque chose est cassé dans la version 540 - à en juger par les réactions(http://forum.fxtde.com/index.php?showtopic=2747&view=findpost&p=34925), une simple recompilation n'a pas aidé.

J'ai réussi à le faire fonctionner chez certains courtiers moi-même, un courtier

2011.11.15 17:35:54 HistoryBase 'AUDUSD' 1 barres invalides supprimées
2011.11.15 17:35:52 HistoryBase 'AUDUSD' 1 barres invalides supprimées
2011.11.15 17:35:50 HistoryBase 'AUDUSD' 1 barres invalides supprimées
2011.11.15 17:35:48 HistoryBase 'AUDUSD' 1 barres invalides supprimées

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

+++

Je l'ai fait fonctionner sur l'édition 32 bits... Au début, rien ne sortait, puis :

2011.11.15 18:24:38 HWAFM_instrument (EURUSD,M1) Violation d'accès en lecture à 0x449C2D9C dans 'E:\MetaTrader5\MT532\MQL5\Experts\HWAFM\HWAFM_instrument.ex5'.


aucun problème apparent en 64 bits

 
Erm955:

Comment faut-il comprendre cela ?

Le testeur travaille avec des erreurs.
 
MoneyJinn:
Le testeur travaille avec des erreurs.

Il faut le corriger !

 
Erm955:

Sur la base des résultats de l'optimisation, nous avons :

Nous choisissons la première ligne avec une passe de 1870 et obtenons :

ou

Comment comprendre cela ?

C'est sur la dernière version ?

Indiquez également le numéro de build de l'agent de test.

En général, vous devez contacter le Service Desk pour de telles questions.

 
Erm955:

Sur la base des résultats de l'optimisation, nous avons :

Nous choisissons la première ligne avec une passe de 1870 et obtenons :

ou

Comment comprendre cela ?

Écrivez à Servicedesk. Joignez l'expert, les paramètres d'optimisation, les paramètres d'entrée, le serveur où l'optimisation a été effectuée + les agents utilisés.

S'il reste des journaux, veuillez les inclure également.

 

   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();
     }


Y a-t-il une erreur dans ce code ? Expert Advisor est multi-devises. Les prix sont corrects pour la paire de devises sur laquelle je l'ai utilisé, mais pour les autres paires, quelque chose d'étrange se produit avec les prix.

Ils sont là ou pas. Si le testeur charge les données normalement, on trouve dans les journaux les lignes suivantes

16.11.2011 10:09:07 Core 1 GBPUSD,H1 : l'historique commence à partir du 02.01.2009 10:00
16.11.2011 10:09:07 Core 1 GBPUSD,H1 : cache historique réservé pour les 12497 barres estimées
2011.11.16 10:09:07 Core 1 GBPUSD : contient 355335 enregistrements M1 de données de début de 2009.01.02 10:00 à 2009.12.31 18:59
2011.11.16 10:09:07 Core 1 GBPUSD : symbole tick base trouvé
2011.11.16 10:09:07 Core 1 2010.01 00:00:02 GBPUSD symbole sélectionné dans MarketWatch.
16.11.2011 10:09:07 Core 1 GBPUSD : historique synchronisé du 02.01.2009 au 31.12.2010
16.11.2011 10:09:07 Core 1 GBPUSD : chargement de 27 octets de données historiques pour synchroniser
2011.11.11.16 10:09:07 Core 1 GBPUSD : symbole synchronisé, 3304 octets d'informations de symbole reçus
2011.11.16 10:09:06 Core 1 GBPUSD : symbole à synchroniser

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

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

16.11.2011 10:09:08 Core 1 GBPCHF,H1 : l'historique commence à partir du 02.01.2009 06:00
16.11.2011 10:09:08 Core 1 GBPCHF,H1 : cache historique réservé pour les 12497 barres estimées
2011.11.16 10:09:08 Core 1 GBPCHF : contient 365428 enregistrements M1 de données de début de 2009.01.02 06:01 à 2009.12.31 18:59
2011.11.16 10:09:07 Core 1 GBPCHF : symbole tick base trouvé
2011.11.16 10:09:07 Core 1 2010.01 00:00:03 GBPCHF symbole sélectionné dans MarketWatch.
16.11.2011 10:09:07 Core 1 GBPCHF : historique synchronisé du 02.01.2009 au 31.12.2010
16.11.2011 10:09:07 Core 1 GBPCHF : chargement de 27 octets de données historiques pour synchroniser
2011.11.11.16 10:09:07 Core 1 GBPCHF : symbole synchronisé, 3304 octets d'info de symbole reçus
2011.11.16 10:09:07 Core 1 GBPCHF : symbole à synchroniser
.................

16.11.2011 10:09:09 Core 1 USDJPY,H1 : l'historique commence à partir du 02.01.2009 10:00
16.11.2011 10:09:09 Core 1 USDJPY,H1 : cache historique réservé pour les 12497 barres estimées
2011.11.16 10:09:09 USDJPY Core 1 : contient 352656 enregistrements M1 de données de début de 2009.01.02 10:00 à 2009.12.31 18:59
2011.11.16 10:09:09 Core 1 USDJPY : symbole tick base trouvé
2011.11.16 10:09:09 Core 1 2010.01.01 00:00:05 USDJPY symbole sélectionné dans MarketWatch.
2011.11.16 10:09:09:09 Core 1 USDJPY : historique synchronisé du 2009.01.02 au 2010.12.31
2011.11.16 10:09:09 Core 1 USDJPY : charge 27 octets de données historiques pour synchroniser
2011.11.11.16 10:09:09 Core 1 USDJPY : symbole synchronisé, 3304 octets d'info de symbole reçus
2011.11.16 10:09:09 Core 1 USDJPY : symbole à synchroniser

Mais parfois, les rapports des testeurs

2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDCHF

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

2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.11.16 10:09:52 Core 1 pas de prix pour le symbole USDJPY
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.11.16 10:09:52 Core 1 pas de prix pour le symbole USDJPY
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY
2011.11.16 10:09:52 Core 1 aucun prix pour le symbole USDJPY

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

2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF
2011.11.16 10:09:51 Core 1 aucun prix pour le symbole USDCHF

Et si le premier test passe normalement et que les données sont chargées, la deuxième fois, il n'y a pas de prix. L'historique des symboles a été chargé, le conseiller expert a été exécuté plusieurs fois. Que dois-je faire ou placer des contrôles pour m'assurer que les données sont chargées pour les symboles autres que celui testé dans l'expert ?

J'ai remarqué que la deuxième initialisation échoue si je termine le test après un démarrage réussi. Si vous fermez le terminal et l'ouvrez à nouveau, la première exécution sera normale. Si je n'interromps pas le test et que je le relance, j'obtiens à nouveau l'erreur "no prices for symbol" (pas de prix pour le symbole).

 

Konstantin83:

Et si la première fois, le test passe normalement et que les données sont chargées, la deuxième fois, les prix ne le sont pas. L'historique est chargé par des symboles, Expert Advisor a été exécuté plusieurs fois. Que dois-je faire ? Quels contrôles dois-je mettre en place pour le chargement de données pour des symboles autres que celui testé dans le Conseiller Expert ?

J'ai remarqué que si après un essai réussi, interrompu, la deuxième initialisation échoue. et la troisième et quatrième. Si vous fermez le terminal et le rouvrez, la première exécution se passe bien. Si je n'interromps pas le test et que je le relance, j'obtiens à nouveau l'erreur "aucune valeur pour le symbole".

Où et comment est généré MarketWatch?

D'après ce que j'ai compris, ce bloc essaie d'ajouter un symbole à la liste et de vérifier le résultat.

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

Mais si le conseiller expert est multiligne, cela signifie que plusieurs paires de devises doivent être ajoutées (l'exemple ci-dessus ne le montre pas).