Discussion de l'article "Création d’un Expert Advisor, qui trade sur un certain nombre d’instruments" - page 2
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
Tout fonctionne bien sur MQL4 sans timer.
Eh bien, cela n'existe pas dans MQL4, de même que les structures et les classes n'y existent pas, proposez-vous de les abandonner ici ?
IMHO
Utiliser ou non la bibliothèque standard est une question de goût pour chacun (au pire, on ne peut utiliser que son propre code), mais renoncer à tous les avantages simplement parce qu'ils ne sont pas disponibles dans MT4 n'est pas très raisonnable......
Je n'ai pas écrit cela du tout.
J'ai écrit que MQL5 a des problèmes et produit des données erronées dans certaines combinaisons d'instruments.
Par exemple : si l'EURJPY ou l'EURGBP est superposé au graphique de l'EURUSD, tout va bien.
Mais si vous superposez EURCAD, les données sur le graphique sont erronées, alors que dans MQL4, il n'y avait pas d'erreur de ce type.
Je n'ai pas du tout écrit à ce sujet.
J'ai écrit que MQL5 a des problèmes et produit des données erronées avec certaines combinaisons d'instruments.
Par exemple : si l'EURJPY ou l'EURGBP est superposé au graphique de l'EURUSD, tout est normal.
Mais si on superpose EURCAD, les données sur le graphique avec une erreur, alors que dans MQL4 ce n'était pas le cas, il n'y a pas d'erreur.
Je n'ai pas du tout écrit à ce sujet.
J'ai écrit que MQL5 a des problèmes et produit des données erronées avec certaines combinaisons d'instruments.
Par exemple : si l'EURJPY ou l'EURGBP est superposé au graphique de l'EURUSD, tout est normal.
Mais si vous superposez EURCAD, les données sur le graphique avec une erreur, alors que dans MQL4 ce n'était pas le cas, il n'y a pas d'erreur.
Veuillez me donner un exemple avec une erreur.
//--------- Option avec MQL4 ---------
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Aqua
extern string InstrumentName = "EURCAD" ;
double Buffer[] ;
SetIndexBuffer(0,Buffer) ; // Assigne le tableau au tampon
SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);// Style de ligne
while(i >= 0){//-- Moving from right to left (i.e. from the highest to the 0 bar which is still being formed) --
Buffer[i] = (iHigh(InstrumentName,0,i) + iClose(InstrumentName,0,i) + iLow(InstrumentName,0,i)) / 3 ;
i--;//-- next Bar
}/next (while)
//----------- Maintenant presque la même variante dans MQL5 --------
#property indicator_separate_window // L'indicateur. est dessiné dans une fenêtre séparée
#property indicator_buffers 1
#property indicator_plots 1
#property indicator_type1 DRAW_LINE
#property indicator_color1 Aqua
input string InstrumentName = "EURCAD" ;
double Buffer[] ;
int handle1 ;
copied=CopyClose(InstrumentName,0,0,CountBars,Buffer) ;
//--Nous lançons maintenant sur EURUSD.
//--Il importe peu sur quel instrument nous plaçons l'indicateur, le graphique ne doit pas changer.
Veuillez insérer le code correctement, cela facilite la compréhension.
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Aqua
extern string InstrumentName = "EURCAD" ;
double Buffer[] ;
int init()
{
SetIndexBuffer(0,Buffer) ; // Assigne le tableau au tampon
SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);// Style de ligne
}
int start()
{
while(i >= 0){
Buffer[i] = (iHigh(InstrumentName,0,i) + iClose(InstrumentName,0,i) + iLow(InstrumentName,0,i)) / 3 ;
i-- ;//-- Barre suivante
}//next (while)
}
//----------- Maintenant presque la même variante dans MQL5 --------
#property indicator_separate_window // L'indicateur. est dessiné dans une fenêtre séparée
#property indicator_buffers 1
#property indicator_plots 1
#property indicator_type1 DRAW_LINE
#property indicator_color1 Aqua
input string InstrumentName = "EURCAD" ;
double Buffer[] ;
int OnInit()
{
{ IndicatorSetString(INDICATOR_SHORTNAME,InstrumentName) ;
SetIndexBuffer(0,Buffer,INDICATOR_DATA) ;
}
int OnCalculate(....)
{
copied=CopyClose(InstrumentName,0,0,0,CountBars,Buffer) ;
}
//--Nous le lançons maintenant sur EURUSD.
//--Il importe peu sur quel instrument nous plaçons l'indicateur, le graphique ne doit pas changer.
Veuillez créer un exemple reproductible. En d'autres termes, vous avez besoin d'un code prêt à l'emploi que vous pouvez compiler, placer sur un graphique et obtenir des résultats.
Sans cela, peu de gens comprendront de quoi nous parlons.Je vais aider ceux qui sont privés de conscience.
Idéalement, il ne devrait pas, mais je l'ai fait grincer avec des algorithmes il n'est apparu que sur 1 TF sur les autres a montré catégoriquement le vide .....
même après une heure de test.....
et des tentatives de téléchargement de l'historique