Questions des débutants MQL5 MT5 MetaTrader 5 - page 1131
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Artyom, vous n'avez pas remarqué que le type est DRAW_COLOR_HISTOGRAM2 et qu'il a deux tampons de données et un troisième tampon de couleur.
Oui, c'est vrai. Je n'ai pas fait attention.
Oui, c'est vrai.
En général, oui. Le premier tampon est utilisé pour les calculs, DRAW_COLOR_HISTOGRAMME2 est dessiné en utilisant deux coordonnées/buffers + besoin d'un autre pour la couleur.
Pourquoi cette ligne est commentée
Il devrait cependant inclure d'autres couleurs. Ou au moins un, mais la déclaration devrait être.J'utilise soit
#property indicator_color2 GreenC,RedC
ou
PlotIndexSetInteger(1,PLOT_LINE_COLOR,0,GreenC) ;
PlotIndexSetInteger(1,PLOT_LINE_COLOR,1,RedC) ;
C'est une chose, et j'ai supposé qu'ils sont interchangeables comme dans MQL4, c'est-à-dire que l'absence de directive du préprocesseur pour le réglage de la couleur est remplacée par PlotIndexSetInteger(). N'est-ce pas le cas dans MQL5 ?
En général, oui. Le premier tampon est utilisé pour les calculs, DRAW_COLOR_HISTOGRAMME2 est dessiné en utilisant deux coordonnées/buffers + besoin d'un autre pour la couleur.
J'utilise soit
#property indicator_color2 GreenC,RedC
ou
PlotIndexSetInteger(1,PLOT_LINE_COLOR,0,GreenC) ;
PlotIndexSetInteger(1,PLOT_LINE_COLOR,1,RedC) ;
C'est une chose, et j'ai supposé qu'ils sont interchangeables comme dans MQL4, c'est-à-dire que l'absence de directive du préprocesseur pour le réglage de la couleur est remplacée par PlotIndexSetInteger(). N'est-ce pas le cas dans MQL5 ?
Vous donnez des bribes de documentation. Pourquoi ne pas les étudier en profondeur ? La directive est présente dans l'exemple sans tenir compte de PlotIndexSetInteger.
Eh bien, vous donnez des extraits de la documentation. Pourquoi ne pas l'étudier en profondeur ? La directive est présente dans l'exemple sans tenir compte de PlotIndexSetInteger.
Oui, j'ai étudié la documentation et la directive est présente dans l'exemple, mais je suis désolé, je n'ai pas vu de paragraphe disant que la directive doit être présente, donc j'ai l'habitude d'exclure la directive comme dans MQL4.
La documentation indique également que l'on peut utiliser jusqu'à 64 couleurs pour le traçage. Mais je n'ai pas trouvé de moyen d'attribuer le nombre de ces palettes sans énumérer de façon monotone chaque couleur après la directive.
Néanmoins, la question est réglée.
Oui, j'ai étudié la documentation, la directive est présente dans l'exemple, mais je suis désolé, je n'ai pas remarqué un paragraphe indiquant que la directive doit être présente, donc par habitude j'exclue la directive comme dans MQL4.
La documentation indique également que l' on peut utiliser jusqu'à 64 couleurs pour le traçage. Mais je n'ai pas trouvé de moyen de définir le nombre de ces palettes sans une énumération monotone de chaque couleur après la directive.
Néanmoins, j'en ai fini avec cette question.
Et ceci
ne peut pas être modifié dans la boucle ? Je ne le connais pas du tout et ne sais donc pas.
Après tout, un tableau de couleurs peut également être rempli dans la boucle à partir d'un autre tableau. Dans l'exemple, il y a un tableau de couleurs colors = {} ; où les couleurs sont listées. Et ensuite, ce tableau "service" est rempli avec PlotIndexSetInteger(1,PLOT_LINE_COLOR, index_in_array, couleur) ;
Je télécharge des cotations de différents endroits et je vois souvent des écarts de 1 à 2 barres, les données ne sont tout simplement pas là.
Comment les remplir avec une perte minimale d'informations ? Y a-t-il des algorithmes ?
Je suis sûr que Metatrader le fait.
Je télécharge des cotations à partir de différents endroits et je vois souvent des écarts de 1 à 2 barres, les données ne sont tout simplement pas là.
Comment les remplir avec une perte minimale d'informations ? Y a-t-il des algorithmes ?
Je suis sûr que Metatrader le fait.
MetaTrader ne remplit pas les trous - s'il y a une barre, elle sera dessinée, s'il n'y a pas de barre, elle sera sautée.
Voici l'examinateur de test - tout fonctionne correctement :
et le résultat :
Merci pour cette réponse détaillée. Il s'est avéré que l'erreur est observée uniquement lors du test du conseiller expert sur l'historique, si je le connecte à des données réelles- tout est OK.
Si vous exécutez votre expert en débogage sur des données historiques, le calcul est incorrect :
2019.10.08 02:10:14.425 2019.01.01 00:00:00 Volume 1.0, profit -> -50.00
2019.10.08 02:10:16.226 2019.01.01 00:00:00 Volume 0.5, bénéfice -> -50.00
Merci pour cette réponse détaillée. Il s'est avéré que l'erreur est observée uniquement lors du test du conseiller expert sur l'historique, s'il est connecté à des données réelles - tout est OK.
Si vous exécutez votre expert en débogage sur des données historiques, le calcul est incorrect :
2019.10.08 02:10:14.425 2019.01.01 00:00:00 Volume 1.0, profit -> -50.00
2019.10.08 02:10:16.226 2019.01.01 00:00:00 Volume 0.5, bénéfice -> -50.00
Veuillez fournir des informations complètes : code complet, symbole, délai, combien de positions et sur quels symboles sont ouverts - en général, pour pouvoir reproduire la situation.
Bonjour !
Pouvez-vous me dire comment trouver quel expert il s'agit par ID
ID 11032019, je ne sais pas où le trouver ?