Filtre par unité de temps dans un unique code
Forums › ProRealTime forum Français › Support ProBuilder › Filtre par unité de temps dans un unique code
- This topic has 6 replies, 2 voices, and was last updated 1 year ago by karaxa.
-
-
10/06/2023 at 3:57 PM #222103
Bonjour,
j’ai créé un code de 1000 lignes que j’utilise indifférement en UT JOUR, HEBDO ET MOIS (actions).
Au sein de ce code, j’aurais besoin d’insérer des conditions (filtres) selon l’unité de temps sélectionnée (en haut du grahique), afin que seules les opérations correspondant à l’UT que j’ai sélectionnée soient exécutées, et donc écarter les opérations que je souhaite effectuer sur des UT différentes.
Exemple : je sélectionne l’unité HEBDO en haut du graphique => dans mon code 1000 lignes ou certaine opérations sont pour l’UT JOUR, d’autres HEBDO, et d’autres MOIS , je vais donc vouloir exécuter uniquement les formules qui concent l’UT HEBDO, et écarter toutes les formules qui concernent les UT JOUR et MOIS.
Pour celà, existe t’il une fonction qui permettrait d’écrire quelque chose comme :
- If UT HEBDO and (condition) then..
Merci (beaucoup) par avance !
PS : j’ai bien pensé à créer 3 espaces de travail différents (UT J, H, M) avec 3 codes adaptés à chaque UT, mais j’essaie de trouver plus simple.
10/06/2023 at 4:08 PM #222104Bonjour,
l’instruction gettimeframe:
https://www.prorealcode.com/documentation/gettimeframe/
1 user thanked author for this post.
10/06/2023 at 5:05 PM #222108Merci Beaucoup JC_Bywan ! je n’avais pas réussi à le faire fonctionner..
Je viens d’essayer celà :
UTjour = GetTimeframe=86400 // (24H*60min*60sec) secondes
UTHebdo = GetTimeframe=604800 // (7J*24H*60min*60sec) secondes
UTMens = GetTimeframe>16934400 //(28J*7J*24H*60min*60sec) secondespuis
IF UTjour and condition then
Et ça à l’air de fonctionner, correct ?
10/06/2023 at 5:24 PM #222109Pour ut jour et hebdo oui, pour mensuel il me semble que c’est 30 jours quel que soit le mois, donc 30j * 24h * 60mn * 60s = 2 592 000
(donc pas 28j, ni oublier d’enlever le 7j avant de multiplier par 28j)
1 user thanked author for this post.
10/06/2023 at 7:14 PM #222113Très juste, désolé pour l’erreur de précipitation et merci pour les 30J mensuels !
Le filtarge par UT fonctionne TB dans mon code grâce à “GetTimeframe”,
mais moins bien sur 2 codes indépendants et complémentaires pour 2 points pivots (+sup+res) : 1 code pour UT Jour et 1 code pour UT Hebdo.
Le fait d’avoir inséré “GetTimeframe” dans ces 2 codes points pivot ne m’affiche effectivement pas les points pivots Hebdo quand je suis en Jour et inversement, parfait,
mais il me crée un trait à zéro (prix) qui correspond au point pivot qui n’est pas affiché : en HEBDO, j’ai bien mes pts pivots+sup+res HEBDO (parfait), mais j’ai un trait à zéro (prix) qui correspond aux point pivot de l’UT JOUR. Je le vois car si je déselectionne le pivot de l’UT JOUR, ce trait disparait. Et inversement quand je sélectionne l’UT jour, un trait à zéro correspondant aux pts pivots Hebdo “non affichés” apparait..
Embettant car le centrage auto du graphe se fait du coup en prenant en compte ce trait à zéro, donc tout est décalé vers le haut…et je voudrais que tout soit automatique, et toujours éviter de créer 2 espaces de travail (J+H).
Structure des codes pivots :
UTjour = GetTimeframe=86400
If UTjour then
(code des pivots)
Endif
Return MonthlyPivot coloured (……) as “….”
Je me demande si le “return” ne renvoit pas la valeur zéro ce qui tracerait donc la ligne à “zéro” (prix)…
Un moyen de contourner ce PB ? Un grand merci, je sèche.
10/06/2023 at 9:10 PM #222117- clic droit sur les valeurs du prix dans la marge droite de la fenêtre du prix
- dans le menu déroulant qui apparait, sélectionner la dernière option “configurer cette zone”
- on arrive dans les propriétés de l’échelle (c’est un des chemins pour y parvenir, il y en a d’autres), dans la partie droite de la fenêtre sous “redimensionnement vertical” cocher la case “utiliser uniquement le prix”
1 user thanked author for this post.
10/06/2023 at 9:57 PM #222118 -
AuthorPosts
Find exclusive trading pro-tools on