Bonsoir,
je souhaiterai un screener détectant la position du signal par rapport à la moyenne Kama 150 périodes (au dessus ou au dessous). les formules sont reproduites ci-dessous. Merci
//PRC_Linear Regression Candles
//version = 0
//15.03.24
//Iván González @ http://www.prorealcode.com
//Sharing ProRealTime knowledge
///////////////////////////////////////////////////////
//——————Inputs——————————
signallength = 11 //integer//Signal Smoothing
smasignal = 1 //boolean // Simple MA (Signal Line)
linreg = 1 //boolean//Linear Regression
linreglength = 11//integer//Linear Regression Length
//——————————————————
//————-Candle definition————————
if linreg then
bopen = LinearRegression[linreglength](open)
bhigh = LinearRegression[linreglength](high)
blow = LinearRegression[linreglength](low)
bclose = LinearRegression[linreglength](close)
else
bopen = open
bhigh = high
blow = low
bclose = close
endif
//——————————————————–
//—————Signal definition————————-
if smasignal then
signal = average[signallength](bclose)
else
signal = average[signallength,1](bclose)
endif
// parameters KAMA 150:
Period = 150
FastPeriod = 2
SlowPeriod = 50
Fastest = 2 / (FastPeriod + 1)
Slowest = 2 / (SlowPeriod + 1)
if barindex < Period+1 then
Kama=close
else
Num = abs(close-close[Period])
Den = summation[Period](abs(close-close[1]))
ER = Num / Den
Alpha = SQUARE(ER *(Fastest – Slowest )+ Slowest)
KAMA = (Alpha * Close) + ((1 -Alpha)* Kama[1])
endif
J’ai essayé tout simplement par exemple pour identifier la position du signal au dessus de la Kama 150 :
alert = signal > kama
mais bon ça ne donne rien de bon.
merci.
salut. Ici, vous avez le screener :
//PRC_Linear Regression Candles
//version = 0
//15.03.24
//Iván González @ www.prorealcode.com
//Sharing ProRealTime knowledge
///////////////////////////////////////////////////////
//------------------Inputs------------------------------
signallength = 11 //integer//Signal Smoothing
smasignal = 1 //boolean // Simple MA (Signal Line)
linreg = 1 //boolean//Linear Regression
linreglength = 11//integer//Linear Regression Length
//------------------------------------------------------
//-------------Candle definition------------------------
if linreg then
//bopen = LinearRegression[linreglength](open)
//bhigh = LinearRegression[linreglength](high)
//blow = LinearRegression[linreglength](low)
bclose = LinearRegression[linreglength](close)
else
//bopen = open
//bhigh = high
//blow = low
bclose = close
endif
//---------------------------------------------------------
//---------------Signal definition-------------------------
if smasignal then
signal = average[signallength](bclose)
else
signal = average[signallength,1](bclose)
endif
//---------------------------------------------------------
// parameters KAMA 150:
Period = 150
FastPeriod = 2
SlowPeriod = 50
Fastest = 2 / (FastPeriod + 1)
Slowest = 2 / (SlowPeriod + 1)
if barindex < Period+1 then
Kama=close
else
Num = abs(close-close[Period])
Den = summation[Period](abs(close-close[1]))
ER = Num / Den
Alpha = SQUARE(ER *(Fastest - Slowest )+ Slowest)
KAMA = (Alpha * Close) + ((1 -Alpha)* Kama[1])
endif
screener[signal crosses over KAMA]
Merci Ivan.
donc si je veux identifier les actifs pour lesquels la ligne de signal est au dessus de la KAMA 150, je remplace “crosses over” par “>” ?
Dans les faits, j’ai souvent des problèmes avec les screener de PRT quand il s’agit de déterminer la position d’un indicateur par rapport à l’indicateur KAMA. Pourtant, je sélectionne un historique de 10.000 unités.
Je ne comprends pas pourquoi.
Oui, changer en >. Le screener dans la version complète vous permet de charger 255 barres et dans la version premium 1024.