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

 
Сергей:

Je vous comprends parfaitement, mais vous avez tort.

Mettez des guillemets et vous obtenez :

EURUSD' - nom attendu MyIndi 3 (MA).mq4 61 14

Droit

Et où sont les citations ici ?

EURUSD

 
Artyom Trishkin:

Où sont les guillemets ?


Les guillemets dans mon code sont doubles, dans l'erreur j'obtiens des guillemets simples, je ne peux rien y faire.

Je n'ai aucun problème avec la sortie des données dans la fenêtre. Le problème vient de la mauvaise sortie. Au lieu de "plat", on dit "Attenthion !" et vice versa. L'algorithme est élémentaire, je ne sais pas trop où je me suis planté...

Je n'ai pas non plus de problème avec la compilation. Postez avec le code #3437.

 

L'indicateur lui-mêmehttps://cloud.mail.ru/public/6Ney/gTq1xMcMd

J'ai soulevé la question des graphiques JPY qui modifient les résultats ici.

Voici un forum pour le trading, les systèmes de trading automatisés et les tests de stratégies.

Si je voulais poster une question sur ce forum, j'y répondrais ici. Toutes les questions des nouveaux venus pour ne pas encombrer le forum. Nulle part sans toi - 6.

Sergey, 2017.08.13 22:06

Les gars, pouvez-vous me dire pourquoi l'indicateur multi-devises basé sur le MA donne des résultats erronés lorsque je l'attache à toutes les paires avec JPY ? Il fonctionne bien sur d'autres paires.

L'indicateur en question est icihttps://cloud.mail.ru/public/CAXu/p3uD3UzBJ . Je n'ai pas obtenu d'aide pour ma question à l'époque, pouvez-vous m'aider maintenant ?
 
Сергей:

J'ai des guillemets doubles dans mon code, mais dans l'erreur j'ai des guillemets simples, et je ne peux rien y faire.

Je n'ai aucun problème avec la sortie des données dans la fenêtre. Le problème réside dans les mauvais résultats. Au lieu de "plat", on dit "Attenthion !" et vice versa. L'algorithme est élémentaire, je ne sais pas trop où je me suis planté...

Je n'ai pas non plus de problème avec la compilation. Postez avec le code #3437.

Pour que les gens ne se doutent de rien, et pour qu'ils puissent comprendre correctement ce dont vous parlez, il existe toutes les options nécessaires dans l'éditeur de message que vous entrez :

vous pouvez joindre le code en tant que fichier (il y a +Ajouter un fichier en bas),

vous pouvez éditer le code comme un code,

par exemple :

//+------------------------------------------------------------------+
//| Выводит в журнал список свечей серии                             |
//+------------------------------------------------------------------+
void CSeriesCollection::PrintListCandlesSeries(const uint num_candle)
  {
   int total=m_series.Total();
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
   for(int i=0; i<total; i++){
      CCandleObject* candle=m_series.At(i);
      if(candle!=NULL){
         datetime time=candle.Time();
         if(time<TimeCurrent()-PeriodSeconds()*num_candle) continue;
         string tm=TimeToString(candle.Time());
         this.PrintCandle(candle);
         }
      }
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
  }
//+------------------------------------------------------------------+

vous pouvez également afficher la ligne du journal en tant que code (vous pouvez la copier depuis le journal du terminal et la coller ici en tant que code (bouton SRC))

2017.10.20 04:04:09.014 Свеча NZDUSD 2017.10.20 00:00, open: 0.70296, high: 0.70360, low: 0.70260, close: 0.70355, vol tick: 87, размер: 100, тело: 59, верх. тень: 5, нижн. тень: 36, тип: Бычья

alors les gens ne se méprendront pas sur ce dont vous parlez.

Et envoyer les gens vers des ressources tierces pour y télécharger je ne sais quoi n'est pas très convivial, n'est-ce pas ?

 
Сергей:
...

Pas de problème de compilation non plus. Postez avec le code #3437.

Vous pouvez cliquer sur le numéro 3437, sélectionner "Copier le lien" et coller le lien dans votre message (également dans l'éditeur de message) - afin que les gens n'aient pas à naviguer là où ils n'en ont pas vraiment besoin ;)

 
Artyom Trishkin:

Et renvoyer les gens vers une ressource tierce pour télécharger ce qu'ils veulent n'est pas très convivial, n'est-ce pas ?


Pardonnez mon analphabétisme.


MyIndi 1 MultiValue sur MultiTimeFrames. En bas, il indique le nombre de points d'achat.

MyIndi 2 Idem que le premier, mais suppression des données inutiles. Données ajoutées en bas - il s'agit de la variation moyenne des prix par minute pour les différentes échéances.

MyIndi 3 est multidevise. Il est basé sur une MA unique avec un décalage. Lorsque la différence dans le MA est atteinte, il affiche "Warning !


Les trois fonctionnent de manière incorrecte lorsqu'ils sont attachés à des graphiques avec JPY (pour une raison quelconque). MyIndi 3 ne fonctionne pas du tout correctement, bien que le code soit très simple.

Et bien sûr, dans tous ces cas, je n'arrive pas à trouver ce qui ne va pas, car je suis nouveau dans ce domaine... Si quelqu'un a le temps de trouver une solution et de m'aider, je lui en serai très reconnaissant.
Dossiers :
MyIndi.mq4  54 kb
MyIndi_2.mq4  38 kb
 
Сергей:

Pardonnez mon analphabétisme.


MyIndi 1 Multi currency on MultiTimeFrames. En bas, il indique le nombre de points d'achat.

MyIndi 2 Idem que le premier, mais suppression des données inutiles. Données ajoutées en bas - il s'agit de la variation moyenne des prix par minute pour les différentes échéances.

MyIndi 3 est multidevise. Il est basé sur une MA unique avec un décalage. Lorsque la différence dans le MA est atteinte, il affiche "Warning !


Les trois fonctionnent de manière incorrecte lorsqu'ils sont attachés à des graphiques avec JPY (pour une raison quelconque). MyIndi 3 ne fonctionne pas du tout correctement, bien que le code soit très simple.

Et bien sûr, je ne peux pas trouver l'erreur dans tous ces documents car je suis un novice en la matière. Si quelqu'un a le temps de comprendre et d'aider, je lui en serai très reconnaissant.

Regardez"Point", le JPY est différent. Utilisez MarketInfo. Par exemple, double EUR_point=MarketInfo("EURUSD",MODE_POINT) ;

 
Nauris Zukas:

Jetez un coup d'œil à "Point", JPY est différent. Utilisez MarketInfo. Par exemple, double EUR_point=MarketInfo("EURUSD",MODE_POINT) ;

Merci, je vais l'essayer ! J'avais l'idée que c'était le problème, mais je ne savais pas COMMENT.


Ça a aidé ! Merci beaucoup, gentil monsieur ! =)

J'ai ajouté au début

      double USD_point=MarketInfo("EURUSD",MODE_POINT);
      double JPY_point=MarketInfo("USDJPY",MODE_POINT); 

et selon la paire que je traite (avec ou sans JPY), j'ai utilisé l'une ou l'autre variable.

 
Nauris Zukas:

Regardez Point, le JPY est différent. Utilisez MarketInfo. Par exemple, double EUR_point=MarketInfo("EURUSD",MODE_POINT) ;

C'est mieux d'y aller directement.

Point
SymbolInfoDouble(Symbol(),SYMBOL_POINT)
 
Vitaly Muzichenko:

C'est mieux tout de suite.


Je pense que la variante proposée par@Nauris Zukas conviendra pour les multidevises.

Et votre variante est meilleure pour la monnaie unique car elle prend les données du graphique auquel elle est attachée.