Questions sur l'assistant MQL5 et la bibliothèque standard de classes de trading - page 7

 

Yep, donc les conseillers nouvellement créés par le maître ne fonctionnent pas du tout !?

2011.08.08 19:08:30 Core 1 connexion fermée
2011.08.08 19:08:30 Core 1 fichier journal "D:\Program\MetaTrader 5\Tester\Agent-127.0.0.1-3000\logs\20110808.log" écrit
2011.08.08 19:08:30 Core 1 le testeur s'est arrêté à cause d'une erreur critique OnInit
2011.08.08 19:08:30 Core 1 2011.0101 00:00:00 OnInit : erreur d'initialisation des indicateurs
2011.08.08 19:08:30 Core 1 2011.01 00:00:00 CExpert::InitIndicators : erreur d'initialisation des indicateurs de l'objet argent
2011.08.08 08 19:08:30 Core 1 2011.01.01 00:00:00 CExpertBase::InitIndicators : les paramètres de réglage ne sont pas vérifiés
20112011.08.08 19:08:30 Core 1 2011.01.01 00:00:00 CExpertBase::SetOtherSeries : la modification des séries temporelles est interdite
2011.08.08 19:08:30 Core 1 2011.01.01 00:00:00 CExpertBase::SetPriceSeries : la modification des séries temporelles est interdite
2011.08.08 19:08:302011.08.08 19:08:30 Core 1 EURUSD,H4 : l'historique commence à partir du 2010.01.04 00:00
2011.08.08 19:08:30 Core 1 EURUSD,H4 : cache de l'historique réservé pour une estimation de 2472 barres
2011.08.08 19:08:30 Core 1 EURUSD : contient 367194 enregistrements M1 de données de début du 2010.01.04 00:00 au 2010.12.31 22:59
2011.08.08 19:08:30 Core 1 EURUSD : contient 367194 enregistrements M1 de données de début du 2010.01.04 00:00:00.19:08:30 Core 1 EURUSD,Daily : l'historique commence à partir de 2010.01.04 00:00
2011.08.08 19:08:30 Core 1 EURUSD,Daily : cache de l'historique réservé aux 412 barres estimées
2011.08.08 19:08:30 Core 1 EURUSD : contient 367194 enregistrements M1 de données de début de 2010.01.04 00:00 à 2010.12.31 22:59
2011.08.08 19:08:30 Core 1 Trailing_FixedPips_ProfitLevel=400
2011.08.08 19:08:30 Core 1 Trailing_FixedPips_StopLevel=200
2011.2011.08.08 19:08:30 Core 1 Signal_2_AC_Weight=0.30
2011.08.08 19:08:30 Core 1 Signal_1_AC_Weight=0.30
2011.08.082011.08.08 19:08:30 Core 1 Signal_0_AC_Weight=0.30
2011.08.08 19:08:30 Core 1 Signal_TakeLevel=400
2011.08.08 19:08:30 Core 1 Signal_StopLevel=200
2011.2011.08.08 19:08:30 Core 1 Signal_ThresholdClose=80
2011.08.08 19:08:29 Core 1 Signal_ThresholdOpen=20
2011.2011.08.08 19:08:29 Core 1 Expert_Title=Master03
2011.08.08 19:08:29 Core 1 EURUSD,H1 : test de l'expert Master03.ex5 de 2011.01.01.01 00:00 à 2011.08.01 00:00 avec les entrées :
2011.08.08 19:08:29 Core 1 EURUSD,H1 (MetaQuotes-Demo) : Génération de ticks OHLC 1 min. OnTick exécuté sur la barre de début uniquement
2011.08.08 19:08:29 Core 1 EURUSD,H1 : l'historique commence à partir de 2010.01.04 00:00
2011.08.08 19:08:29 Core 1 EURUSD,H1 : cache de l'historique réservé aux 9891 barres estimées
2011.08.19:08:29 19:08:29 Core 1 EURUSD : contient 367194 enregistrements M1 de données de début de 2010.01.04 00:00 à 2010.12.31 22:59
2011.08.08 19:08:29 Core 1 EURUSD : historique synchronisé de 1993.05.13 à 2011.08.05
2011.08.08 19:08:29 Core 1 EURUSD : charge 27 octets de données d'historique à synchroniser
2011.2011.08.08 19:08:29 Core 1 EURUSD : symbole synchronisé, 3304 octets d'informations de symbole reçus
2011.08.08 19:08:29 Core 1 Intel Core i5 M 430 @ 2.27GHz, 2996 MB
2011.08.08 19:08:29 Core 1 158 Kb de données d'initialisation totales reçues
2011.2011.08.08 19:08:29 Core 1 initialisé avec succès
2011.08.08 19:08:29 Core 1 dépôt initial 10000.00 USD, effet de levier 1:500
2011.08.08 19:08:29 Core 1 fichier expert ajouté : Experts\Master03.ex5. 156794 octets chargés
2011.08.08 19:08:29 Core 1 5304 octets de paramètres d'entrée chargés
2011.08.08 19:08:29 La qualité de test de l'historique analysé est de 100%
2011.08.08 19:08:28 Core 1 synchronisation commune terminée
2011.08.08.19:08:28 19:08:28 Testeur EURUSD,H1 (MetaQuotes-Demo) : test de experts\Master03.ex5 du 2011.01.01 00:00 au 2011.08.01 00:00 à démarrer
2011.08.2011.08.08 19:08:28 Core 1 autorisé (agent build 485)
2011.08.08 19:08:28 Core 1 connecté
2011.08.08 19:08:28 Core 1 se connectant à 127.0.0.1:3000

Dossiers :
Master03.mq5  8 kb
71pon5.PNG  22 kb
 
Erm955:

C'est ça le truc, je l'ai recompilé !

C'est ma faute.
Dossiers :
MoneyNone.mqh  4 kb
 
uncleVic:
C'est ma faute.

Bien !

 

A oncleVic.

J'aimerais revoir la possibilité d'activer la génération automatique de multidevises dans l'assistant. La principale raison de ne pas le faire était la complication du menu de l'assistant. Mais la complication vient de l'ajout d'un seul menu - la liste des paires de devises pour l'opération simultanée, si nous convenons, bien sûr, que toutes les données d'entrée pour ces paires seront communes. Ceci est tout à fait acceptable selon mon expérience avec les outils multidevises. Le mécanisme de mise en œuvre ne sera pas non plus difficile pour vous. Il s'agit essentiellement de la reproduction mécanique d'une portion de code avec de petites inclusions pour chaque symbole.

En d'autres termes, le menu et la mise en œuvre de l'assistant ne sont pas beaucoup plus compliqués, mais nous obtenons un assistant plus polyvalent qui vous permet de mettre en œuvre plusieurs stratégies presque immédiatement et en mode multidevise.

Je joins ma variante de la solution. Cela peut être utile.

Dossiers :
 
Erm955:

A oncleVic.

J'aimerais revoir la possibilité d'activer la génération automatique de multidevises dans l'assistant. La principale raison de ne pas le faire était la complication du menu de l'assistant. Mais la complication vient de l'ajout d'un seul menu - la liste des paires de devises pour l'opération simultanée, si nous convenons, bien sûr, que toutes les données d'entrée pour ces paires seront communes. Ceci est tout à fait acceptable selon mon expérience avec les outils multidevises. Le mécanisme de mise en œuvre ne sera pas non plus difficile pour vous. Il s'agit essentiellement de la reproduction mécanique d'une portion de code avec de petites inclusions pour chaque symbole.

En d'autres termes, le menu et la mise en œuvre de l'assistant ne sont pas beaucoup plus compliqués, mais nous obtenons un assistant plus polyvalent qui vous permet de mettre en œuvre plusieurs stratégies presque immédiatement et en mode multidevise.

Je joins ma variante de la solution. Cela peut être utile.

La direction a dit non.
 
uncleVic:
Consultez le forum anglais ici.

Bonjour modérateur !

Merci pour le conseil. J'essaie de comprendre. Il y a une question sur le code du programme :

Si je comprends bien, les réglages (c'est-à-dire les paramètres d'entrée) de l'indicateur SAR personnalisé sont décrits ici. Les trois premiers (de 0 à 2) sont clairs. D'où vient le quatrième (prix appliqué) ? Il n'est pas présent dans l'indicateur SAR personnalisé lui-même. Veuillez expliquer ce bloc en détail ! C'est peut-être la partie la plus difficile de toute cette refonte (personnalisation) de l'indicateur personnalisé. Merci d'avance !

//--- prepare indicator parameters
   MqlParam CustomSAR_prop[];
   ArrayResize(CustomSAR_prop,4);
//--- indicator file
   CustomSAR_prop[0].type=TYPE_STRING;
   CustomSAR_prop[0].string_value="Examples\\ParabolicSAR";
//--- SAR step
   CustomSAR_prop[1].type=TYPE_DOUBLE;
   CustomSAR_prop[1].double_value=m_step;
//--- SAR maximum
   CustomSAR_prop[2].type=TYPE_DOUBLE;
   CustomSAR_prop[2].double_value=m_maximum;
//--- applied price
   CustomSAR_prop[3].type=TYPE_INT;
   CustomSAR_prop[3].integer_value=PRICE_CLOSE;
//--- initialize object
   if(!m_sar.Create(m_symbol.Name(),m_period,IND_CUSTOM,4,CustomSAR_prop))
     {
      printf(__FUNCTION__+": error initializing object");
      return(false);
     }
   m_sar.NumBuffers(1);
//--- ok
   return(true);
  }
 
ForexMoneyMaker:

Bonjour modérateur !

Merci pour le conseil. J'essaie de comprendre. Il y a une question ici sur le code du programme :

Si je comprends bien, les réglages (c'est-à-dire les paramètres d'entrée) de l'indicateur SAR personnalisé sont décrits ici. Les trois premiers (de 0 à 2) sont clairs. D'où vient le quatrième (prix appliqué) ? Il n'est pas présent dans l'indicateur SAR personnalisé lui-même. Veuillez expliquer ce bloc en détail ! C'est peut-être la partie la plus difficile de toute cette refonte (personnalisation) de l'indicateur personnalisé. Merci d'avance !

Oui, vous n'en avez probablement pas besoin. Je ne l'ai pas écrit.
 

Ensuite, si je peux poser une autre question sur ce fragment de code :

m_sar.NumBuffers(1) ; - à quoi sert cet opérateur (où va-t-il) et pourquoi y a-t-il un 1 entre parenthèses ?

 
ForexMoneyMaker:

Ensuite, si je peux poser une autre question sur ce fragment de code :

m_sar.NumBuffers(1) ; - à quoi sert cet opérateur (où va-t-il) et pourquoi y a-t-il un 1 entre parenthèses ?

Il fixe le nombre de tampons de l'indicateur utilisateur (car leur nombre n'est pas connu à l'avance).
Переход на новые рельсы: пользовательские индикаторы в MQL5
Переход на новые рельсы: пользовательские индикаторы в MQL5
  • 2009.11.23
  • Андрей
  • www.mql5.com
Я не буду перечислять все новые возможности и особенности нового терминала и языка. Их действительно много, и некоторые новинки вполне достойны освещения в отдельной статье. Вы не увидите здесь кода, написанного по принципам объектно-ориентированного программирования — это слишком серьезная тема для того, чтобы просто быть упомянутой в контексте как дополнительная вкусность для кодописателей. В этой статье остановимся подробней на индикаторах, их строении, отображении, видах, а также особенностях их написания по сравнению с MQL4.
 
uncleVic:
Définit le nombre de tampons de l'indicateur personnalisé (car le nombre de tampons n'est pas connu à l'avance).

Merci !

J'ai réussi à mettre cette idée complètement en œuvre ! Et basé sur un indicateur personnalisé d'une complexité suffisante. Je vais penser que je devrais peut-être essayer d'écrire un article correspondant sur ce sujet. Il n'y a rien de vraiment compliqué. :)

Raison: