Utiliser une variable dynamique comme période pour une SMA

Forums ProRealTime forum Français Support ProBuilder Utiliser une variable dynamique comme période pour une SMA

Viewing 4 posts - 1 through 4 (of 4 total)
  • #241428

    Bonjour à tous,

    Je travaille actuellement sur un projet d’indicateur dans ProRealTime, et je rencontre une limite technique que je souhaiterais soumettre à vos expertises pour confirmer ou infirmer mes observations. Voici un résumé de la problématique, des tentatives effectuées, et de mes conclusions.

    ### **Ce Que Je Cherche à Faire**

    Je souhaite utiliser une période dynamique pour calculer une moyenne mobile simple (SMA) dans ProRealTime. L’idée est que la période de la SMA soit basée sur une variable calculée dynamiquement, appelée BestX. Cette variable est obtenue à partir d’une logique précise qui détecte les niveaux pertinents sur le graphique.

    Exemple simplifié :
    prorealtime

     


    Cependant, cette approche renvoie une erreur car ProRealTime exige que la période soit un entier positif **constant** et non une variable dynamique.

    ### **Tentatives et Expériences**

    Voici ce que j’ai testé pour contourner cette limitation :

    1. **Arrondi et Quantification de la Période Dynamique** :
    – J’ai essayé d’arrondir BestX à l’entier le plus proche et de le limiter à des plages fixes (5, 10, 20, 50).
    – Exemple :
    prorealtime

     


    **Résultat** : Cela fonctionne mais ne renvoie que la valeur de la SMA calculée (le prix moyen) et non la période dynamique elle-même.

    2. **Stockage dans un Array** :
    – J’ai pré-calculé plusieurs SMA fixes (SMA5, SMA10, etc.) et tenté de choisir dynamiquement celle qui correspond à BestX via un array.
    – Exemple :
    prorealtime

     


    **Résultat** : ProRealTime demande toujours un entier constant pour l’indice de l’array, ce qui bloque l’utilisation de variables dynamiques comme PeriodDynamic.

    3. **Conditions Fixes** :
    – Plutôt que d’utiliser des arrays, j’ai créé des conditions explicites pour chaque SMA fixe.
    – Exemple :
    prorealtime

     


    **Résultat** : Cela fonctionne, mais encore une fois, la valeur retournée est celle de la SMA (le prix) et non la période dynamique utilisée.

    ### **Conclusions**

    1. **Blocage Principal :**
    – ProRealTime exige une période constante (entier fixe) dans les fonctions comme Average[x](Close).
    – Même les valeurs arrondies ou quantifiées ne sont pas acceptées si elles proviennent de variables dynamiques comme BestX.

    2. **Ce Qui Fonctionne :**
    – Les SMA fixes et leur sélection dynamique par conditions sont exploitables.
    – Cependant, elles ne permettent pas de refléter directement une logique totalement dynamique comme celle visée initialement.

    3. **Limitation Confirmée (?) :**
    – Il semble impossible d’utiliser une variable dynamique comme période pour une SMA dans PRT.
    – Avant d’abandonner cette piste, je souhaite valider cela avec vous.

    ### **Questions**
    1. **Est-ce Confirmé ?**
    – ProRealTime ne permet-il vraiment pas d’utiliser une variable dynamique comme période dans une fonction SMA (même après arrondi ou quantification) ?

    2. **Solutions Alternatives :**
    – Si vous avez rencontré ce type de problème, auriez-vous des idées ou des contournements qui pourraient fonctionner dans ce cas ?

    Merci d’avance pour vos réponses et vos conseils. 😊

     

    Je rajoute le code d’origine que j’utilise pour calculer la variable dynamique Bestx  sachant que je veux l’utiliser comme cela  : MySMABESTX=Average[Bestx](close)

     

     

     

    #241442

    J’ai l’impression que tu compliques ton problème de base qui m’a l’air très simple…

    Exemple : https://www.tradingview.com/script/oejqyqHP-Adaptive-Moving-Average-AMA/

    A chaque bougie tu calcules ton bestX

    La valeur de la SMA à “barindex-n” est :
    Average[BestX[n]](Close[n])

    Tu peux aussi stocker la valeur de la SMA dans un tableau à la barindex pour chaque nouvelle bougie.

    1 user thanked author for this post.
    #241443

    https://www.tradingview.com/script/ZSyG0zv6-Adaptive-Moving-Average-AMA-Signals-Zeiierman/

    C’est ça que tu cherches à faire ? 🙂

    1 user thanked author for this post.
    #241447

    Bonjour Lucas,

     

    Je te vous  remercie beaucoup pour votre réponse et votre intérêt. Effectivement, j’aurais pu y pensé. Mais ce n’est pas tout à fait pareil dans la finalité.

    • AMA est une moyenne mobile avancée, qui lisse les mouvements en fonction de la volatilité.
    • BestX, en revanche, calcule une valeur optimale pour aligner une SMA sur des niveaux stratégiques, comme un plus haut ou un plus bas. Cette approche n’est pas lissée, elle est ciblée.   Mon idée est de trouver la valeur de la période de la moyenne mobile dynamique qui fait support ou résistance.

    Je cherche à identifier des niveaux de résistances ou supports dynamiques.

    j’ai contourné mon problème avec ce code, le résultat est un peu différent, mais cela marche.

    Visuellement la différence avec l’AMA en capture d’écran 1

    La capture 2 c’est ma variable affichée avec proorder au lieu de probuilder pour contourner l’impossiblité d’utiliser une variable dynamique comme période de moyenne mobile sur probuilder. j’ai une légère différence sur le comportement

     

    Mon idée et but de départ ressemble à la capture 3

     

    Je vous remercie pour votre solution proposée, elle est très intéressante. Mais elle ne répond pas à ce que cherche exactement. Mais vous avez peut-être raison, je me complique éventuellement trop la vie :p

Viewing 4 posts - 1 through 4 (of 4 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login