Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 331

 

Pourquoi, lorsque je crée un objet arrow.Create(0, "ArrowCheck",0,TimeCurrent(),1.14565) de labibliothèque standard de MQL5, l'objet est créé et immédiatement supprimé.

 

Bonne journée à tous. J'ai un indicateur ClusterDelta_VolumeProfile_3.5 Les données qu'il reçoit sont écrites dans un tableau et non dans un tampon. Si je comprends bien, ce sont des choses différentes.

Alors, comment puis-je tirer ces données du tableau vers mon EA et les utiliser ?

 
voron_026:

Bonne journée à tous. J'ai un indicateur ClusterDelta_VolumeProfile_3.5 Les données qu'il reçoit sont écrites dans un tableau et non dans un tampon. Si je comprends bien, ce sont des choses différentes.

Alors, comment puis-je tirer ces données du tableau vers mon EA et les utiliser ?

Si vous avez la source, alors créez un nouveau tampon et écrivez-les dans ce tampon dans l'indicateur, et dans l'EA prenez les données de celui-ci.

 
Artyom Trishkin:

Si vous avez le code source, créez un nouveau tampon et écrivez-les dans ce tampon dans l'indicateur et prenez les données de celui-ci dans l'EA.


Malheureusement, il n'y a pas de code source. Et l'auteur, bien sûr, ne la donnera pas. Il s'agit donc d'une tâche difficile. J'ai le code source du même indicateur, mais il est sous la forme d'un Expert Advisor. Nous allons essayer de le développer en tant que conseiller expert, puis de l'utiliser.

Que pouvez-vous dire sur le code ?

 

La fonction OnTimer() de MQL4 ne fonctionne pas dans le testeur ? J'ai lu dans la documentation que la fonction "OnTimer() dans le testeur" devrait fonctionner dans MQL5.

 
Nauris Zukas:

La fonction OnTimer() de MQL4 ne fonctionne pas dans le testeur ? J'ai lu dans la documentation, que la fonction "OnTimer() dans le testeur" devrait fonctionner dans MQL5.

Dans le testeur, vous pouvez faire ceci

OnTick() 
 {
  if(IsTesting()) OnTimer();
  // ...
 } 
 
Vitaly Muzichenko:

Dans le testeur, vous pouvez faire ceci

Merci !

 
Victor Nikolaev:


Un petit script



Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Toutes les questions des débutants sur MQL4, aide et discussion sur les algorithmes et les codes

Victor Nikolaev, 2017.05.09 13:10


Un petit script

//+------------------------------------------------------------------+
//|                                                       Decode.mq4 |
//|                                            Copyright 2017, Vinin |
//|                                             http://vinin.ucoz.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, Vinin"
#property link      "http://vinin.ucoz.ru"
#property version   "1.00"
#property strict
#property script_show_inputs
//--- input parameters
input int N=162;  //0..162
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   for (int n=0;n<N;n++)
   {
      int tmp=n;
      int a=MathMod(tmp,3);
      tmp=(tmp-a)/3;
      int b=MathMod(tmp,3);
      tmp=(tmp-b)/3;
      int c=MathMod(tmp,2);
      tmp=(tmp-c)/2;
      int d=tmp;
   
      Print("N=",n,"; A=", 2+2*a, "; B=", b+1,"; C=",c,"; D=", 16+4*d);
   }
  }
//+------------------------------------------------------------------+


Je suis de retour sur ce sujet - je n'arrive pas à comprendre l'algorithme, comment faire cela avec n'importe quel nombre.

S'il vous plaît, aidez-moi ! !!

J'ai des variables et leur plage de variation - je les obtiens par calcul :

Vektor -1 или 1

Situation от 1 до 5

N_Etalon от 1 и больше 1


J'ai aussi des variables pour les actions directes :

   bool SellPrIMA //запрет на покупку

   bool BuyPrIMA//запрет на продажу

La combinaison des variables ci-dessus, devrait les affecter de sorte que les deux variables prendront des valeurs différentes - je pense qu'elles peuvent simplement être incluses dans le compteur, mais il y a peut-être un moyen de ne pas les inclure afin que le dépassement soit plus petit.

L'objectif est de créer un compteur qui passera en revue toutes les combinaisons pendant l'optimisation, puis identifiera les mauvaises options, dressera une liste de ces combinaisons, ce qui devrait aboutir à un filtre.

 
Aleksey Vyazmikin:


Pour en revenir à ce sujet, je n'arrive pas à trouver l'algorithme pour faire cela avec des chiffres.

Aidez-moi, s'il vous plaît !

J'ai des variables et leur plage de variation - je les obtiens par calcul :

Vektor -1 или 1

Situation от 1 до 5

N_Etalon от 1 и больше 1


J'ai aussi des variables pour les actions directes :

   bool SellPrIMA //запрет на покупку

   bool BuyPrIMA//запрет на продажу

La combinaison des variables ci-dessus, devrait les affecter de sorte que les deux variables prendront des valeurs différentes - je pense qu'elles peuvent simplement être incluses dans le compteur, mais il y a peut-être un moyen de ne pas les inclure afin que le dépassement soit plus petit.

L'objectif est de créer un compteur qui passe en revue toutes les variantes de combinaisons pendant l'optimisation, puis d'identifier les mauvaises variantes, de dresser une liste de ces combinaisons, ce qui devrait aboutir à un filtre.


Utilisez la fonction onTester() et enregistrez les résultats dans un fichier. Et ensuite analyser

 
Victor Nikolaev:

Utilisez la fonction onTester() et écrivez les résultats dans un fichier. Et ensuite l'analyser


Oui, c'est clair :) Je n'arrive pas à comprendre le compteur ! Comment l'organiser pour faire ce genre d'énumération ?

Raison: