![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Pourriez-vous s'il vous plaît poster un code avec un contexte car mon code continue à retourner un angle de 0 ? Par exemple, trouver l'angle de la SMA 50 sur 10 périodes.
Pourriez-vous s'il vous plaît poster un code avec un contexte car mon code continue de retourner un angle de 0 ? Par exemple, trouver l'angle de la SMA 50 sur 10 périodes.
En fait, c'est parce que c'est plein de conneries que j'ai essayé de le faire fonctionner avec... plein de déclarations d'impression, etc. C'est un hack total pour essayer de tester le calcul pour une utilisation possible dans la visualisation plus tard. Quoi qu'il en soit, le voici :
PAS besoin de tant de cdes !
Dans votre cade :
MathArctan(MathTan(((prix1-prix2)/(WindowPriceMax()- WindowPriceMin()))/((SignalPeriod-0. 0)/WindowBarsPerChart())))*180/3.14 ;
Quelle est la signification de "SignalPeriod" et pourquoi ?
Vous savez, généralement, un angle est la relation entre une ligne et un axe X, cette ligne est définie par deux points.
Dans votre calcul, le prix 2 et le prix 1 sont deux valeurs à la même coordonnée X,
Dans ma formule, j'utilise (delt Y) / (delt X) pour calculer l'angle :
MathArctan(MathTan(
((prix1-prix2)/(WindowPriceMax()- WindowPriceMin())) // est delt Y
/
((shift2-shift1)/WindowBarsPerChart()) // est le delt X
))
*180/3.14
quelles seraient les valeurs de shift1 et shift2 ? ou d'où sont-elles calculées ? je sais que c'est mon problème mais je ne comprends pas comment l'appliquer avec la moyenne mobile.
une ligne est définie par deux points.
(price1,shift1), (price2,shift2) sont les coordonnées de ces deux points. shift est identique à x dans votre code.
---------------------------------------------------
En d'autres termes, si vous avez besoin de calculer l'angle de deux lignes, vous avez besoin de 3 ou 4 points (deux lignes ont besoin de 3 ou 4 points pour être définies), et vous avez besoin de plus de connaissances sur les fonctions trigonométriques.
D'après votre code, je suppose que vous voulez calculer l'angle de deux lignes (comme deux lignes de MACD), et non l'angle d'une ligne et de l'axe des X. Donc vous avez besoin de 3 ou 4 points.
Donc vous avez besoin de 3 ou 4 points, vous devriez revoir plus de connaissances sur les fonctions trigonométriques, peut-être la loi des cosinus.
--------------------------
Ou, premièrement, calculer chaque angle d'une des lignes et des axes X, deuxièmement, leur différence est l'angle de ces deux lignes.
Merci pour votre réponse, j'essaie seulement de calculer l'angle d'une seule ligne, c'est-à-dire une moyenne mobile et l'axe des x. J'ai suffisamment de connaissances en trigonométrie pour effectuer les calculs, mais pas avec ce qui est disponible sur MT.
très simplement, je voudrais calculer l'angle actuel de la MA à shift 0 avec le second point de référence étant la MA à SignalPeriod ou la MA à ? barres plus tôt. l'autre point de référence serait l'intersection de shift 0 y et de SignalPeriod x.
price2 = iMA(Symbol(),0,MAPeriod,0, MODE_SMA,PRICE_CLOSE,SignalPeriod) ;
La coordonnée X (SignalPeriod) doit être le dernier paramètre de la fonction iMA(....), et non le 4ème paramètre. (4ème paramètre : ma_shift a une autre signification, ne l'utilisez que si vous savez ce que c'est ! !!!)
Maintenant Ok, essayez encore !