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
Les coefficients de ligne a et b sont calculés dans ces lignes.
A = (SumXY - N3*SumY)*N4 ;
B = (N1*SumY - SumXY)*N2 ;
Pour illustration, je joins la version MovingLR_2 qui dessine juste la régression linéaire actuelle. En particulier, parce qu'il y a eu une erreur dans le précédent, lors du calcul de N4 :)
MovingLR_2 donne une régression linéaire pure et il est assez facile de s'en assurer. Dans at_LR0, il y a une imprécision du passage de la période en heures à la période en barres. Si vous changez Close dans at_LR0 en (High+Low)/2 et prenez une période de 1, et changez la période dans MovingLR_2 en 61 au lieu de 60 et l'affichez sur le graphique d'une minute, les résultats seront exactement les mêmes.
Alors MovingLR_2 est un bon algorithme, il suffit de modifier la disposition du code et c'est bon !
Dans at_LR0, le décalage d'une barre est effectué pour ajuster la régression linéaire de la boîte à outils standard MT4. Peut-être que ça n'avait pas besoin d'être fait...
2 ziganes:
Pour la régression linéaire, la formule est : LRMA = 3*LWMA - 2*MA
Pour une régression quadratique :
Régression quadratique MA = 3 * SMA + QWMA * ( 10 - 15/( N + 2 ) ) - LWMA * ( 12 - 15/( N + 2 ) )
Ici, N est la période des moyennes,
QWMA( i ; N ) = 6/( N*(N+1)(2*N+1) ) * sum( Close[i] * (N-i)^2 ; i = 0...N-1 ) (la machine à pondérer les carrés).
pour le cubique : oops, je n'arrive toujours pas à le sortir de Trading Solutions, ma formule est trop sauvage là-bas.
2 Candidats : vous êtes vraiment paranoïaque, je n'y aurais pas pensé...
J'ai des formules différentes.
où est
un petit ajustement de la disposition du code, et tout est OK !
2 Yurixx:
Il semble que la différence des valeurs RMS pour les petits N n'est pas due à la correction RMS, mais au choix du départ et de la direction X. Parce que lorsque vous les changez, mon ancienne formule commence également à donner des résultats différents, et elle est précise sans aucune réserve.
2 Yurixx:
Il semble que la différence des valeurs RMS pour les petits N n'est pas due à la correction RMS, mais au choix du départ et de la direction X. Parce que lorsque vous les changez, mon ancienne formule commence à donner des résultats différents aussi, alors qu'elle est précise sans aucune réserve.
Vous avez certainement raison de dire que le choix correct du système de coordonnées est une technique puissante pour simplifier les calculs et l'apparence des formules finales. Je ne l'ai pas utilisé pour la régression linéaire, tout s'est avéré assez agréable. Mais pour la régression parabolique, compte tenu d'un certain choix d'origine, les expressions finales s'avèrent deux fois plus faciles, tandis que l'efficacité de l'algorithme augmente d'un ordre de grandeur. En outre, le problème des limitations de la précision des calculs est complètement éliminé.
Je ne peux cependant pas être d'accord avec vous sur un point. Les valeurs RMS, ainsi que les valeurs de régression réelles, ne peuvent pas dépendre du choix de l'origine de l'axe des X. Ce n'est peut-être pas la formule elle-même qui commence à donner des résultats différents, mais la question même de la précision des calculs. Étant donné que seuls 15 chiffres significatifs de double sont stockés (sans parler de int), une erreur s'accumule assez rapidement dans le processus de calcul. Cela est particulièrement vrai lorsque X et Y ont des ordres de grandeur différents. Par exemple, X est un numéro de barre de l'ordre de centaines de milliers, Y est un prix de l'ordre de 1 et la variation du prix est de l'ordre de 0,0001.
PS
Je voulais comprendre ce qui rend cette formule "savoureuse". Évidemment, c'est beaucoup plus simple - en une seule ligne. Bien que je ne comprenne pas pourquoi vous divisez par (N-2) et non par (N-1). Je dois tout de même noter qu'en visant une accélération maximale, il faudrait utiliser une formule différente. Si vous fixez le choix de l'origine X par rapport à la valeur du prix actuel, il est plus avantageux d'utiliser des formules sans Somme(X*Y). Ainsi, vous n'aurez pas à calculer la convolution sur chaque barre. Mais mettre à jour Sum(Y*Y) ou Sum(X*X) sur chaque barre est un opérateur.
Si vous connaissez la valeur actuelle des coefficients A et B dans une régression linéaire, pouvez-vous calculer la RMS
voici les formules
coefficient A
coefficient B
Si vous connaissez la valeur actuelle des coefficients A et B dans une régression linéaire, pouvez-vous calculer la RMS
P.S. Je viens de me rappeler que QWMA est quadratique par X et que j'aurai besoin d'un terme quadratique par Y. Donc la QWMA n'aidera pas.
Si vous connaissez la valeur actuelle des coefficients A et B dans une régression linéaire, pouvez-vous calculer la RMS
Le QWMA ne sera probablement pas suffisant non plus, car il n'élève pas Y au carré et ne détermine donc pas la variance de Y.
Cependant, je ne peux pas être d'accord avec vous sur un point. Les valeurs RMS, ainsi que les valeurs de régression elles-mêmes, ne peuvent pas dépendre du choix du point de départ de l'axe des X. Ce n'est peut-être pas la formule elle-même qui commence à produire des résultats différents, mais ce problème même de précision des calculs.
Bien que je ne comprenne pas pourquoi vous divisez par (N-2) et non par (N-1).
P.S. Pour Sum(Y*Y) - j'ai également trois opérations, pour Sum(X*X) - aucune.
Régression quadratique MA = 3 * SMA + QWMA * ( 10 - 15/( N + 2 ) ) - LWMA * ( 12 - 15/( N + 2 ) )
QWMA( i ; N ) = 6/( N*(N+1)(2*N+1) ) * sum( Close[i] * (N-i)^2 ; i = 0...N-1 ) (l'assistant des poids carrés).
J'ai d'autres formules.
où