Retournement MACD
Forums › ProRealTime forum Français › Support ProScreener › Retournement MACD
- This topic has 10 replies, 3 voices, and was last updated 5 years ago by finplus.
-
-
12/17/2018 at 7:58 PM #87324
Bonsoir,
à partir de l’indicateur ci-dessous, je souhaiterai un screener qui m’identifie les situations suivants :
– croisement à la hausse de la ligne de signal par le macd lorsque celui-ci se trouve en dessous de la ligne basse (O-STDD) si j’ai tout compris
– croisement à la baisse de la ligne de signal par le macd lorsque celui-ci se trouve au dessus de la ligne haute (STDU) si j’ai tout compris là aussi.
voici le screener à partir du code pris sur le forum et retravaillé avec l’aide de Nicolas.
1234567891011121314151617181920212223242526272829303132333435pc=12pl=26ps=9p=13//periodos EISaa=exponentialaverage[p](close)cc=MACD[pc,pl,ps](close)// --- nicolasperiodSTD = 500coeffSTD = 8// --- fin nicolasif aa > aa[1] and cc>cc[1] Thendd =ccelsedd=0endifif aa<aa[1] and cc < cc[1] thenee=ccelseee=0endifREM MACDhh=(exponentialaverage[pc](close) - exponentialaverage[pl](close))REM Signalhh1=exponentialaverage[ps](hh)stdu = std[periodSTD](dd)*coeffSTDstdd = std[periodSTD](ee)*coeffSTDhausse = (hh crosses over hh1) and (hh < stdd)baisse = (hh crosses under hh1) and (hh > stdu)screener [hausse or baisse]le problème est qu’il ne me renvoie pas les bonnes informations….
12/18/2018 at 9:35 AM #87343Je n’ai pas testé mais je pense que le problème vient de “periodSTD = 500”, ProScreener étant limité à 255 bars d’historique, il faudrait baisser cette période à une valeur inférieure. Cela devrait fonctionner ensuite, merci de confirmer.
12/18/2018 at 7:11 PM #87393Bonsoir,
j’ai donc modifié le screener comme suit :
1234567891011121314151617181920212223242526272829303132333435pc=12pl=26ps=9p=13//periodos EISaa=exponentialaverage[p](close)cc=MACD[pc,pl,ps](close)// --- nicolasperiodSTD = 200coeffSTD = 8// --- fin nicolasif aa > aa[1] and cc>cc[1] Thendd =ccelsedd=0endifif aa<aa[1] and cc < cc[1] thenee=ccelseee=0endifREM MACDhh=(exponentialaverage[pc](close) - exponentialaverage[pl](close))REM Signalhh1=exponentialaverage[ps](hh)stdu = std[periodSTD](dd)*coeffSTDstdd = std[periodSTD](ee)*coeffSTDhausse = (hh crosses over hh1) and (hh < stdd)baisse = (hh crosses under hh1) and (hh > stdu)screener [hausse or baisse]et le résultat en pièce jointe : pas concluant sauf si je me suis trompé quelque part.
il me ressort le dax alors que le MACD croise bien la ligne de signal mais au-dessus de la ligne du bas.
12/18/2018 at 7:32 PM #87395Pour ajouter du code , veuillez utiliser le bouton <> “insert PRT code”. Merci.
12/18/2018 at 7:38 PM #87396En complément de mon dernier post, j’ai fait un second trimestre en ne reprenant que le croisement du signal par le macd et j’obtiens beaucoup plus de résultats. Ce qui me laisse à penser que le code du screener ci-dessus va dans la bonne direction mais que subsiste un problème puisqu’il me renvoie bien un croisement du signal par le macd mais pas au bon endroit.
12/19/2018 at 10:15 AM #8742112/19/2018 at 9:05 PM #8748812/19/2018 at 9:44 PM #87489ci-joint capture d’écran USD CAD unité de temps 1 heure signalé par le screener (copie du code joint) comme en retournement sauf que si le MACD croise bien le signal, ce n’est ni au-dessous de la ligne basse ni au dessus de la ligne haute.
Je ne vois pas où est le problème dans le code du screener…
12/20/2018 at 9:49 AM #87507Le code de l’indicateur original que j’ai fabriqué pour obtenir les lignes de volatilité haute et basse (stdd et stdu) n’est pas bien recopié dans ton screener, à mon avis.
Je n’ai pas regardé, mais je pense que les lignes 29 et 30 devraient être remplacé par:
12stdu = 0+std[periodSTD](dd)*coeffSTDstdd = 0-std[periodSTD](ee)*coeffSTDPuisque l’oscillateur navigue autour de son centre, le niveau 0, les bandes haute et basse doivent être également situées de part et d’autre.
12/21/2018 at 5:35 PM #8757412/21/2018 at 7:05 PM #87575 -
AuthorPosts
Find exclusive trading pro-tools on