Bonjour,
J’aimerais coder un indicateur de divergence RSI mais un peu particulier (enfin je pense), du moins je n’arrive pas à le coder comme je l’aimerai et celui qui existe dans la plateforme ne me donne pas les signaux que j’aimerais qu’il donne et il n’est pas paramétrable en ce sens.
L’explication en vidéo sur graphique sera sans doute plus parlante 🙂
[youtube]https://youtu.be/rPILlVCLisw[/youtube]
Je vous remercie d’avance pour votre temps et votre intérêt.
Est ce que quelqu’un à visionner ma vidéo (elle ne prend que 5 minutes) et est en mesure de m’aider ?
Merci d’avance.
Je l’ai visionné en partie, j’ai été très pris cette fin de semaine, j’y regarderai plus en détail la semaine prochaine, sans réponse de ma part, merci de me le rappeler gentiment 😉
Je te remercie beaucoup.
Je ne savais pas si tu avais vu le message c’est pour ça que je faisais la demande.
Merci
Merci pour la vidéo, très bien expliquée et très claire ! J’ai codé l’indicateur de divergences RSI comme tu le souhaitais, voir pièces jointes.
Si tu valides, je l’ajouterai à la library, merci.
Ho magnifique un tout grand merci.
Il est quasi parfait 🙂
j’ai remarqué ce genre de signal (voir image)
Dans l’exemple pour le signal achat, il indique un signal pour un pic sous la zone 30 et ressort directement (ovale bleu) alors que les prix eux n’ont pas fait de nouveaux plus bas. Il aurait du prendre la zone suivante entourée de ronds rouges.
Serait-il possible d’ajouter une variable qui permettrait de définir le nombre de période ou le RSI doit rester au minimum en survente ou en surachat, afin de filtrer un peu les signaux car j’observe que quand il n’y a juste qu’une incursion d’une bougie, le signal est moins pertinent.
En te remerciant d’avance.
Sur cet exemple, le prix a bien fait un nouveau plus bas entre les 2 derniers pics du RSI.
Quelle est la valeur de la période du RSI dans ton exemple ? J’en ai besoin pour reproduire tes exemples, merci.
Ci-joint la nouvelle version avec un nouveau paramètre “minimalBars” pour vérifier que le RSI a été en territoire overbought ou oversold à minima de X.
Ca devient une petite merveille 🙂
J’ai encore peut être une chose que je vois de temps en temps.
Il s’agit, comme repris sur l’image, de divergence qui ne sont pas signalées, je présume car il y a un pic intermédiaire qui n’a pas rempli les conditions. Est ce possible que l’indicateur réussisse à se dire comme celui-là ne convient pas, je garde toujours le précédent plus haut RSI en mémoire pour le comparer au suivant ? Cela nous ferais peut être manquer une divergence avec le pic intermédiaire dans d’autres cas sans doute … Verrais tu quelque chose en plus qui pourrait l’améliorer.
Une variable sur le taux de pénétration de la bougie signal par rapport à la précédente (je pense que dans le code c’est d’office 100 %, c’est à dire la cassure du plus bas, mais serait il intéressant de prendre en compte une pénétration qui peut varier ? En gros pour savoir définir une simple pénétrante ou un avalement de la bougie ?
Que penses tu de l’indicateur ?
Que penses tu de l’indicateur ?
Rien de particulier, je suis très pragmatique avec les divergences, ça reste une simple désynchronisation du calcul de RSI (ou autres oscillateurs) limité à X périodes contre le prix qui est une série de données continue sans limites, ni périodes.
On peut toujours ajouter des filtres complémentaires mais à mon sens que tu ne seras jamais complètement satisfait 🙂 Par ailleurs, que signifierai une divergence entre un indicateur calculé sur 14 périodes et une divergence du prix ayant lieu avec une quantité de chandeliers bien plus importante ? Le prix finira toujours par s’infléchir, ou se relever donc ça signifierai donner raison à une divergence qui n’existe pas vraiment au final, alors autant utiliser un croisement de moyennes mobiles dans ce cas ..
Ok je te remercie pour ta vision de la chose et pour se petit bijoux.
Après aucun soucis pour la publication, si il peut servir à d’autres personnes, que du bonheur 😉
Je viens de l’ajouter à notre bibliothèque d’indicateurs: Another RSI divergences indicator
Merci Nicolas. C’est beau !
J’essaie de “convertir” cet indicateur en stratégie mais j’ai quelques messages d’erreurs.
Voici le (ton) code ci-dessous. J’ai inséré les lignes 56 et 72 pour les signaux d’achats et de ventes sans succès.
Puis-je demander un coup de pouce à la communauté?
Merci 😉
//PRC_AnotherRSIdivergences | indicator to Strategy
//25.02.2019
//Nicolas @ www.prorealcode.com
//Sharing ProRealTime knowledge
// Definition of code parameters
DEFPARAM CumulateOrders = False
DEFPARAM FLATBEFORE = 100000
DEFPARAM FLATAFTER = 171500
noEntryBeforeTime = 100000
timeEnterBefore = time >= noEntryBeforeTime
noEntryAfterTime = 163000
timeEnterAfter = time < noEntryAfterTime
daysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0
// --- settings
RSIp=14
obLevel=70
osLevel=30
// --- end of settings
irsi = rsi[RSIp]
ob = irsi>obLevel
os = irsi<osLevel
if ob then
if not ob[1] then
maxrsi = 0
maxprice = 0
endif
maxrsi=max(maxrsi,irsi)
maxprice=max(maxprice,high)
if maxrsi<>maxrsi[1] then
maxrsibar=barindex
endif
endif
if os then
if not os[1] then
minrsi = 100
minprice = close*100
endif
minrsi=min(minrsi,irsi)
minprice=min(minprice,low)
if minrsi<>minrsi[1] then
minrsibar=barindex
endif
endif
divsell=0
if irsi crosses under obLevel then
//verif divergence
div = maxprice>oldmaxprice and maxrsi<oldmaxrsi
//Sellshort order here perhaps instead of 2 Draw lines ??
if div AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry then
SELLSHORT 1 CONTRACT AT MARKET
divsell=osLevel
endif
oldmaxrsi = maxrsi
oldmaxprice = maxprice
oldmaxrsibar = maxrsibar
endif
divbuy=0
if irsi crosses over osLevel then
//verif divergence
div = minprice<oldminprice and minrsi>oldminrsi
//Buy order here instead of the 2 draw lines
if div AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry then
BUY 1 CONTRACT AT MARKET
ENDIF
divbuy=osLevel
endif
oldminrsi = minrsi
oldminprice = minprice
oldminrsibar = minrsibar
//return irsi style(line,2),obLevel coloured(168,168,168) style(dottedline,1), osLevel coloured(168,168,168) style(dottedline,1), divsell coloured(200,0,0) style(histogram), divbuy coloured(0,200,0) style(histogram)
SET STOP %LOSS 0.5
SET TARGET %PROFIT 0.5
En effet ces variables ne sont plus utiles dans une stratégie de trading automatique, cependant les variables divsell et divbuy avaient pourtant été créées pour ! Puisque les divergences n’étaient que graphique dans l’indicateur, j’avais ajouté ces histogrammes pour les récupérer avec un CALL par exemple. Bref, pas grave, dans ton cas, il suffirait de supprimer les lignes qui font mentionnent ces variables.
Bonjour Nicolas,
Je me permets de revenir vers toi concernant l’indicateur. J’ai pris un peu plus de temps pour le regarder et j’ai trouvé pas mal de bon signaux qui ne sont pas donnés et je ne comprend pas pourquoi.
Cf l’image jointe.
Peux tu m’aider à résoudre cela ?
En te remerciant d’avance.