pdretrace
fibo0=DLOW(1)
fibo100=DHIGH(1)
fibo38=(fibo100-fibo0)*.628+fibo0
fibo50=(fibo100-fibo0)/2+fibo0
fibo62=(fibo100-fibo0)*.382+fibo0
RETURN fibo0 as "PDL", fibo100 as "PDH", fibo38 as "38.2%",fibo50 as "50%",fibo62 as "61.8%"
trendforce
REM Determinación de la fuerza de la tendencia alcista
trendA = (CLOSE - LOWEST[20](LOW)) / AVERAGETRUERANGE[10]
REM Determinación de la fuerza de la tendencia alcista
trendB = (HIGHEST[20](HIGH) - CLOSE) / AVERAGETRUERANGE[10]
RETURN 0,average[9]( trendA -trendB)
proiezione point shot
MM20 = Average[p](close)
// Détection du signal de base de déclenchement
If MM20[1] > MM20 Then
// MM20 à la baisse
Signal = -1
ElsIf MM20[1] < MM20 Then
// MM20 à la Hausse
Signal = 1
Else
Signal = 0
Endif
// Recherche des retracements
If Signal = -1 Then
// Raz des valeurs de comptage pour les Long
CompteLong = 0
// On essaye de cacher tous ces traits
Point0Long = MM20
Point100Long = MM20
RF23Long = MM20
RF38Long = MM20
RF50Long = MM20
RF61Long = MM20
// Définition du point 100%. Soit le point en contact avec la MM20
Point100Short = High[CompteShort]
// Recherche du point bas et supprime la division par zéro
If CompteShort = 0 Then
// Recherche du plus bas
Point0Short = Lowest[1](Low)
Elsif CompteShort <> 0 Then
// Recherche du plus bas
Point0Short = Lowest[CompteShort](Low)
Endif
// Retracements
RF23Short = (( point100Short - point0Short) * 0.236) + point0Short
RF38Short = (( point100Short - point0Short) * 0.382) + point0Short
RF50Short = (( point100Short - point0Short) * 0.5) + point0Short
RF61Short = (( point100Short - point0Short) * 0.618) + point0Short
CompteShort = CompteShort + 1
Elsif Signal = 1 Then
// Raz des valeurs de comptage pour les shorts
CompteShort = 0
// On essaye de cacher tous ces traits
Point0Short = MM20
Point100Short = MM20
RF23Short = MM20
RF38Short = MM20
RF50Short = MM20
RF61Short = MM20
// Défintion du point haut. Soit le point en contact avec la MM20
Point100Long = Low[CompteLong]
// Recherche du point haut et supprime la division par zéro
If CompteLong = 0 Then
// Recherche du plus bas
Point0Long = Highest[1](High)
Elsif CompteLong <> 0 Then
// Recherche du plus bas
Point0Long = Highest[CompteLong](High)
Endif
// Retracements
RF23Long = Point0Long - ( (Point0Long - Point100Long) * 0.236 )
RF38Long = Point0Long - ( (Point0Long - Point100Long) * 0.382 )
RF50Long = Point0Long - ( (Point0Long - Point100Long) * 0.5 )
RF61Long = Point0Long - ( (Point0Long - Point100Long) * 0.618 )
CompteLong = CompteLong + 1
Endif
Return Point100Short as "Point 100 Short", Point0Short coloured(255,50,50)as "Point 0 Short", RF23Short coloured(255,255,100) as "RF 23.6% Short", RF38Short as "RF 38.2% Short", RF50Short as "RF 50% Short", RF61Short coloured(255,0,255)as "RF 61.8% Short", Point100Long as "Point 100 Long", Point0Long coloured(50,255,50)as "Point 0 Long", RF23Long coloured(255,255,100) as "RF 23.6% Long", RF38Long as "RF 38.2% Long", RF50Long as "RF 50% Long", RF61Long coloured(255,0,255) as "RF 61.8% Long"
////////////////////////////////////////////////////////////
//////////////COMPOSITE MOMENTUM caruso///////////////////
////////////////////////////////////////////////////////////
rem Key formula
media3=average[3](Close)
media9=average[9](close)
Mom=exponentialaverage[1]((media3-media9)/media3)*100
diffMOM=MOM-MOM[1]
If MOM>MOM[1] then
temp1=diffMOM
else
temp1=0
endif
If MOM