bonjour
je recherche un 2 sceeners :
Cours sur une résistance oblique haussiére.
Cours sur une résistance oblique baissière .
merci d’avance 🙏
Cordialement
hugo
Voici l’indicateur, vous pouvez donc voir la résistance sur le graphique :
DEFPARAM DrawOnLastBarOnly = true
//ONCE N1 = 100
//ONCE N2 = 20
//
prevHH = highest[N1](high[N2])
FOR i = 1 TO N1
j = i - 1
IF high[j] = prevHH THEN
prevBAR = BarIndex[j]
break
ENDIF
NEXT
//
currHH = highest[N2](high)
FOR i = 1 TO N2
j = i - 1
IF high[j] = currHH THEN
currBAR = BarIndex[j]
break
ENDIF
NEXT
IF currHH = prevHH THEN
currTMP = currHH
barTMP = currBAR
currHH = high
currBAR = BarIndex
IF currHH = prevHH THEN
prevHH = currTMP
prevBAR = barTMP
ENDIF
ENDIF
Rising = currHH > prevHH
Falling = currHH < prevHH
//
Gap = abs(currHH - prevHH)
barGap = Gap / abs(currBAR - prevBAR)
NextHH = CurrHH
NextBAR = BarIndex
//
IF Rising THEN
NextHH = NextHH + (barGap * abs(NextBAR - CurrBAR))
ELSIF Falling THEN
NextHH = NextHH - (barGap * abs(NextBAR - CurrBAR))
ENDIF
//
DrawSegment(prevBAR,prevHH,NextBAR,NextHH) coloured("cyan",255) style(line,2)
RETURN
La résistance est calculée à partir de deux points suffisamment éloignés.
Le point le plus éloigné est calculé sur 100 périodes, le plus proche sur 20 périodes.
En cas de tendance forte et persistante, les deux points peuvent être égaux. Dans ce cas, le point le plus proche est le point actuel.
Voici le screener :
//DEFPARAM DrawOnLastBarOnly = true
ONCE N1 = 100
ONCE N2 = 20
//
prevHH = highest[N1](high[N2])
FOR i = 1 TO N1
j = i - 1
IF high[j] = prevHH THEN
prevBAR = BarIndex[j]
break
ENDIF
NEXT
//
currHH = highest[N2](high)
FOR i = 1 TO N2
j = i - 1
IF high[j] = currHH THEN
currBAR = BarIndex[j]
break
ENDIF
NEXT
IF currHH = prevHH THEN
currTMP = currHH
barTMP = currBAR
currHH = high
currBAR = BarIndex
IF currHH = prevHH THEN
prevHH = currTMP
prevBAR = barTMP
ENDIF
ENDIF
Rising = currHH > prevHH
Falling = currHH < prevHH
//
Gap = abs(currHH - prevHH)
barGap = Gap / abs(currBAR - prevBAR)
NextHH = CurrHH
NextBAR = BarIndex
//
IF Rising THEN
NextHH = NextHH + (barGap * abs(NextBAR - CurrBAR))
ELSIF Falling THEN
NextHH = NextHH - (barGap * abs(NextBAR - CurrBAR))
ENDIF
//
//DrawSegment(prevBAR,prevHH,NextBAR,NextHH) coloured("cyan",255) style(line,2)
//RETURN
Cond = (high >= NextHH) AND (low <= NextHH) AND (high <> low)
IF Falling AND Cond THEN
Cond = 9
ENDIF
SCREENER[Cond](Cond AS "1=Bullish,9=Bearish")
Au lieu d’utiliser deux screeners, je n’en ai utilisé qu’un seul. Il renverra 1 lorsque la résistance est haussière et 9 lorsqu’elle est baissière.
Postez votre nouveau sujet dans le forum correct :
_ support ProRealTime: uniquement les problèmes liés à la plateforme.
_ ProOrder: uniquement les sujets sur les stratégies.
_ ProBuilder: uniquement les sujets sur les indicateurs.
_ ProScreener: uniquement les sujets sur les screeners.
_ Discussions générales: tous les autres sujets.
_ Bienvenue aux nouveaux membres: pour que les nouveaux membres du forum se présentent.
Publiez uniquement dans la langue du forum dans laquelle vous publiez. Par exemple, l’anglais uniquement dans les forums anglophones et le français uniquement dans les forums francophones.
Merci 🙂
J’ai déplacé votre question depuis le forum d’assistance de la plateforme ProRealTime en anglais.
Le premier screener ne fonctionne pas , il affiche code manquant ?
Cordialement
hugo
Je n’ai publié qu’UN SEUL screener, le premier code est un indicateur, avec le même code, vous pouvez donc voir la résistance sur le graphique.
Bonjour encore Merci pour votre aide 🙏
Bonne fin de journée
Cordialement
hugo