Bonjour,
J’essais de créer ces indicateurs mais j’ai ceux-ci existent déjà mais je n’arrive pas à les trouver dans la liste des indicateurs.
Pouvez-vous m’aider?
Merci d’avance
Pour répondre à la question sur le changement de tendance de l’indicateur PRT Bands (passage du rouge ou vert ou vice-versa). C’est simplement le Close qui croise la bande supérieure ou inférieure, mais il faut au préalable savoir si nous étions baissier ou haussier.
Dans l’exemple ci-dessous, on détecte cette inversion de tendance pour colorier le fond du graphique en fonction de “trend” (1=haussier ; -1=baissier), la variable “signal” renvoi l’instant précis où la tendance s’inverse donc utile pour ceux qui veulent screener ce signal de départ de trend following.
up = PRTBandsUp
dn = PRTBandsDown
if close crosses over up and trend<=0 then //le prix casse la bande supérieure
trend=1 //tendance haussière
r=0
g=255
elsif close crosses under dn and trend>=0 then //le prix casse la bande inférieure
trend=-1 //tendance baissière
r=255
g=0
endif
signal = trend<>trend[1] //signal d'inversion de tendance
backgroundcolor(r,g,0,50) //coloris le fond du graphique avec la couleur de la tendance
return signal style(histogram) as "inversion de tendance", trend coloured(r,g,0) as "direction tendance"
J’ai ajouté cet exemple dans la page de l’instruction PRTBANDSUP
Merci Nicolas !
C’est bien plus simple que ce que j’allais chercher.
Comme quoi il me manque des réflexes basiques en programmation…
Sur la base de cet indicateur, du coup, il est très facile de programmer un screener de marché, et même d’y adjoindre d’autres conditions pour essayer d’éliminer les faux signaux…
Bonjour,
J’ai essayé de faire mon propre screener à partir de votre code, mais les résultats ne sont pas satisfaisants.
L’idée est donc de screener les valeurs qui passent d’un trend baissier à un trend haussier entre la dernière bougie et l’avant-dernière bougie.
up = PRTBandsUp
dn = PRTBandsDown
trend = 0
//le prix casse la bande supérieure
if close crosses over up and trend <= 0 then
trend = 1
elsif close crosses under dn and trend >= 0 then
trend = -1
endif
//signal d'inversion de tendance
signal = trend <> trend[1]
screener [trend = 1 and signal]
Mais dans les résultats je trouve des valeurs qui sont déjà en trend haussier depuis 5-6 bougies par exemple.
Où est mon erreur ?
Merci d’avance.
Bonsoir Olivier.
J’ai créé un screener tout simple, sur la base des indicateurs que tu as fournis hier (trend et signal).
A priori, ça marche, sauf que… le screener retourne (par exemple sur les actions du Nasdaq en hebdo), les valeurs pour lesquelles l’inversion de tendance s’est faite non pas cette semaine (se terminant ce dimanche 16/08), mais la semaine dernière !!! (j’ai joint un graphe pour exemple, mais toutes les valeurs présentent cette anomalie).
J’ai essayé d’expliciter davantage les conditions, rien n’y fait !!! Il y a quelque chose de bizarre que je n’arrive pas à capter…
Et j’ai repéré une autre étrangeté : si dans le screener (ou dans l’indicateur “Signal PRT Bands” tel que tu l’as fourni), je change les conditions sur la variable “trend” en inégalités strictes (non plus <=0 ou >=0, mais <0 ou >0), le screener (ou l’indicateur) ne retourne plus rien !
Alors que la variable “trend” ne peut être égale qu’à -1 ou +1, mais pas à 0 … Etrange
Merci par avance pour tes lumières !
// Screener sur Signal PRT Bands
// ********************************
if close crosses over PRTBandsUp and trend<=0 then //le prix casse la bande supérieure
trend=1 //tendance haussière
elsif close crosses under PRTBandsDown and trend>=0 then //le prix casse la bande inférieure
trend=-1 //tendance baissière
endif
signal = trend<>trend[1] //signal d'inversion de tendance
SignalOK = (signal AND trend>0)
SCREENER [SignalOK]
@nicolas2603
La variable trend ne doit pas être mise à 0 comme tu l’as fait à la ligne 4. Sinon à chaque bougie tu considères qu’il n’y a aucune tendance et donc on ne peut pas savoir si on passe du rouge au vert.. Cette ligne n’existe pas dans mon exemple 🙂
@patapouf
C’est le comportement normal si tu utilises une version “fin de journée” pour les listes que tu scannes avec ProScreener. Fin de journée = fin de semaine si tu lances le screener en données hebdomadaires.
Merci, en supprimant la ligne d’initialisation, ça fonctionne bien mieux !
Merci Nicolas.
Donc ça voudrait dire que pour les marchés US, je ne peux pas avoir les résultats d’un scan hebdo avant le lundi matin 6H ? (dimanche minuit heure de New York) ? Pourtant la bourse est fermée depuis vendredi soir !
Vivement que ces instructions arrivent sur PRT Trading !
Bonjour Nicolas
Pour les inversions de tendance ne pourrait-on pas avoir des flèches UP and DOWN sur le graphe, les histos tels qu’ils sont dans le code écrase le chart et c’est pas top.
merci pour ton aide
Bonne journée.
@patapouf, oui c’est le fonctionnement si on ne paie pas les flux des bourses. Mais une bougie Weekly, c’est bien une semaine, donc pas le Lundi mais une semaine plus tard. ProScreener fonctionne en fin de journée / fin de semaine.
@supertiti, bien sûr que oui :
up = PRTBandsUp
dn = PRTBandsDown
if close crosses over up and trend<=0 then
trend=1
r=0
g=255
elsif close crosses under dn and trend>=0 then
trend=-1
r=255
g=0
endif
signal = trend<>trend[1] //tendance s'inverse
backgroundcolor(r,g,0,50)
if signal and trend>0 then
drawarrowup(barindex,prtbandsdown) coloured(r,g,0)
elsif signal and trend<0 then
drawarrowdown(barindex,prtbandsup) coloured(r,g,0)
endif
return
Cependant pour ne pas avoir le graphique qui s’écrase comme tu l’indiques, il suffit de choisir d’utiliser “l’échelle de prix uniquement” dans les options du prix.
merci Nicolas pour le code , cependant j’ai l’impression qu’il ne reflète que les “arrows down “, j’ai regardé sur plusieurs et c’est la même chose ?
Que pasa hombre ?
ça fonctionne de mon côté, tu es sûr que les flèches vertes ne se confondent pas avec les bougies sur tes graphiques ?
heureusement que je viens de m’acheter un écran 27″ !!!
Effectivement les flèches up se confondent avec les bougies.
Désolé pour le dérangement
Bonne après midi
jlmParticipant
New
bonjour,
j’ai quelques questions….
- est-ce qu’on a une idée de quand ce sera disponible sur IG? il y a bien prtbands de dispo, mais impossible de programmer….
- est-ce que les “Nouveau seuil haussier” seront accessible par programmation?
- est-ce que le changement “haussier/baissier” de l’indicateur PRTBandsShortTerm sera aussi disponible par programmation? en effet je n’ai pas trouvé comment obtenir cette info, elle n’est pas liée à un événement (des fois il y a retournement comme dans l’exemple https://www.prorealcode.com/documentation/prtbandsshortterm/ mais pas de changement “baissier/haussier”
- enfin est-ce que l’on aura aussi l’indicateur d’affaiblissement de tendance (même si ce dernier n’est pas le plus prioritaire pour moi actuellement…)
merci