Ajout de condition pour indicateur Divergence RSI
Forums › ProRealTime forum Français › Support ProBuilder › Ajout de condition pour indicateur Divergence RSI
- This topic has 47 replies, 5 voices, and was last updated 1 year ago by JC_Bywan.
Tagged: divergences
-
-
02/27/2020 at 11:01 AM #12066102/27/2020 at 11:40 AM #12066805/06/2020 at 10:11 PM #130336
Bonjour,
Je cherche à peu près les mêmes configurations pour cet indicateur.
Je cherche dans un premier temps à le faire fonctionner
Je viens de l’insérer dans prorealtime mais il ne trouve aucune divergence sur le marché français alors que manuellement j’en trouve.
Le code a t’il un soucis?
Quelle serait la ligne à modifier?
Merci d’avance pour votre réponse
05/07/2020 at 10:05 AM #130404Désolé, je ne comprends pas la question, de quel indicateur parles-tu ? Comme évoqué, on peut trouver une multitude de divergences avec ses yeux sur un graphique, mais un programme évalue des conditions strictes, mathématiques. Par ailleurs, il n’y a pas de définition stricte et académique de ce qu’est une divergence, donc chacun verra ce qu’il souhaite là où il le souhaite et pourra désigner une divergence, si il le veut 🙂
05/07/2020 at 9:28 PM #130525Bonjour Nicolas,
En effet je suis d’accord avec toi que la divergence est assez subjectif en fonction de comment on l’interprète et de ce que l’on veut voir.
Ce que je cherche n’est pas un indicateur, mais un screener de marché qui filtre à ma place les différents actifs, se taper manuellement la liste du SRD et de l’eurostoxx 600, c’est long, fastidieux et improductif.
Les conditions du sreener sont les suivantes:
Sur le prix, uniquement les clôtures ou ouvertures sont prises en compte et non les mèches.
Le premier pic de la divergence doit obligatoirement se passer en zone de surachat (RSI sup à 70) ou survente (RSI inf à 30).
Le creux (entouré en rouge) doit obligatoirement se trouver au dessus de la ligne des 60 du RSI pour une divergence baissière ou de la ligne des 40 pour une divergence haussière.
Le second pic n’est pas forcément en zone de surachat ou survente.
Un nombre de 7 à 25 bougies doivent êtres comprises entre les 2 pics.
La position sera ouverte manuellement, j’aimerais que le sreener me détecte l’actif et le fasse apparaître dans la liste un peu avant la cassure du creux entouré en rouge soit dans ce graphique à 60,89 du RSI
Et comme une photo vaut mieux qu’un long discours
Merci d’avance
05/09/2020 at 4:08 PM #130769Je suis désolé, mais je suis imccapable ce programmer ce genre de chose.
Si quelqu’un arriverais à le faire, ça serai vraiment top.
05/18/2020 at 9:07 AM #132083Bonjour Nicolas,
Il semble que ce code ne fonctionne pas ou plus sur V11
Pouvez-vous y remédier svp ?
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677//PRC_AnotherRSIdivergences | indicator//25.02.2019//Nicolas @ www.prorealcode.com//Sharing ProRealTime knowledge// --- settingsRSIp=14 //RSI periodobLevel=70 //overbought levelosLevel=30 //oversold levelminimalBars=5 //minimal count of bars where RSI is ob or osminBarBetween = 4maxBarBetween = 16noLowerThan = 60noHigherThan = 40// --- end of settingsirsi = rsi[RSIp]ob = irsi>obLevelos = irsi<osLevelif ob thenif not ob[1] thenmaxrsi = 0maxprice = 0firstobbar = barindexendifmaxrsi=max(maxrsi,irsi)maxprice=max(maxprice,high)if maxrsi<>maxrsi[1] thenmaxrsibar=barindexendifendifif os thenif not os[1] thenminrsi = 100minprice = close*100firstosbar = barindexendifminrsi=min(minrsi,irsi)minprice=min(minprice,low)if minrsi<>minrsi[1] thenminrsibar=barindexendifendifdivsell=0if irsi crosses under obLevel then//verif divergencebarcount=maxrsibar-oldmaxrsibardiv = maxprice>oldmaxprice and maxrsi<oldmaxrsi and (barindex-firstobbar)>=minimalBars and barcount>=minbarbetween and barcount<=maxbarbetween and summation[max(1,barcount)](irsi<noLowerThan)=0if div then//drawsegment(oldmaxrsibar,oldmaxrsi,maxrsibar,maxrsi) coloured(200,0,0)//drawarrowdown(maxrsibar,maxrsi) coloured(200,0,0)divsell=osLevelendifoldmaxrsi = maxrsioldmaxprice = maxpriceoldmaxrsibar = maxrsibarendifdivbuy=0if irsi crosses over osLevel then//verif divergencebarcount=minrsibar-oldminrsibardiv = minprice<oldminprice and minrsi>oldminrsi and (barindex-firstosbar)>=minimalBars and barcount>=minbarbetween and barcount<=maxbarbetween and summation[max(1,barcount)](irsi>noHigherThan)=0if div then//drawsegment(oldminrsibar,oldminrsi,minrsibar,minrsi) coloured(0,200,0)//drawarrowup(minrsibar,minrsi) coloured(0,200,0)divbuy=osLevelendifoldminrsi = minrsioldminprice = minpriceoldminrsibar = minrsibarendifscreener[divbuy or divsell](max(divbuy,divsell))05/18/2020 at 11:13 AM #13210805/18/2020 at 11:47 AM #13211705/18/2020 at 1:30 PM #132138Merci pour ta réponse Nicolas
Voici le code en question: Il n’a pas l’air de fonctionner sur la V11
Divergence screener1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283//PRC_AnotherRSIdivergences | indicator//25.02.2019//Nicolas @ www.prorealcode.com//Sharing ProRealTime knowledge// --- settingsRSIp=14 //RSI periodobLevel=70 //overbought levelosLevel=30 //oversold levelminimalBars=5 //minimal count of bars where RSI is ob or osminBarBetween = 4maxBarBetween = 16noLowerThan = 60noHigherThan = 40// --- end of settingsirsi = rsi[RSIp]ob = irsi>obLevelos = irsi<osLevelif ob thenif not ob[1] thenmaxrsi = 0maxprice = 0firstobbar = barindexendifmaxrsi=max(maxrsi,irsi)maxprice=max(maxprice,high)if maxrsi<>maxrsi[1] thenmaxrsibar=barindexendifendifif os thenif not os[1] thenminrsi = 100minprice = close*100firstosbar = barindexendifminrsi=min(minrsi,irsi)minprice=min(minprice,low)if minrsi<>minrsi[1] thenminrsibar=barindexendifendifdivsell=0if irsi crosses under obLevel then//verif divergencebarcount=maxrsibar-oldmaxrsibardiv = maxprice>oldmaxprice and maxrsi<oldmaxrsi and (barindex-firstobbar)>=minimalBars and barcount>=minbarbetween and barcount<=maxbarbetween and summation[max(1,barcount)](irsi<noLowerThan)=0if div then//drawsegment(oldmaxrsibar,oldmaxrsi,maxrsibar,maxrsi) coloured(200,0,0)//drawarrowdown(maxrsibar,maxrsi) coloured(200,0,0)divsell=osLevelendifoldmaxrsi = maxrsioldmaxprice = maxpriceoldmaxrsibar = maxrsibarendifdivbuy=0if irsi crosses over osLevel then//verif divergencebarcount=minrsibar-oldminrsibardiv = minprice<oldminprice and minrsi>oldminrsi and (barindex-firstosbar)>=minimalBars and barcount>=minbarbetween and barcount<=maxbarbetween and summation[max(1,barcount)](irsi>noHigherThan)=0if div then//drawsegment(oldminrsibar,oldminrsi,minrsibar,minrsi) coloured(0,200,0)//drawarrowup(minrsibar,minrsi) coloured(0,200,0)divbuy=osLevelendifoldminrsi = minrsioldminprice = minpriceoldminrsibar = minrsibarendifscreener[divbuy or divsell](max(divbuy,divsell))De plus te serait-il également possible de regarder cet indicateur (même code)
Lui aussi ne marche pas super sur la V11
Divergence indicateur123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384//PRC_AnotherRSIdivergences | indicator//25.02.2019//Nicolas @ www.prorealcode.com//Sharing ProRealTime knowledge// --- settingsRSIp=14 //RSI periodobLevel=70 //overbought levelosLevel=30 //oversold levelminimalBars=5 //minimal count of bars where RSI is ob or osminBarBetween = 4maxBarBetween = 16noLowerThan = 60noHigherThan = 40// --- end of settingsirsi = rsi[RSIp]ob = irsi>obLevelos = irsi<osLevelif ob thenif not ob[1] thenmaxrsi = 0maxprice = 0firstobbar = barindexendifmaxrsi=max(maxrsi,irsi)maxprice=max(maxprice,high)if maxrsi<>maxrsi[1] thenmaxrsibar=barindexendifendifif os thenif not os[1] thenminrsi = 100minprice = close*100firstosbar = barindexendifminrsi=min(minrsi,irsi)minprice=min(minprice,low)if minrsi<>minrsi[1] thenminrsibar=barindexendifendifdivsell=0if irsi crosses under obLevel then//verif divergencebarcount=minrsibar-oldminrsibardiv = maxprice>oldmaxprice and maxrsi<oldmaxrsi and (barindex-firstobbar)>=minimalBars and barcount>=minbarbetween and barcount<=maxbarbetween and summation[max(1,barcount)](irsi<noLowerThan)=0if div thendrawsegment(oldmaxrsibar,oldmaxrsi,maxrsibar,maxrsi) coloured(200,0,0)drawarrowdown(maxrsibar,maxrsi) coloured(200,0,0)divsell=osLevelendifoldmaxrsi = maxrsioldmaxprice = maxpriceoldmaxrsibar = maxrsibarendifdivbuy=0if irsi crosses over osLevel then//verif divergencebarcount=minrsibar-oldminrsibardiv = minprice<oldminprice and minrsi>oldminrsi and (barindex-firstosbar)>=minimalBars and barcount>=minbarbetween and barcount<=maxbarbetween and summation[max(1,barcount)](irsi>noHigherThan)=0if div thendrawsegment(oldminrsibar,oldminrsi,minrsibar,minrsi) coloured(0,200,0)drawarrowup(minrsibar,minrsi) coloured(0,200,0)divbuy=osLevelendifoldminrsi = minrsioldminprice = minpriceoldminrsibar = minrsibarendifreturn irsi style(line,2) as "RSI",obLevel coloured(168,168,168) style(dottedline,1) as "overbought level", osLevel coloured(168,168,168) style(dottedline,1) as "oversold level", divsell coloured(200,0,0) style(histogram) as "sell divergence", divbuy coloured(0,200,0) style(histogram) as "buy divergence"Merci beaucoup pour ton aide
05/22/2020 at 6:41 AM #132740Bonjour, oui idem pour moi. Il ne donne aucune valeur. J’ai essayé sur toutes les unités de temps. Il m’en a donné une seule cette semaine et qui a disparu quelques secondes après.
Peut-être s’inspirer du screener “RSI Divergences Scr” qui lui fonctionne très bien, mis à part qu’il donne également des valeurs sans le signal fléché, mais pas grave il fonctionne quand même.
Je ne m’y connais pas suffisamment pour transformer un indicateur complexe en screener.
05/28/2020 at 12:57 PM #13360706/04/2020 at 5:50 PM #13458806/07/2020 at 10:13 AM #134962L’indicateur fonctionne correctement (voir image), les conditions que vous utilisez sont tellement restrictives que presque aucune divergence n’est détecté. A nouveau, cet indicateur utilise quelques conditions précises (quantité de chandeliers entre les 2 points, niveaux minimum/maximum de chaque point, etc..) qu’il faut bien intégrer pour comprendre comment il fonctionne.
Avec des paramètres très (trop) simpliste, on trouve un tas de “divergences”:
12345678910// --- settingsRSIp=14 //RSI periodobLevel=55 //overbought levelosLevel=45 //oversold levelminimalBars=1 //minimal count of bars where RSI is ob or osminBarBetween = 1maxBarBetween = 30noLowerThan = 30noHigherThan = 70// --- end of settingsA vous d’affiner selon vos recherches, bon courage 😉
06/07/2020 at 1:53 PM #135033 -
AuthorPosts
Find exclusive trading pro-tools on