Décalage horaire calcul Point Pivot
Forums › ProRealTime forum Français › Support ProBuilder › Décalage horaire calcul Point Pivot
- This topic has 7 replies, 2 voices, and was last updated 4 years ago by netskiss.
-
-
10/01/2020 at 5:34 PM #146119
Bonjour,
Je débute en programmation et je suis en train de créer mon premier indicateur qui est très simple puisque je veux simplement afficher le Point Pivot.
Mon point pivot sur mon graphique de prix (CAC 40) est calculé sur une plage horaire spécifique soit 00:00 à 23:00 UTC + 01:00
Comment faire pour pouvoir faire le calcul de mon pivot dans mon indicateur avec cette même plage car actuellement mon code est :
1234567891011121314IF dayofweek = 1 THENHt = DHigh(2)Bs = DLow(2)C = DClose(2)ENDIFIF dayofweek >=2 and dayofweek < 6 THENHt = DHigh(1)Bs = DLow(1)C = DClose(1)ENDIFPivot = (Ht + Bs + C) / 3return pivotmais il ne donne pas la même valeur : 4811.8 sur mon graphe du cours et 4817.8 pour mon indicateur :
Je vous remercie,
Très bonne soirée10/02/2020 at 8:11 AM #146136En effet les constantes OHLC du daily (DOpen, DHigh, etc.) n’utilisent pas les données des graphiques personnalisés. Voir cet exemple pour un calcul temps réel vis à vis du graphique courant: https://www.prorealcode.com/topic/decalage-dune-heure-dans-le-calcul-des-points-pivot/#post-114244
10/02/2020 at 8:48 AM #146148Merci beaucoup pour votre réponse.
Mais quand j’exécute le code du post mis en exemple :
123456789101112131415161718192021222324252627If IntradayBarIndex=0 thenif prevPeriodBarIndex<>-1 thenperiodHigh = Highest[BarIndex - prevPeriodBarIndex](High)[1]periodLow = Lowest[BarIndex - prevPeriodBarIndex](Low)[1]periodClose = Close[1]periodOpen = Open[prevPeriodBarIndex]If mode = 0 thenperiodPivot = (periodHigh + periodLow + periodClose) / 3Elsif mode = 1 thenperiodPivot = (periodOpen + periodHigh + periodLow + periodClose) / 4Elsif mode = 2 thenperiodPivot = (periodHigh + periodLow + periodClose*2) / 4ElseperiodPivot = (periodOpen*2 + periodHigh + periodLow) / 4EndifperiodR1 = 2*periodPivot - periodLowperiodS1 = 2*periodPivot - periodHighperiodR2 = periodPivot + (periodHigh - periodLow)periodS2 = periodPivot - (periodHigh - periodLow)periodR3 = periodR1 + (periodHigh - periodLow)periodS3 = periodS1 - (periodHigh - periodLow)EndifprevPeriodBarIndex = BarIndexEndifreturn periodPivot,periodR1,periodS1,periodR2,periodS2,periodR3,periodS3J’ai l’erreur suivante : Erreur de syntaxe. Veuillez définir la variable mode
🙁
10/02/2020 at 11:31 AM #14617610/02/2020 at 11:56 AM #14617810/02/2020 at 11:58 AM #146179Voilà le code complet et corrigé :
1234567891011121314151617181920212223242526272829mode = 0 //mode de calcul du point pivot (0,1,2 ou 3)If IntradayBarIndex=0 thenif prevPeriodBarIndex<>-1 thenperiodHigh = Highest[max(1,BarIndex - prevPeriodBarIndex)](High)[1]periodLow = Lowest[max(1,BarIndex - prevPeriodBarIndex)](Low)[1]periodClose = Close[1]periodOpen = Open[prevPeriodBarIndex]If mode = 0 thenperiodPivot = (periodHigh + periodLow + periodClose) / 3Elsif mode = 1 thenperiodPivot = (periodOpen + periodHigh + periodLow + periodClose) / 4Elsif mode = 2 thenperiodPivot = (periodHigh + periodLow + periodClose*2) / 4ElseperiodPivot = (periodOpen*2 + periodHigh + periodLow) / 4EndifperiodR1 = 2*periodPivot - periodLowperiodS1 = 2*periodPivot - periodHighperiodR2 = periodPivot + (periodHigh - periodLow)periodS2 = periodPivot - (periodHigh - periodLow)periodR3 = periodR1 + (periodHigh - periodLow)periodS3 = periodS1 - (periodHigh - periodLow)EndifprevPeriodBarIndex = BarIndexEndifreturn periodPivot,periodR1,periodS1,periodR2,periodS2,periodR3,periodS310/02/2020 at 1:09 PM #14619010/05/2020 at 11:08 AM #146447 -
AuthorPosts
Find exclusive trading pro-tools on