Bonjour,
j’ai repris dans la bibliothèque de PRT un code concernant les points pivots horaire
et je voulais pouvoir tracer à l’aide d’un segment le point pivot sur le durée de l’heure
et je n’y arrive pas.
Merci pour une aide sur ce sujet
Cordialement
Pivot = 1
IF Openhour <> openhour [ 1 ] THEN
myLastHigh = myHigh
myLastLow = myLow
myLastClose = Close [ 1 ]
myHigh = High
myLow = Low
myopen = open
ELSE
myHigh = Max(myHigh, High)
myLow = Min(myLow, Low)
ENDIF
// Formule en fonction de la valeur du paramètre Pivot
IF Pivot = 2 THEN
// Point pivot : PP= (Hveille + Bveille + Cveille + Ojour) / 4
PP = (myLastHigh + myLastLow + myLastClose + myopen) / 4
ELSIF Pivot = 3 THEN
// Point pivot : PP= (Hveille + Bveille + Ojour) / 3
PP = (myLastHigh + myLastLow + myopen) / 3
ELSE
// Point pivot : PP= (Hveille + Bveille + Cveille) / 3
PP = (myLastHigh + myLastLow + myLastClose) / 3
ENDIF
Res1 = 2 * PP - myLastLow
Res2 = PP + myLastHigh - myLastLow
Res3 = myLastHigh + 2 * (PP - myLastLow)
Sup1 = 2 * PP - myLastHigh
Sup2 = PP - myLastHigh + myLastLow
Sup3 = myLastLow - 2 * (myLastHigh - PP)
Return pp
Comme c'est maintenant le cas, tracez une ligne différente toutes les heures, n'est-ce pas ?
Peut-être?
//DEFPARAM DrawOnLastBarOnly = true
Pivot = 1
IF Openhour <> openhour [ 1 ] THEN
MyPP = PP
StartBar = BarIndex
myLastHigh = myHigh
myLastLow = myLow
myLastClose = Close [ 1 ]
myHigh = High
myLow = Low
myopen = open
ELSE
myHigh = Max(myHigh, High)
myLow = Min(myLow, Low)
ENDIF
// Formule en fonction de la valeur du paramètre Pivot
IF Pivot = 2 THEN
// Point pivot : PP= (Hveille + Bveille + Cveille + Ojour) / 4
PP = (myLastHigh + myLastLow + myLastClose + myopen) / 4
ELSIF Pivot = 3 THEN
// Point pivot : PP= (Hveille + Bveille + Ojour) / 3
PP = (myLastHigh + myLastLow + myopen) / 3
ELSE
// Point pivot : PP= (Hveille + Bveille + Cveille) / 3
PP = (myLastHigh + myLastLow + myLastClose) / 3
ENDIF
Res1 = 2 * PP - myLastLow
Res2 = PP + myLastHigh - myLastLow
Res3 = myLastHigh + 2 * (PP - myLastLow)
Sup1 = 2 * PP - myLastHigh
Sup2 = PP - myLastHigh + myLastLow
Sup3 = myLastLow - 2 * (myLastHigh - PP)
DrawSegment(StartBar,MyPP,BarIndex,MyPP) coloured(0,255,0,255) style(Line, 1)
Return //pp
Merci Roberto pour cette réponse rapide
ça marche, toutefois j’aurais voulu que le tracé se fasse sur la distance totale de l’heure
c’est à dire pour l’exemple
à 10heures on a le début du tracé, et jusqu’à 10h58 immédiatement
Le code tel qu’il est trace au fur et mesure de l’avancement des chandeliers, par exemple quand je suis en m2
et je voudrais le tracé complet de 10heures (début) jusqu’à 10h58 (heure de fin)
Merci
Cordialement
Voilà:
//DEFPARAM DrawOnLastBarOnly = true
Pivot = 1
IF Openhour <> openhour [ 1 ] THEN
//
MyEnd = (Opendate * 1000000) + (OpenHour * 10000) + (5900) //YYYYMMDDHHMMSS
MyPP = PP
StartBar = BarIndex
//
myLastHigh = myHigh
myLastLow = myLow
myLastClose = Close [ 1 ]
myHigh = High
myLow = Low
myopen = open
ELSE
myHigh = Max(myHigh, High)
myLow = Min(myLow, Low)
ENDIF
// Formule en fonction de la valeur du paramètre Pivot
IF Pivot = 2 THEN
// Point pivot : PP= (Hveille + Bveille + Cveille + Ojour) / 4
PP = (myLastHigh + myLastLow + myLastClose + myopen) / 4
ELSIF Pivot = 3 THEN
// Point pivot : PP= (Hveille + Bveille + Ojour) / 3
PP = (myLastHigh + myLastLow + myopen) / 3
ELSE
// Point pivot : PP= (Hveille + Bveille + Cveille) / 3
PP = (myLastHigh + myLastLow + myLastClose) / 3
ENDIF
Res1 = 2 * PP - myLastLow
Res2 = PP + myLastHigh - myLastLow
Res3 = myLastHigh + 2 * (PP - myLastLow)
Sup1 = 2 * PP - myLastHigh
Sup2 = PP - myLastHigh + myLastLow
Sup3 = myLastLow - 2 * (myLastHigh - PP)
DrawSegment(StartBar,MyPP,DateToBarIndex(MyEnd),MyPP) coloured(0,255,0,255) style(Line, 1)
Return //pp
Merci Roberto
Je vais regarder ça
Bon après-midi
Cordialement
Bonjour,
il subsiste un petit problème dans le code précédent publié.
Le traçage se fait sur l’heure concernée, exemple de 13h00 à 13h58
Seule problème, le niveau de la ligne n’est pas remonté au bon endroit
le PP Horaire est actuellement de 15 640.90 et la ligne reste au niveau
du PP horaire précédent.
Quel peut être le problème dans cette présentation
Merci pour la réponse
Cordialement
Parce qu'il ne le met à jour qu'au changement d'heure. Pour le maintenir à jour, remplacez simplement MyPP par PP , dans tous les cas.
Ah, ok
Merci pour la réponse Roberto
Bon après-midi
Cordialement