Créer un screener basé sur CCI correction + PRC_Trendilio

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #227184 quote
    francis59
    Participant
    Junior

    Bonjour,

    N’ayant aucune connaissance en code, serait-il possible et intéressant? de créer un screener en croisant ces 2 critères (cf pièces jointes) :

    • CCI-correction : prendre comme paramètre lorsque l’histogramme est vert (tendance haussière)
    • PRC-Trendilio : prendre comme paramètre lorsque la courbe sort de la zone de survente et croise l’autre à la hausse (pièce jointe image_trendilio)

    Si par hasard ce n’est pas pertinent, ne perdez pas de temps avec ma demande sinon, merci d’avance pour votre aide et n’hésitez pas à compléter avec des idées supplémentaires.

    Bonne journée

    PRC_Trendilio.itf CCI-Correction.itf prc-image_trendilio.png prc-image_trendilio.png
    #227242 quote
    Nicolas
    Keymaster
    Legend

    Bonjour,

    Pour créer un screener qui croise les critères de la “CCI-correction” et du “PRC-Trendilio” en ProBuilder, nous devons intégrer les deux logiques dans un seul script ProScreener. Voici un exemple de code qui pourrait correspondre à votre demande :

    // Paramètres CCI
    L = 14 // Long terme CCI
    B = 9  // Court terme CCI
    
    // Calcul du CCI pour les deux périodes
    CCL = CCI[L]
    CCS = CCI[B]
    
    // Logique pour la CCI-correction
    LASTUP = 0
    LASTDW = 0
    UP = 0
    DW = 0
    
    IF CCL > 100 THEN
        LASTUP = 1
        LASTDW = 0
    ELSIF CCL < -100 THEN
        LASTDW = -1
        LASTUP = 0
    ENDIF
    
    IF CCS > 100 THEN
        UP = 1
        DW = 0
    ELSIF CCS < -100 THEN
        DW = -1
        UP = 0
    ENDIF
    
    // Paramètres PRC-Trendilio
    src = close // Source is Close
    smooth = 1 // Smoothing
    length = 50 // ALMA Lookbackperiod
    offset = 0.85 // ALMA Offset
    sigma = 6 // ALMA Sigma
    bmult = 1.0 // Band Multiplier
    blen = 20 // Custom Band Length
    
    // Calcul de PRC-Trendilio
    WtdSum = 0
    CumWt  = 0
    FOR k = 0 TO length - 1 DO
        Wtd = exp(-((k-m)*(k-m))/(2*s*s))
        WtdSum = WtdSum + Wtd * (src[length - 1 - k] - src[length - k]) / (src[length - 1 - k] * 100)
        CumWt = CumWt + Wtd
    NEXT
    
    avpch = WtdSum / CumWt
    rms = bmult * sqrt(summation[blen](avpch * avpch) / blen)
    
    cdir = 0
    IF avpch > rms THEN
        cdir = 1
    ELSIF avpch < -rms THEN
        cdir = -1
    ENDIF
    
    // Condition finale pour le screener
    Condition = (LASTUP = 1 OR UP = 1) AND cdir = 1
    
    SCREENER[Condition]

    Ce code combine les logiques de la “CCI-correction” et du “PRC-Trendilio”. Il vérifie si les conditions de la CCI-correction (tendance haussière) et du PRC-Trendilio (la courbe sortant de la zone de survente et croisant à la hausse) sont remplies simultanément.

    #227258 quote
    francis59
    Participant
    Junior

    Bonjour Nicolas,

    Merci pour votre réponse rapide. Lorsque j’essaie le code, il y a un message d’alerte : “veuillez définir les variables : m, s”

    Auriez vous une idée de solution? 🙂

    D’avance merci et bonne soirée

    #227477 quote
    francis59
    Participant
    Junior

    Bonjour Nicolas,

    Désolé de vous déranger à nouveau sur ce même sujet mais je viens d’essayer de modifier et de paramétrer “m” et “s” avec (demande #227258):

    m = (Offset * (length – 1))
    s = length/Sigma

    mais j’ai ensuite un nouveau message d’alerte :

    “erreur de syntaxe :

    la variable suivante n’est pas utilisée dans le programme : lastdw

    la variable suivante n’est pas utilisée dans le programme : dw

    la variable suivante n’est pas utilisée dans le programme : smooth”

    Auriez-vous une idée de solution?

    D’avance merci pour votre aide.

    Bonne journée 🙂

    #227763 quote
    francis59
    Participant
    Junior

    Bonjour Nicolas,

    Désolé de vous déranger à nouveau sur ce sujet mais j’ai essayé de modifier le code avec mes “moyens” de compréhension mais j’ai l’impression que ce n’est pas encore tout à fait le bon code. Pourriez vous vérifier si le code suivant est OK ?

    // Paramètres CCI
    L = 14 // Long terme CCI
    B = 9 // Court terme CCI

    // Calcul du CCI pour les deux périodes
    CCL = CCI[L]
    CCS = CCI[B]

    // Logique pour la CCI-correction
    LASTUP = 0
    UP = 0

    IF CCL > 100 THEN
    LASTUP = 1

    ELSIF CCL < -100 THEN
    LASTUP = 0
    ENDIF

    IF CCS > 100 THEN
    UP = 1

    ELSIF CCS < -100 THEN

    UP = 0
    ENDIF
    // Paramètres PRC-Trendilio
    src = close // Source is Close
    length = 50 // ALMA Lookbackperiod
    offset = 0.85 // ALMA Offset
    sigma = 6 // ALMA Sigma
    bmult = 1.0 // Band Multiplier
    blen = 20 // Custom Band Length
    m = (Offset * (length – 1))
    s = length/Sigma
    // Calcul de PRC-Trendilio
    WtdSum = 0
    CumWt = 0
    FOR k = 0 TO length – 1 DO
    Wtd = exp(-((k-m)*(k-m))/(2*s*s))
    WtdSum = WtdSum + Wtd * (src[length – 1 – k] – src[length – k]) / (src[length – 1 – k] * 100)
    CumWt = CumWt + Wtd
    NEXT

    avpch = WtdSum / CumWt
    //avpch = ta.alma(pch, length, offset, sigma)
    rms = bmult * sqrt(summation[blen](avpch * avpch) / blen)

    cdir = 0
    IF avpch > rms THEN
    cdir = 1
    ELSIF avpch < -rms THEN
    cdir = -1
    ENDIF

    // Condition finale pour le screener
    Condition = (LASTUP = 1 OR UP = 1) AND cdir = 1

    SCREENER[Condition]

     

    D’avance merci et bonne journée

    #228455 quote
    francis59
    Participant
    Junior

    Bonjour Nicolas,

    Veuillez m’excuser de vous relancer concernant ce sujet mais auriez-vous la possibilité de vérifier le code proposé dans ma dernière demande? 🙂

    D’avance merci pour votre aide.

    Bonne journée

    #228663 quote
    francis59
    Participant
    Junior

    Bonjour,

    Le sujet peut être fermé.

    Merci 🙂

    Bonne journée

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

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

Créer un screener basé sur CCI correction + PRC_Trendilio


ProScreener : Scanners de Marché & Détection

New Reply
Author
author-avatar
francis59 @francis51 Participant
Summary

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

Topic Details
Forum: ProScreener : Scanners de Marché & Détection
Language: French
Started: 01/31/2024
Status: Active
Attachments: 3 files
Logo Logo
Loading...