MLParticipant
Average
Hi Nicolas!
Have you ever converted in Prorealtime language the center of gravity J Ehlers indicator? Below a mt4 link:
https://www.mql5.com/en/code/7068
Thanks a lot!
ML
Hy ML,
Here it is from french website of Sohocool, Ehlers Center of Gravity
// Centre de gravité John Ehlers by Sohocool
sum = 0
wgt = 0
b=(customclose) // défaut =medianprice
FOR i = 0 TO n - 1
sum = sum + (1 + i) * b[i]
wgt = wgt + b[i]
NEXT
IF wgt <> 0 THEN
cG =( - sum / wgt) + ( (n+1)/2)
ENDIF
RETURN cg as"centre gravité", cg[1] as "trigger", 0 as "zero"
// Variable :
// n = 10 par defaut
Bonjour Nicolas
J’ai repris le code pour le transformer en screener, avec une modification, détecter les croisements en date J et en J-1.
Le screener me renvoit plus de 600 résultats
Merci pour votre aide
// conditions strictes de Iliesco, seule adaptation : croisement en J et J – 1
//Signal d’achat : Croisement à la hausse du CGO, Cours situé au-dessus de la MM = intégralité de la journée de cotation qui coïncide avec le croisement se déroule au-dessus de la MMA (plus bas de la bougie au-dessus de la MMA) ; privilégier clôture supérieure à ouverture, doji accepté, mais pas de bougie rouge ; Cours le plus bas de la séance qui précède le signal soit en-dessous de la MMA
// Centre de gravité John Ehlers by Sohocool
n = 10
sum = 0
wgt = 0
b=(customclose) // défaut =medianprice
FOR i = 0 TO n – 1
sum = sum + (1 + i) * b[i]
wgt = wgt + b[i]
NEXT
IF wgt <> 0 THEN
cg =( – sum / wgt) + ( (n+1)/2)
ENDIF
centregravite = cg
trigger = cg[1]
centregraviteJmoinsun = centregravite[1]
triggerJmoinsun = trigger[1]
myAdaptativeMA = CALL “Adaptative MA”(close)
myAdaptativeMApreced = myAdaptativeMA[1]
// cas du crosiement en J
C1 = cg CROSSES OVER cg[1]
// cas du croisement en J-1, bougie J > MMA que ce soit clôture ou low
C2 = centregraviteJmoinsun CROSSES OVER triggerJmoinsun
// bougie J > MMA que ce soit clôture ou low
C3 = CLOSE > myAdaptativeMA and low >=myAdaptativeMA and close>=open
// et low bougie J-1 < MMA
C4 = Low[1]<= myAdaptativeMApreced
C5 = Low[2]<= myAdaptativeMApreced[1]
SCREENER ((C1 AND C3 AND C4) OR (C2 AND C3 AND C5))
Please speak English in the english forum and also to write code, please use the <> “insert PRT code” button.
Thank you.
Hello
I copied the code of COG to transform to a screener (see code, crosses for the day and the day before).
But the result is not correct : 600 cases, only the first are correct (verify the conditions)
Why the screener sends so lot of cases?
Thanks for your help
// Centre de gravité John Ehlers by Sohocool
n = 10
sum = 0
wgt = 0
b=(customclose) // défaut =medianprice
FOR i = 0 TO n - 1
sum = sum + (1 + i) * b[i]
wgt = wgt + b[i]
NEXT
IF wgt <> 0 THEN
cg =( - sum / wgt) + ( (n+1)/2)
ENDIF
centregravite = cg
trigger = cg[1]
centregraviteJmoinsun = centregravite[1]
triggerJmoinsun = trigger[1]
myAdaptativeMA = CALL "Adaptative MA"(close)
myAdaptativeMApreced = myAdaptativeMA[1]
// cas du crosiement en J
C1 = cg CROSSES OVER cg[1]
// cas du croisement en J-1, bougie J > MMA que ce soit clôture ou low
C2 = centregraviteJmoinsun CROSSES OVER triggerJmoinsun
// bougie J > MMA que ce soit clôture ou low
C3 = CLOSE > myAdaptativeMA and low >=myAdaptativeMA and close>=open
// et low bougie J-1 < MMA
C4 = Low[1]<= myAdaptativeMApreced
SCREENER ((C1 AND C3 AND C4) OR (C2 AND C3 AND C4))
Screener conditions must be in brackets, not in parenthesis:
SCREENER [(C1 AND C3 AND C4) OR (C2 AND C3 AND C4)]
Thanks Nicolas
A small mistake but a big effect !
@ Laurent31
Le screener me sort : la fonction adaptive ma n’existe pas ?
une idée ?
merci