Nicolas

Another RSI divergences indicator

Category: Indicators By: Nicolas Created: February 25, 2019, 4:45 PM
February 25, 2019, 4:45 PM
Indicators
27 Comments
Another RSI divergences indicator

This new indicator to detect RSI divergences simply use the last two crossovers with the overbought or oversold areas of the oscillator.

Divergences are plotted on the RSI and signals are given with red/green histogram, in order to use them in a trading system.

The variable “minimalBars” is a filter to limit the detection of divergences when the RSI remains under the oversold zone or above the overbought zone of this minimum period.

//PRC_AnotherRSIdivergences | indicator
//25.02.2019
//Nicolas @ www.prorealcode.com
//Sharing ProRealTime knowledge

// --- settings
RSIp=14 //RSI period
obLevel=70 //overbought level
osLevel=30 //oversold level
minimalBars=5 //minimal count of bars where RSI is ob or os
// --- end of settings

irsi = rsi[RSIp]
ob = irsi>obLevel
os = irsi<osLevel

if ob then
 if not ob[1] then
  maxrsi = 0
  maxprice = 0
  firstobbar = barindex
 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
  firstosbar = barindex
 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 and (barindex-firstobbar)>=minimalBars
 if div then
  drawsegment(oldmaxrsibar,oldmaxrsi,maxrsibar,maxrsi) coloured(200,0,0)
  drawarrowdown(maxrsibar,maxrsi) coloured(200,0,0)
  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 and (barindex-firstosbar)>=minimalBars
 if div then
  drawsegment(oldminrsibar,oldminrsi,minrsibar,minrsi) coloured(0,200,0)
  drawarrowup(minrsibar,minrsi) coloured(0,200,0)
  divbuy=osLevel
 endif
 oldminrsi = minrsi
 oldminprice = minprice
 oldminrsibar = minrsibar
endif

return 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"

 

Download
Filename: PRC_AnotherRSIdivergences-1.itf
Downloads: 1177
Nicolas
Nicolas Legend
I created ProRealCode because I believe in the power of shared knowledge. I spend my time coding new tools and helping members solve complex problems. If you are stuck on a code or need a fresh perspective on a strategy, I am always willing to help. Welcome to the community!
Author’s Profile

Comments

Sébi
5 years ago
#

Intéressant. Merci pour ce partage Nicolas. L'indicateur ne considère pas les divergences si le rsi ne passe pas sous 70 entre deux sommets, ou au-dessus de 30 entre deux creux. Du coup, il passe à côté de nombreuses divergences pertinentes sur le Dax en 5 min timeframe, par exemple. Et sans ces conditions, il semble impossible de considérer un sommet (ou creux) comme 'old' afin de pouvoir comparer des sommets (ou creux) successifs.

Nicolas
5 years ago
#

ok, pour les divergences chacun voit midi à sa porte je dirai :) Vu qu'il n'y a pas de formulation empirique.. Cet indicateur correspond à une demande particulière qui avait été faite sur le forum à l'époque. En cas de besoin pour des modifications, il faut passer par le forum svp.

gibouille5
5 years ago
#

Bonjour Nicolas Un grand merci pour tout votre travail. Votre code est exactement celui que je recherchais. Par contre je dois mal faire qqchose car le logiciel m'indique ne pas vouloir les mots drawsegment (48) et drawarrowdown (49). Il m'indique aussi le endif de la ligne 55 comme erreur. bien à vous

Nicolas
5 years ago
#

Il s'agit d'un indicateur compatible avec PRT v11 uniquement. Pour éviter les erreurs de copier/coller, je vous suggère de télécharger le fichier itf et de l'importer dans la plateforme.

minhbui
6 years ago
#

Hello, Do you have the code for divergence William%R? thank you

ALE
ALE
6 years ago
#

Hello I created this indicator that allows you to detect divergences on the following oscillators: RSI-MACD-CCI-STO-SMI-ADX-MOM-MFI-OsMA-TRIX https://www.automatictrading.it/product/all-in-one-divergences-engine-indicator-v11/

Djo
Djo
6 years ago
#

Bonjour Nicolas, merci pour cet indicateur, je suis un fan des divergences ! Il semble y avoir un soucis avec l'indicateur cela dit,, j'ai exploré l'historique sur un graph pour voir comment cela se présentait graphiquement et à ma grande surprise il ne détecte que les divergences baissières. Alors qu'il y en a des haussières sur l'historique étudié. Toutes les cases dans les paramètres sont cochés, mais peut être ai-je raté quelque chose ?

Nicolas
6 years ago
#

Il s'agit d'un indicateur de divergences particulier qui répond à certains critères, voir ce sujet: https://www.prorealcode.com/topic/creation-indicateur-divergence-rsi-particulier/ Les divergences haussières constatées sont-elles en relation avec ces critères ?

learn451
6 years ago
#

Bonjour, Il ne veut pas les paramètres drawsegment(oldminrsibar,oldminrsi,minrsibar,minrsi) coloured(0,200,0) et drawarrowup(minrsibar,minrsi) coloured(0,200,0) quand je prends l'itf il me met qu'il l'importe mais il n'est pas dans la liste. Pouvez vous m'aider svp

RV1974
7 years ago
#

Bonjour, j'ai une erreur Erreur sur ligne 48,49 62,63 et Fin de code non reconnu

Nicolas
7 years ago
#

Afin d'éviter les mauvais copier/coller, il est toujours plus simple de télécharger le fichier ITF et de l'importer directement dans la plateforme.

max-trading
7 years ago
#

Bonjour Nicolas, Merci pour cet indicateur que j'utilise tous les jours. Existe t-il en screener ? Serait-il possible de rajouter les fonctionnalités suivantes lorsqu'une divergence est détectée? - indiquer le nombre de bougies que la divergence contient - tracer un segment à partir du niveau le plus bas du rsi dans la divergence (pour une divergence baissière) - indiquer d'une flèche lorsque le rsi croise ce segment qui sera le signal de vente de la divergence - retirer si possible les histogrammes rouges et vertes Merci encore pour votre travail

Nicolas
7 years ago
#

Merci de poster la demande dans le forum des indicateurs prorealtime. Avec un titre explicite et ces explications.

Zigo
7 years ago
#

Ik heb hetzelfde gedaan met de SMI met OB =40 en OS = -40. De codes voor beide CCI en SMI zijn beschikbaar.

Zigo
7 years ago
#

Magnifique, j'ai remplacer le RSI (70 et 30) par CCI avec les valeur+100 et -100 pour les valeurs de CCI. L'avance est le CCI est un petit peu plus vite. (Excuse pour le langue)

Denis Arguman
7 years ago
#

Malheureusement ce code ne passe pas en v11.1 Erreur sur ligne 48,49 62,63 et Fin de code non reconnu :(

Nicolas
7 years ago
#

Mauvais copier/coller? Veuillez télécharger le fichier .itf et l'importer dans la plateforme, je pense que ça devrait fonctionner !

Juanjo
8 years ago
#

Hola Muchas Gracias por el indicador, ...queria preguntar si se podria añadir la visualizacion de divergencias ocultas.. gracias

Hugues Bontour
8 years ago
#

Hello Nicolas, Bravo pour cette indicateur incroyable ;-) Est-il possible de rajouter trois conditions à cette indicateur ? 1: le nombre de bougie minimu(4) et maximum (16) 2: le RSI ne décende pas en dessous de 60 pour une div baissière entre les deux plus haut et ne monte pas au dessus de 40 pour une div haussière entre les deux plus bas. 3: le deuxième plus haut ou plus bas n'est pas forcément en sur-vente ou sur-achat. Si tu peux faire cela l'indicateur serait une tuerie :-p Merci d'avance pour ta réponse Bien cordialement

Hugues Bontour
8 years ago
#

Ok ;-) Normalement c'est au bon endroit. Merci à toi

Nicolas
8 years ago
#

Merci de formuler la demande dans un nouveau sujet dans le forum approprié.

ben1004
8 years ago
#

Merci ;)

ben1004
8 years ago
#

Bonjour Nicolas...connaissez vous sur le blog, un code pour les divergences stochastique ? si oui je suis preneur ! merci d'avance...et bon travail...

Nicolas
8 years ago
#

Oui il y en a vraiment beaucoup, il faut chercher un peu sur le site avec Google ou le moteur de recherches interne du site. Bonne pêche !

philvm69
8 years ago
#

Merci beaucoup Nicolas, très utile car présent sur indicateur. Si tu as la possibilité de retravailler le MACD de la même façon, je suis preneur Merci bcp

Nicolas
8 years ago
#

Le MACD n'est pas un indicateur borné, donc la technique employée ici ne conviendrait pas. On pourrait cependant utiliser le croisement avec la ligne de signal pour marquer les points hauts et bas. Sinon, cet autre indicateur existe déjà dans la bibliothèque : https://www.prorealcode.com/prorealtime-indicators/macd-divergences-on-price-and-indicator/ A voir si il te convient.

swapping
8 years ago
#

Parfait Nicolas, du très bon travail car les divergences sont toujours intéressantes à exploiter sur n'importe quel actif donc , je prends ;)

ProRealCode ProRealCode
Loading...