Overblog Suivre ce blog
Editer l'article Administration Créer mon blog
10 février 2008 7 10 /02 /février /2008 17:14

Tracer en automatique la droite de régression linéaire avec Prorealtime.

 

Voici un programme pour Prorealtime qui trace la droite de régression linéaire sur les dernières bougies.  Une vue du CAC, avec la période=60.

 

hk18.gif

 

Le programme retourne une courbe qui représente la droite de régression linéaire pour les 60 dernières bougies.  Pour les barres précédentes, on a la moyenne 20 simple (à modifier si vous le souhaitez), je superpose donc une seconde moyenne 20 simple pour masquer la courbe avant les 60 bougies utilisées pour la droite (vous suivez ?).  Il faut rentrer K comme variable pour la longueur de la droite.

 

Le code :

 

once j=0
det=DPO[k*2](close)
if det=det[1] and det[1]=det[2] and det[2]<>det[3] then
    flag=1
endif
n=(k*2)-4
p=(n/2)-1
d1=DPO[n](close)
moy=close-d1
co=(moy-moy[1]+(close[p])/n)*n
if flag=1 and flag[1]=0 then
    somx=0
    somy=0
    somxx=0
    somxy=0
    for i=1 to k
        somx=somx+i
    next
    for i=0 to k-1
        somy=somy+co[i]
    next
    for i=1 to k
        somxx=somxx+(i*i)
    next
    for i=0 to k-1
        somxy=somxy+(co[i]*(k-i))
    next
    a=(k*somxy-somx*somy)/(k*somxx-somx*somx)
    b=(somy-a*somx)/k
endif
if flag=0 then
    reg=undefined
else
    j=j+1
    reg=a*j+b
endif
return reg

edit le 04/03/08 : suite à l'amélioration apportée par un lecteur, le code est modifié (en rose)

Partager cet article

Repost 0

commentaires