Convertissement indicateur Supertrend + CCI développé par Nicolas

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #178793 quote
    redisdead
    Participant
    Junior

    Bonjour,

    Sur l’indicateur Supertrend + CCI crée par Nicolas il y a quelques moi, dans le fil de discussion il était questionné d’en faire un screener. J’ai fouillé le forum sans trouver trace de ce sujet.

    Est il possible de le faire ? Mes connaissances sur PRT ne sont pas encore assez avancées pour réaliser ce genre de choses.

    De plus, est il possible de choisir un horizon de temps défini antérieur pour l’observation des signaux détectés (hausse comme baisse). Par exemple : faire la recherche pour un signal détecté il y a 5 jours.

    Il serait peut être préférable de faire deux screeners séparés : un pour la hausse, l’autre pour la baisse.

    Merci,

    Benjamin

    #178794 quote
    Nicolas
    Keymaster
    Master

    Bien sûr, merci de nous indiquer de quel indicateur il s’agit exactement et je coderai les screeners.

    #178797 quote
    redisdead
    Participant
    Junior

    Merci pour la réactivité, il s’agit de celui ci : https://www.prorealcode.com/prorealtime-indicators/supertrend-cci/

    #178818 quote
    Nicolas
    Keymaster
    Master

    Ci-dessous le code du screener, on peut modifier le paramètre “x” pour faire varier la fraîcheur du signal:

    //PRC_Supertrend+CCI | screener
    //https://www.prorealcode.com/topic/convertissement-indicateur-supertrend-cci-developpe-par-nicolas/#post-178794
    
    // --- settings
    x = 1 //fraîcheur du signal X bougies en arrière
    CCIPeriod=50 // CCI indicator period
    ATRPeriod=5  // ATR indicator period
    Level=0 // CCI activation level
    // --- end of settings
    
    icci = CCI[CCIPeriod](typicalPrice)
    iatr = AverageTrueRange[ATRPeriod](close)
    TrendUp=0.0
    TrendDown=0.0
    //SignUp=0.0
    //SignDown=0.0
    
    if(iCCI>=Level and iCCI[1]<Level) then
    TrendUp=TrendDown[1]
    endif
    
    if(iCCI<=Level and iCCI[1]>Level) then
    TrendDown=TrendUp[1]
    endif
    
    if(iCCI>Level) then
    TrendUp=low-iATR
    
    if(TrendUp<TrendUp[1] and iCCI[1]>=Level) then
    TrendUp=TrendUp[1]
    endif
    endif
    if(iCCI<Level) then
    TrendDown=high+iATR
    
    if(TrendDown>TrendDown[1] and iCCI[1]<=Level) then
    TrendDown=TrendDown[1]
    endif
    endif
    signal = 0
    if(TrendDown[1]<>0.0 and TrendUp<>0.0) then
    //SignUp=TrendUp
    signal=1
    endif
    if(TrendUp[1]<>0.0 and TrendDown<>0.0) then
    //SignDown=TrendDown
    signal=-1
    endif
    
     
    test = summation[x](signal<>signal[1])>0
    screener[test] (signal as "direction")
    
    #178829 quote
    redisdead
    Participant
    Junior

    Merci bcp ! Je vais tester ça mais un énorme merci en attendant pour ta réactivité.

    #179444 quote
    redisdead
    Participant
    Junior

    Bonjour,

    Qqs retours après utilisation,

    • peut on séparer signal à la baisse et signal à la hausse ?
    • pour une fraicheur de signal donné (ex 10), si aucun signal détecté sur la période fournie (<=10), la ligne est quand même détectée (ce qui n’est pas forcément une mauvaise chose mais pas forcément attendue)
    #179448 quote
    Nicolas
    Keymaster
    Master

    Puisque la valeur du signal (1 = hausse , -1 = baisse) est retournée en critère de tri, lancer le screener avec un tri du “plus petit au plus grand” ou “plus grand au plus petit”.

    En théorie le screener doit bien retournée les retournements ayant eu lieu dans les X dernières bougies. Il faut bien entendu que les valeurs des paramètres soient les mêmes à la fois dans le screener et dans l’indicateur attaché au graphique pour vérification.

    #179988 quote
    redisdead
    Participant
    Junior

    Effectivement, je n’avais pas les mêmes valeurs de paramètres … merci pour le support.

    #190454 quote
    finplus
    Participant
    Master

    Bonjour,

    je reviens sur la question posée par Redisdead:  est il possible de séparer dans le code le signal à la hausse et à la baisse de façon à pouvoir ajouter dans le screener d’autres conditions (par exemple signal haussier et close > kama 200, etc )?

    Merci.

    #190465 quote
    Nicolas
    Keymaster
    Master

    Oui on peut, ci-dessous la version du code où on peut choisir si on veut un signal baissier ou haussier avec le paramètre “signaltype” en tête de code:

    //PRC_Supertrend+CCI | screener
    //https://www.prorealcode.com/topic/convertissement-indicateur-supertrend-cci-developpe-par-nicolas/#post-178794
    
    // --- settings
    signaltype = 1 //1=haussier ; -1=baissier
    x = 1 //fraîcheur du signal X bougies en arrière
    CCIPeriod=50 // CCI indicator period
    ATRPeriod=5  // ATR indicator period
    Level=0 // CCI activation level
    // --- end of settings
    
    icci = CCI[CCIPeriod](typicalPrice)
    iatr = AverageTrueRange[ATRPeriod](close)
    TrendUp=0.0
    TrendDown=0.0
    //SignUp=0.0
    //SignDown=0.0
    
    if(iCCI>=Level and iCCI[1]<Level) then
    TrendUp=TrendDown[1]
    endif
    
    if(iCCI<=Level and iCCI[1]>Level) then
    TrendDown=TrendUp[1]
    endif
    
    if(iCCI>Level) then
    TrendUp=low-iATR
    
    if(TrendUp<TrendUp[1] and iCCI[1]>=Level) then
    TrendUp=TrendUp[1]
    endif
    endif
    if(iCCI<Level) then
    TrendDown=high+iATR
    
    if(TrendDown>TrendDown[1] and iCCI[1]<=Level) then
    TrendDown=TrendDown[1]
    endif
    endif
    signal = 0
    if(TrendDown[1]<>0.0 and TrendUp<>0.0) then
    //SignUp=TrendUp
    signal=1
    endif
    if(TrendUp[1]<>0.0 and TrendDown<>0.0) then
    //SignDown=TrendDown
    signal=-1
    endif
    
     
    test = summation[x](signal=signaltype)>0
    screener[test] (signal as "direction")

    (non testé)

    #190478 quote
    finplus
    Participant
    Master

    Merci beaucoup.

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

Convertissement indicateur Supertrend + CCI développé par Nicolas


ProScreener : Scanners de Marché & Détection

New Reply
Author
author-avatar
redisdead @redisdead Participant
Summary

This topic contains 10 replies,
has 3 voices, and was last updated by finplus
3 years, 11 months ago.

Topic Details
Forum: ProScreener : Scanners de Marché & Détection
Language: French
Started: 09/30/2021
Status: Active
Attachments: No files
Logo Logo
Loading...