Divergence de résultats entre SCREENER et son INDICATEUR

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #153233 quote
    Nicobert
    Participant
    New

    Bonjour,

    Je rencontre une divergence entre un indicateur simple en UT Daily et son exploitation en SCREENER (Daily aussi je précise).

    Pour l’indicateur, il s’agit simplement de mesurer la durée passée en hausse depuis une date donnée :

    Timeframe(daily)
    
    BBup = ExponentialAverage[200](Close)+2*std[200](close)
    
    REM On veut calculer sur une période donnée - seule une date marche pour l'instant
    If Date >= 20200601 Then
    If BBup>BBup[1] Then
    CounterHigh = CounterHigh + 1
    Else
    CounterLow = CounterLow + 1
    Endif
    VariationBBup = 100 * CounterHigh / (CounterHigh + CounterLow)
    Else
    CounterHigh = 0
    CounterLow = 0
    Endif
    
    RETURN   VariationBBup As "Variation_BBup", CounterHigh As "CounterHigh", CounterLow As "CounterLow"

    L’indicateur fonctionne bien, pas de souci. On a bien la mesure de la hausse progressive des BB up depuis la date donnée (cf. image attachée).

     

    Le problème, c’est que le SCREENER ne respecte pas mes conditions. Si je veux par exemple les actions qui ont une VariationUp > 90 mesurée depuis la date de référence jusqu’à aujourdh’ui et bien ça ne marche plus.

    myVariationBBup, ignored, ignored = CALL "BBup_test"
    
    Screener [myVariationBBup > 90]

     

    J’ai tout essayé et je ne comprends pas pourquoi ça ne fonctionne pas. Donc autant vous dire que celui qui peut m’aider m’enlèvera une sacrée épine du pied car j’ai déjà fait des indicateurs puis des screeners et j’ai compris les mécanismes de base pour avancer petit à petit mais là je bloque.

     

    NB : question subsidiaire

    J’ai mis une date mais j’aurais tellement préféré pouvoir mettre une durée en nombre de semaines ou jours ouvrés. Je n’y suis pas parvenu même si j’ai pu contourner ce problème en mettant une date de référence. Le problème, c’est que je devrais modifier au fur et à mesure cette date chaque jour. Je voudrais par exemple une mesure sur 8 semaines à compter de la date d’aujourd’hui (8 semaines calendaires).

    Merci pour votre intérêt 🙂

    Capture.jpg Capture.jpg
    #153244 quote
    Nicolas
    Keymaster
    Master

    Tu devrais comparer les résultats du calcul fait par le screener avec l’affichage de l’indicateur comme ceci:

    Screener (myVariationBBup)

    Les bandes de Bollinger se calculent avec une moyenne mobile simple (pas exponentielle), cette dernière pourrait être problématique car pour la calculer correctement elle a besoin de bien plus de période que 200, hors ProScreener n’a que 254 chandeliers d’historique disponible.

    Nicobert thanked this post
    #153255 quote
    Nicobert
    Participant
    New

    Merci Nicolas pour ta réponse. En effet, c’est peut-être la raison qui explique mon décalage.

    En modifiant le screener comme tu le proposes, je retrouve ce décalage que je ne m’explique pas car PRT trace bien cette BB à 200 barres sur ma durée d’étude.

     

    Du coup, j’essaie de contourner et j’essaie de vérifier les conditions suivantes : BBup de la barre 0 > BBup de la barre 20 > BBup de la barre 40 > BBup de la barre 60 mais ça ne fonctionne pas.

    Voici le code :

    Timeframe(daily)
    
    BBup = ExponentialAverage[200](Close)+2*std[200](close)
    
    REM On veut calculer sur une période donnée - seule une date marche pour l'instant
    If Date >= 20200601 Then
    
    Drift = 4
    
    REM On dessine les Box toutes les 20 barres day donc tous les 1 mois
    For a = 0 to 2 Do
    i = 20 * a
    REM attention, on met du BarIndex qui va de gauche à droite mais on a écrit "DRAWLASTBARONLY" et oui mon gars donc reste que celui de droite !!!
    DrawRectangle(BarIndex[i]-Drift, BBup[i]-Drift, BarIndex[i]+Drift, BBup[i]+Drift)coloured(255,0,255)STYLE(dottedline,5)
    Next
    
    
    If BBup>BBup[20] And BBup[20]>BBup[40]And BBup[40]>BBup[60] Then
    Signal = 10
    Else
    Signal = 0
    Endif
    
    
    Elsif Date <= 20200601 Then
    Signal = 0
    Endif
    
    RETURN   Signal As "Signal"

    Merci d’avance pour ton éclairage.

    #153257 quote
    Nicolas
    Keymaster
    Master

    Il faut éviter d’utiliser les instruction TIMEFRAME dans les indicateurs, ProScreener n’a pas encore reçu l’update lui permettant de comprendre ce nouveau type d’indicateur ; même si ProScreener le gère lui même dans son propre code, il va mal digérer un indicateur qui l’utilise lors d’un CALL.

    Si tu utilises un timeframe daily, il est inutile de le déclarer dans ton indicateur par ailleurs.

    Nicobert thanked this post
    #153261 quote
    Nicobert
    Participant
    New

    Bien pris Nicolas, je l’ai enlevé mais ça ne change pas le résultats de l’indicateur. J’ai peur de ne pas avoir bien identifié le BBup[20] par exemple comme le BBup de la 20ème barre (depuis la gauche donc). Qu’en dis-tu ?

    #153263 quote
    Nicobert
    Participant
    New

    Bien pris Nicolas, je l’ai enlevé mais ça ne change pas le résultats de l’indicateur. J’ai peur de ne pas avoir bien identifié le BBup[20] par exemple comme le BBup de la 20ème barre (depuis la gauche donc). Qu’en dis-tu ?

    Je voulais dire “depuis la droite” bien entendu 🙂

    #153461 quote
    Nicobert
    Participant
    New

    Donc pour ceux qui liraient ce post, je précise que j’ai pu finaliser mon screener en adaptant la période des BB de 200 à 100.

    En effet, le signal est certes différent mais les pentes de courbes présentent quelques similitudes pour ce que je cherche à filtrer.

    Un GRAND MERCI à toi Nicolas pour ton éclairage qui m’a permis de modifier mes critères de tests. Tu m’as enlevé une belle épine du pied  🙂

Viewing 7 posts - 1 through 7 (of 7 total)
  • You must be logged in to reply to this topic.

Divergence de résultats entre SCREENER et son INDICATEUR


ProScreener : Scanners de Marché & Détection

New Reply
Author
author-avatar
Nicobert @nicobert Participant
Summary

This topic contains 6 replies,
has 2 voices, and was last updated by Nicobert
5 years, 2 months ago.

Topic Details
Forum: ProScreener : Scanners de Marché & Détection
Language: French
Started: 12/10/2020
Status: Active
Attachments: 1 files
Logo Logo
Loading...