Bonjour,
j’ai programmé le petit indicateur suivant : il permet de calculer l’écart entre le cours et la kama + deux moyennes correspondant chacune à la moyenne des cours lorsqu’ils sont au dessus de la KAMA200 et à la moyenne des cours lorsqu’ils sont au dessous de la KAMA200.
Je voudrais bâtir ensuite un filtre qui me permet d’entrer en position longue si l’écart est en dessous de la moyenne “haute” ou short si l’écart est au dessus de la moyenne basse.
J’ai programmé ce “filtre” que j’ajoute à mes conditions d’entrée en position mais cela ne donne pas les résultats attendus.
//////////////////////////////// Distance Cours KAMA
DistanceKama4h, EcartUp4h, EcartDn4h, ignored, ignored, ignored, ignored, ignored = CALL “Distance cours / KAMA”(close)
FilterKamaUp4h = (DistanceKama4h < EcartUp4h)
FilterKamaDn4h = (DistanceKama4h > EcartDn4h)
quelqu’un peut-il m’aider SVP?
Merci d’avance.
// KAMA200
Period1 = 200
FastPeriod1 = 2
SlowPeriod1 = 30
Fastest1 = 2 / (FastPeriod1 + 1)
Slowest1 = 2 / (SlowPeriod1 + 1)
if barindex < Period1+1 then
Kama200=close
else
Num1 = abs(close-close[Period1])
Den1 = summation[Period1](abs(close-close[1]))
ER1 = Num1 / Den1
Alpha1 = SQUARE(ER1 *(Fastest1 - Slowest1 )+ Slowest1)
KAMA200 = (Alpha1 * Close) + ((1 -Alpha1)* Kama200[1])
endif
Period = 50
xClose = (Open+High+Low+Close)/4
Distance = xclose- kama200
if distance > 0 then
distanceUp = distance
endif
if distance < 0 then
distanceDn = distance
endif
EcartUp = exponentialaverage[period](distanceup)
EcartDn = exponentialaverage[period](distanceDn)
if ecartUp > -ecartDn then
spreadUp = ecartUp
elsif ecartUp < -ecartDn then
spreadUp = -ecartDn
endif
if ecartDn < -ecartUp then
spreadDn = ecartDn
elsif ecartDn > -ecartUp then
spreadDn = -ecartUp
endif
period = 50
dev = 2.0
data = Distance
MA = average[period](data)
BolUp = average[50](ecartUp+STD[period]*dev)
BolDn = average[50](ecartUp-STD[period]*dev)
return Distance as "distance", spreadUp as "EcartUp", spreadDn as "EcartDn", BolUp as "Boll Sup", BolDn as "Boll Inf", MA as "Boll Milieu"
Bonsoir,
je mets la bonne formule.
//////////////////////////////// Distance Cours KAMA
DistanceKama4h, EcartUp4h, EcartDn4h, ignored, ignored, ignored = CALL “Distance cours / KAMA”(close)
FilterKamaUp4h = (DistanceKama4h < EcartUp4h)
FilterKamaDn4h = (DistanceKama4h > EcartDn4h)
Bonjour,
merci de ne pas tenir compte de ma demande. J’ai résolu le problème.