Bonjour
j’ai adapté la régression d’ordre 2 de Nicolas pour repérer les changements de convexité (en suivant le paramètre b3 de la régression d’ordre 2 qui donne la convexité de la courbe de régression) . j’ai ajouté dans ce screener d’autres paramètres
Quadratic regression – Indicators – ProRealTime (prorealcode.com)
Malheureusement le screener renvoie des actions dont la convexité n’est pas bonne.
Par exemple le screener me renvoie SOITEC (voir graphe en PJ) pour lequel la régression est concave mais qui est renvoyée par le screener.
Si quelqu’un peux m’aider, merci
pardon le code n’est pas passé le voila
JOUR=0
MM7=average[7](Close[JOUR])
MM20=average[20](Close[JOUR])
MM50=average[50](Close[JOUR])
criterebreakMM7=close[JOUR]>MM7 and close[JOUR+1]<MM7[1]
criterecap=(volume[JOUR]*close[JOUR]>100000) and (volume[JOUR]>5000) and (close[JOUR]>0.1)
x1 = barindex[JOUR]
x2=square(x1)
y=MM20
length = 20
S11 = summation[length](x2) - square(summation[length](x1))/length
S12 = summation[length](x1*x2) - (summation[length](x1) * summation[length](x2))/length
S22 = summation[length](square(x2)) - square(summation[length](x2))/length
Sy1 = summation[length](y*x1) - (summation[length](y)*summation[length](x1))/length
Sy2 = summation[length](y*x2) - (summation[length](y)*summation[length](x2))/length
//max1 = average[length](x1)
//max2 = average[length](x2)
//may = average[length](y)
//b2 = ((Sy1 * S22) - (Sy2*S12))/(S22*S11 - square(S12))
b3 = ((Sy2 * S11) - (Sy1 * S12))/(S22 * S11 - square(S12))
//b1 = may - b2*max1 - b3*max2
//qr = b1 + b2*x1 + b3*x2
criteremath=b3>0
critereMM50=MM50>MM50[1]
ACHAT=criterecap and criterebreakMM7 and criteremath and critereMM50
SCREENER [ACHAT]
Est-ce que la valeur ‘ACHAT’ a été testé dans un indicateur ? Histoire de comparer ce que renvoie vraiment cette condition sur le graphique et la comparer avec le screener.
Bonjour et merci du retour. Pour moi la régression quadratique donnait l’équation de la parabole (équation de degré 2) calculée sur les valeurs sur la durée length (ici que j’ai adapté à 20).
Si le coeff b3 est positif la régression est convexe sinon elle est concave.
En bas j’ai mis l’indicateur b3 et on voit qu’il change bien de signe mais ne suit pas les cycles de la courbe en noir sur le graphique qui est la courbe de régression.
J’ai trouvé la cause, il suffit d’ajuster la période de calcul de la régression d’ordre 2. Ici j’ai ajusté à 10 périodes et le résultat est meilleur.
J’ai aussi testé avec une régression d’ordre 3, on voit bien la détection du changement de convexité beaucoup plus précise qu’avec une régression d’ordre 2.