Comment mémoriser une valeur à un instant “T”
Forums › ProRealTime forum Français › Support ProOrder › Comment mémoriser une valeur à un instant “T”
- This topic has 6 replies, 2 voices, and was last updated 1 year ago by BF.
-
-
03/25/2023 at 5:48 PM #212109
Bonjour à tous,
Je cherche à mémoriser la valeur de l’indicateur Chaikin Oscillator au moment de l’ouverture de la bougie (quelque soit l’unité de temps) dans une variable “x” qui reste fixe jusqu’à la clôture de sa bougie.
Je m’explique: cet indicateur qu’on le paramètre sur “open” ou “close” sa valeur change tout le temps pendant la durée de la bougie.
Or par exemple le RSI si on le configure sur “open”, sa valeur est calculée qu’une seule fois à l’open puis ne change plus jusqu’à la prochaine ouverture. Par contre si on choisi de calculer le RSI sur “close” alors sa valeur varie jusqu’à la clôture de la bougie en cours.
Ce qui n’est pas le cas pour Chaikin qui varie tout le temps quoi qu’on choisisse (open ou close). Du coup:
a) Comment “capturer” la valeur de Chaikin au moment du “open” ?
J’avoue avoir fait beaucoup d’essais de codage infructueux
b) variante : Comment “capturer” la valeur de Chaikin à open + quelque chose (en seconde par exemple) ?
D’avance merci pour votre aide
03/27/2023 at 2:33 PM #212212L’oscillateur de Chaikin est créé en soustrayant une moyenne mobile exponentielle à période x de la ligne de Accumulation Distribution à une moyenne mobile exponentielle à période y de la ligne de Accumulation Distribution:
Dans le code ci-dessous je recrée l’indicateur et j’enregistre dans un tableau la première valeur de l’oscillateur à chaque nouvelle barre:
12345678i = AccumDistr(close)chaikin = average[3,1](i)-average[10,1](i)if not isset($chaikin[barindex]) then$chaikin[barindex]=chaikinendifreturn $chaikin[barindex]1 user thanked author for this post.
03/28/2023 at 2:48 PM #21231003/28/2023 at 4:14 PM #212314On peut faire une différence de TIMESTAMP comme ceci (exemple d’un enregistrement 10 secondes après l’ouverture de la bougie)
12345678i = AccumDistr(close)chaikin = average[3,1](i)-average[10,1](i)if not isset($chaikin[barindex]) and timestamp-opentimestamp>=10 then$chaikin[barindex]=chaikinendifreturn $chaikin[barindex]1 user thanked author for this post.
03/29/2023 at 2:04 PM #212435Merci Nicolas, c’est parfait )) je pense que ton code (ci-dessus) pourra aider beaucoup d’autres personnes sur des problématiques similaires
Dernière variante possible: Est-il possible de mémoriser la valeur de $chaikin mais à une heure précise (exemple à 14h15) quelque soit la durée de la bougie en cours (ex: 1 minute, 15 minutes ou daily) svp ?
Encore merci par avance pour ton efficacité
03/30/2023 at 7:41 AM #212476Pour un horaire précis on teste le TIME:
12345678i = AccumDistr(close)chaikin = average[3,1](i)-average[10,1](i)if not isset($chaikin[barindex]) and TIME=141500 then$chaikin[barindex]=chaikinendifreturn $chaikin[barindex]Il faudra que l’heure précise soit testé à la fermeture de la bougie.
1 user thanked author for this post.
03/30/2023 at 3:05 PM #212549 -
AuthorPosts