Retour sur moyenne mobile 20 en tendance haussière

Viewing 15 posts - 1 through 15 (of 17 total)
  • Author
    Posts
  • #261353 quote
    OURS95
    Participant
    Senior

    Vous trouverez en PJ ma demande

    merci encore


    Domi

    Retour-M20.pdf Retour-M20.pdf
    #261361 quote
    Iván González
    Moderator
    Legend

    Veuillez m’excuser, mais je ne peux pas traiter de texte manuscrit avec un traducteur 🙁

    Si vous me dites ce que vous recherchez, je pourrai peut-être vous aider. Sinon, espérons qu’un autre utilisateur pourra vous aider.

    #261364 quote
    Nicolas
    Keymaster
    Legend

    @OURS95

    Merci de bien vouloir décrire ce qu’il faut rechercher, cela nous aidera à coder de façon efficace la demande, dés le premier tour 😉

    et si possible, de poster les images au format image (png, jpeg) directement, plutôt qu’intégré dans un PDF, merci de ton aide.

    #261366 quote
    OURS95
    Participant
    Senior

    Re bonjour,

    Je voudrai détecter le 1 er retour (Impact) sur la M20 ou M13 sur une tendance très haussière de quelques jours ou semaines.

    voici voila

    Il est l’heure de l’apéro……

    ABVX-Journalier.png ABVX-Journalier.png
    #261370 quote
    Iván González
    Moderator
    Legend

    Salut. Pour coder cela, il faudrait être plus précis… car une tendance très haussière sur quelques jours ou semaines, ça paraît très vague… 🙂

    Cela dit, j’envisage de créer un indicateur qui évalue le nombre de bougies pendant lesquelles le prix a été supérieur à la moyenne, avec une marge de sécurité pour éviter les interférences.

    // PRC_First-Impact-MA-Pullback
    // Detecte le 1er contact avec la MA apres une tendance haussiere soutenue
    
    
    DEFPARAM CalculateOnLastBars = 5000
    
    
    // === Inputs ===
    periodMA = 20          // 20 = M20, 13 = M13, etc.
    maType = 0             // 0=SMA, 1=EMA, 2=WMA, 3=Wilders, etc.
    nBarsTrend = 10        // bougies consecutives au-dessus pour "armer"
    distancePct = 1.0      // % min au-dessus de la MA pour compter comme "eloigne"
    
    
    // === MA de reference ===
    ma = average[periodMA, maType](close)
    threshold = ma * (1 + distancePct / 100)
    
    
    // === Compteur de bougies consecutives au-dessus ===
    ONCE barsAbove = 0
    IF close > threshold THEN
        barsAbove = barsAbove + 1
    ELSE
        barsAbove = 0
    ENDIF
    
    
    // === Machine a etats armed / disarmed ===
    ONCE armed = 0
    IF barsAbove >= nBarsTrend AND armed = 0 THEN
        armed = 1
    ENDIF
    
    
    // === Detection du 1er impact ===
    touchedMA = low = ma
    
    
    firstImpact = 0
    IF armed = 1 AND touchedMA THEN
        firstImpact = 1
        armed = 0
    ENDIF
    
    
    // === Visualisation ===
    IF firstImpact = 1 THEN
        drawtext("1er impact M#periodMA#", barindex, ma * 0.985, Dialog, Bold, 11) coloured(0, 120, 0)
    ENDIF
    
    
    impactDot = undefined
    alpha = 0
    IF firstImpact = 1 THEN
        impactDot = ma
        alpha = 255
    ENDIF
    
    
    RETURN ma AS "MA", impactDot AS "First impact" style(point, 4) COLOURED(0, 200, 0, alpha)
    


    robertogozzi thanked this post
    #261384 quote
    OURS95
    Participant
    Senior

    J’ai une erreur ligne 5 “caractères manquants”

    ligne 5: DEFPARAM CalculateOnLastBars = 5000

    #261387 quote
    Iván González
    Moderator
    Legend

    Vous ne devriez pas rencontrer d’erreur, mais vous pouvez le supprimer si vous le souhaitez.

    Bref, la voici, car en la relisant, j’ai repéré une autre correction à apporter.

    // PRC_First-Impact-MA-Pullback
    // Detecte le 1er contact avec la MA apres une tendance haussiere soutenue
    
    // === Inputs ===
    periodMA = 10          // 20 = M20, 13 = M13, etc.
    maType = 0             // 0=SMA, 1=EMA, 2=WMA, 3=Wilders, etc.
    nBarsTrend = 10        // bougies consecutives au-dessus pour "armer"
    distancePct = 1.0      // % min au-dessus de la MA pour compter comme "eloigne"
    
    
    // === MA de reference ===
    ma = average[periodMA, maType](close)
    threshold = ma * (1 + distancePct / 100)
    
    
    // === Compteur de bougies consecutives au-dessus ===
    ONCE barsAbove = 0
    IF close > threshold THEN
       barsAbove = barsAbove + 1
    ELSE
       barsAbove = 0
    ENDIF
    
    
    // === Machine a etats armed / disarmed ===
    ONCE armed = 0
    IF barsAbove >= nBarsTrend AND armed = 0 THEN
       armed = 1
    ENDIF
    
    
    // === Detection du 1er impact ===
    touchedMA = low <= ma
    
    
    firstImpact = 0
    IF armed = 1 AND touchedMA THEN
       firstImpact = 1
       armed = 0
    ENDIF
    
    
    // === Visualisation ===
    IF firstImpact = 1 THEN
       drawtext("1er impact M#periodMA#", barindex, ma * 0.985, Dialog, Bold, 11) coloured(0, 120, 0)
    ENDIF
    
    
    impactDot = undefined
    alpha = 0
    IF firstImpact = 1 THEN
       impactDot = ma
       alpha = 255
    ENDIF
    
    
    RETURN ma AS "MA", impactDot AS "First impact" style(point, 4) COLOURED(0, 200, 0, alpha)
    


    #261391 quote
    Nicolas
    Keymaster
    Legend

    @OURS95

    ces derniers codes sont des indicateurs pas des screeners, il faut pour cela utiliser le bon éditeur de code (ils sont différents dans les versions inférieures à la v13).

    #261392 quote
    OURS95
    Participant
    Senior

    erreurs lignes 45 et 46


    ligne 45 : drawtext(“1er impact M#periodMA#”, barindex, ma * 0.985, Dialog, Bold, 11) coloured(0, 120, 0)

    ligne 46 : ENDIF

    #261393 quote
    OURS95
    Participant
    Senior

    commande inconnue

    #261395 quote
    Nicolas
    Keymaster
    Legend

    Oui comme je le disais, tu n’utilises pas le bon éditeur de code, les codes d’indicateurs vont dans l’éditeur de code des indicateurs. Pareil pour les codes de screener, ils ont chacun un éditeur particulier.

    Iván González thanked this post
    #261397 quote
    OURS95
    Participant
    Senior

    C’est un screener concernant ma demande …..

    #261398 quote
    OURS95
    Participant
    Senior

    le 1 er retour

    #261399 quote
    OURS95
    Participant
    Senior

    Normalement la dernière ligne se termine par “SCREENER”

    #261407 quote
    Iván González
    Moderator
    Legend

    Ok, c’est ma faute. En Espagne, on a un dicton qui dit “ce qui commence mal finit mal”… 🙂


    // PRC_First-Impact-MA-Pullback (Screener)
    
    
    // === Inputs ===
    periodMA = 20          // 20 = M20, 13 = M13, etc.
    maType = 0             // 0=SMA, 1=EMA, 2=WMA, 3=Wilders, etc.
    nBarsTrend = 10        // bougies consecutives au-dessus pour "armer"
    distancePct = 1.0      // % min au-dessus de la MA pour compter comme "eloigne"
    
    
    // === MA de reference ===
    ma = average[periodMA, maType](close)
    threshold = ma * (1 + distancePct / 100)
    
    
    // === Compteur de bougies consecutives au-dessus ===
    ONCE barsAbove = 0
    IF close > threshold THEN
        barsAbove = barsAbove + 1
    ELSE
        barsAbove = 0
    ENDIF
    
    
    // === Machine a etats armed / disarmed ===
    ONCE armed = 0
    IF barsAbove >= nBarsTrend AND armed = 0 THEN
        armed = 1
    ENDIF
    
    
    // === Detection du 1er impact ===
    touchedMA = low <= ma AND high >= ma
    
    
    firstImpact = 0
    IF armed = 1 AND touchedMA THEN
        firstImpact = 1
        armed = 0
    ENDIF
    
    
    // === Distance depuis le plus haut recent (info auxiliaire) ===
    pctFromHigh = (highest[nBarsTrend](high) - close) / close * 100
    
    
    // === Sortie screener ===
    SCREENER[firstImpact = 1] (close AS "Cours", ma AS "MA", pctFromHigh AS "% du plus haut")
    





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

Retour sur moyenne mobile 20 en tendance haussière


ProScreener : Scanners de Marché & Détection

New Reply
Author
author-avatar
OURS95 @ours95 Participant
Summary

This topic contains 16 replies,
has 3 voices, and was last updated by OURS95
1 day ago.

Topic Details
Forum: ProScreener : Scanners de Marché & Détection
Language: French
Started: 05/19/2026
Status: Active
Attachments: 2 files
Logo Logo
Loading...