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
for(int i=1;i<rates_total;i++)
{
MTMBuffer[i]=prix[i]-prix[i-1] ;
AbsMTMBuffer[i]=fabs(MTMBuffer[i]) ;
}
Pourquoi utiliser [i-1] pour calculer [i] et commencer i=1 ? pas de [0] ?
MTMBuffer[i]=price[i]-price[i-1];
Bonjour.
En gros, si vous utilisez une des fonctions natives de l'indicateur mql5 qui commence par "i", vous n'avez pas besoin de faire attention à la route. Le copybuffer le fera pour vous.
Par contre si vous passez par un dev spécifique, vous devez faire attention au nombre de barres, surtout pour le premier passage car sinon vous risquez d'avoir un out of range.
regardez le code de ce rsi qui utilise l'Irsi, pas de position pour le cours et tout se passe bien.
Par contre, ce Rsi ne passe pas par la fonction.
Tout est calculé à la main, si l'on peut dire, et il faut bien faire le positionnement pour que tout se passe bien.
Pourquoi, dans oninit
, faut-il renvoyer 0 ?
Pourquoi, dans oninit
, faut-il renvoyer 0 ?
Dans MQL5, la fonction OnInit() est appelée lorsque l'indicateur, le conseiller expert (EA) ou le script est initialisé. Elle doit renvoyer une valeur entière pour signaler le succès ou l'échec du processus d'initialisation.
Lorsque OnInit() renvoie 0, cela signifie que l'initialisation a réussi. Si vous devez signaler que quelque chose s'est mal passé pendant l'initialisation, vous pouvez renvoyer une valeur non nulle, ce qui empêchera l'indicateur, l'EA ou le script de fonctionner correctement.