comparaison calcul indicateur regression lineaire avec screener
Forums › ProRealTime forum Français › Support ProBuilder › comparaison calcul indicateur regression lineaire avec screener
- This topic has 13 replies, 2 voices, and was last updated 2 years ago by FATBOY2016.
-
-
06/10/2022 at 6:34 PM #195102
Hello ,
j’utilise un code d’indicateur de NICOLAS , au bout duquel j’ai ajouté une condition pour pouvoir
comparer les résultats de l’indicateur et ceux d’un Screener dans lequel je le fais tourner .
En l’occurence , l’indicateur trace un canal autour d’une linear regression , et je souhaite effectuer des calculs
basés sur la valeur des lignes Hautes et Basses dudit canal .
L’indicateur fonctionne très bien , et l’étiquette indique la valeur exacte qui est tracée pour chacune des lignes .
MAIS le même indic placé dans un SCREENER indique une valeur fausse , et qui plus est aléatoire .
Et en découle un calcul FAUX pour C1 .
Comment faire exécuter le bon calcul par le SCREENER ?
(Par ailleurs , je rencontre le même problème en plus marqué avec d’autres indicateurs , toujours une
fois intégrés dans un SCREENER)
Ci-dessous ledit SCREENER avec le code de l’indicateur de NICOLAS et ma question au bout :
Ici , le CRITERIA du SCREENER n’affiche pas la valeur juste de la Ligne Basse du canal , telle que
le même indicateur la donne dans la fenêtre graphique
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108/////////////////////////////////////////////////TIMEFRAME(Daily)REM Condition VOLUME minimum souhaitéREM Capital échangé par UT JourCapEchUT = Volume*Close // en €MM22BarCour15mnCapEchUT = ( (Average[22](CapEchUT)[0] * 0.61) / 34 ) // pour avoir la moyenne "barres courantes" en 15 minutesREM : Mini accepté : 10 000 € / 15 minutes )CondTRI = MM22BarCour15mnCapEchUT > 15000 // mini 10 000 € échangés par 15 mn///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////PRC_Std and Ste LinRegChannel | indicator//Standard Deviation and Standard Error//Linear Regression Channel//12.03.2019//Nicolas @ www.prorealcode.com//Sharing ProRealTime knowledge///////defparam drawonlastbaronly=true///////defparam calculateonlastbars=1000// --- settingslookback= 50 //channel period // 200 // 265 // 57 // 53 // 22 // 50ChannelType = 2 //1= Standard Deviation ; 2= Standard Erro // 1NbDeviation = 1.5 //Deviation multiplier // 1 // 1.5///////colorRed = 255 // 255///////colorGreen = 0 // 255///////colorBlue = 0 // 0// --- end of settingssumx = 0sumy = 0sumxy = 0sumx2 = 0for cmpt = lookback downto 0 dotmpx = cmpttmpy = close[cmpt]sumy = sumy+tmpysumx = sumx+tmpxsumx2 = sumx2 + (tmpx*tmpx)sumxy = sumxy + (tmpy*tmpx)nextn = lookback+1if (sumx2 = sumx * sumx) then // protection to avoid infinite valuesb = sumxy - sumx * sumyelseb = (n * sumxy - sumx * sumy) / (n * sumx2 - sumx * sumx)endifa = (sumy - b * sumx) / n///////drawsegment(barindex[lookback],a+b*lookback,barindex,a+b*0) coloured(colorRed,colorGreen,colorBlue)STYLE(DottedLine,4)//channelif ChannelType = 1 then //Standard Deviationdat = std[lookback]*NbDeviationelsedat = ste[lookback]*NbDeviationendif///////drawsegment(barindex[lookback],(a+b*lookback)+dat,barindex,a+b*0+dat) coloured(colorRed,colorGreen,colorBlue)STYLE(DottedLine,4)///////drawsegment(barindex[lookback],(a+b*lookback)-dat,barindex,a+b*0-dat) coloured(colorRed,colorGreen,colorBlue)STYLE(DottedLine,4)///////returnREM : Affichage des points d'arrivée des Lignes Hautes et Basses du Canal//return (a+b*0+dat) AS "Arrivée Ligne Haute Canal" , (a+b*0-dat) AS "Arrivée Ligne Haute Canal"/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Ajouts persoREM : Calcul du Point d'Arrivée de la Ligne Haute du CanalArrivLignHteCan = a+b*0+datREM : Calcul du Point d'Arrivée de la Ligne Basse du CanalArrivLignBasCan = a+b*0-datREM : Calcul de la Hauteur du Canal en EuroHtCanEuro = ArrivLignHteCan - ArrivLignBasCanREM : Cours compris entre Ligne Basse du Canal et les 20 % de la Hauteur du Canal au-dessusC1 = (Close > ArrivLignBasCan) AND ( Close < (ArrivLignBasCan + (HtCanEuro * 0.2) ) )IF C1=1 THENCRITERIA = ArrivLignBasCan // permet de comparer avec les résultats et tracés de l'indicateurENDIF////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////SCREENER[C1 AND CondTri](CRITERIA AS "LignBsCan")06/13/2022 at 9:00 AM #195188Merci de créer un sujet spécifique pour chaque demande et de ne pas poster à la file dans des sujets hors contextes. J’ai scindé ta demande dans un nouveau sujet.
Pour le canal de regression linéaire, tu te compliques la tâche.
Le code pour obtenir la valeur du canal sur la période courante se résume à :
12canalhaut = linearregression[lookback]+std[lookback]*NbDeviationcanalbas = linearregression[lookback]-std[lookback]*NbDeviation06/14/2022 at 11:03 AM #195252Bonjour Nicolas ,
merci pour ta réponse , mais , j’ai mal formulé ma question :
Le problème que je rencontre est que le SCREENER ne trouve pas le même résultat que l’indicateur
quand on parle du dernier point connu des lignes du Canal :
exemple : aujourd’hui , en journalier , sur DASSAULT SYSTEMES , l’indicateur donne 34.104 comme valeur du dernier
point connu de la Ligne Basse du Canal ( ce qui est juste et correspond au tracé de l’indicateur ) , alors que le SCREENER ,
à travers CRITERIA , affiche 33.086 .
Et de là , fait des calculs de position de la valeur par rapport au canal qui sont faux dans la même proportion .
L’écart avec la VRAIE VALEUR pouvant selon les valeurs aller jusqu’à 30 % …
Vois-tu une solution ?
Merci encore
06/14/2022 at 12:03 PM #195258Avec ces codes, j’obtiens les mêmes valeurs, tu pourras ajouter tes conditions dans le screener si tu le souhaites (bien sûr, il faut un abonnement avec données temps réel).
indicateur1234567lookback = 50ChannelType = 2 //1= Standard Deviation ; 2= Standard Erro // 1NbDeviation = 1.5 //Deviation multiplier // 1 // 1.5canalhaut = linearregression[lookback]+ste[lookback]*NbDeviationcanalbas = linearregression[lookback]-ste[lookback]*NbDeviationreturn canalhaut,canalbasscreener123456lookback = 50NbDeviation = 1.5 //Deviation multiplier // 1 // 1.5//canalhaut = linearregression[lookback]+ste[lookback]*NbDeviationcanalbas = linearregression[lookback]-ste[lookback]*NbDeviationscreener(canalbas)06/14/2022 at 1:48 PM #195263Encore une fois merci pour ta réactivité ,
mais …
Les valeurs affichées par l’indicateur et le screener diffèrent .
Je ne comprends pas pourquoi chez toi ça afficherait correctement et pas chez moi .
As-tu une idée d’où pourrait provenir l’erreur du screener ?
06/15/2022 at 3:56 PM #19533206/15/2022 at 11:08 PM #195359Bonsoir ,
je te remercie vivement de t’intéresser à mon problème , car vraiment je cale .
Je suis abonné en flux temps réels , pour env 110 € / mois …
06/16/2022 at 8:59 AM #19537906/16/2022 at 9:08 AM #195382Bonjour , j’ai bien sûr essayé tes codes , mais le problème reste le même .
de ton côté , avec tes codes , tu obtiens les 2 mêmes résultats ?
06/16/2022 at 9:21 AM #19538406/16/2022 at 1:16 PM #195422Je n’y comprends rien , moi je te parle , sur mes écrans , de différences allant jusqu’à 30 % , qui me faussent tous mes calculs ultérieurs
06/16/2022 at 4:52 PM #19544106/16/2022 at 7:04 PM #195447Bonsoir ,
je te dis ça ce WE , jusqu’à dimanche je suis surbook .
merci encore .
a +
06/24/2022 at 10:32 AM #196000Bonjour NICOLAS ,
je te retourne 2 Captures d’écran concernant ( exemple ) HERMES :
avec tes codes , on obtient , pour la ligne basse du canal :
Indicateur : 516.85
Screener : 519.47
l’écart est incompréhensible , et le phénomène est encore accentué avec d’autres codes perso ,
qui eux aussi fonctionnent à la perfection en tant qu’indicateurs , mais qui une fois transposés en screeners
présentent des résultats encore plus éloignés de ceux calculés par les indicateurs .
Merci pour ton aide
-
AuthorPosts
Find exclusive trading pro-tools on