Defparam cumulateorders = False
possize = 1
SlowP = 26 //Periods of Slow Average
FastP = 12 //Periods of Fast Average
AvgType = 1 //Average Type (0=sma, 1=ema, 2=wma,…)
Percentage = 1 //1=calculate Percentage 0=no percentage
SignalP = 9 //Periods of Signal Average
//
SlowP = max(1,min(999,SlowP)) //1 – 999
FastP = max(1,min(999,FastP)) //1 – 999
AvgType = max(0,min(6,AvgType)) //0 – 6
Percentage = max(0,min(1,Percentage)) //1=Percentage 0=NO Percentage
SignalP = max(1,min(999,FastP)) //1 – 999
SlowAvg = Average[SlowP,AvgType](close)
FastAvg = Average[FastP,AvgType](close)
ppo = FastAvg – SlowAvg
IF Percentage THEN
ppo = (ppo / SlowAvg) * 100
ENDIF
SignalLine = Average[SignalP,AvgType](ppo)
Histo = Ppo – SignalLine
If longonmarket and histo < 0 or ppo 0 or ppo > SignalLine Then
Exitshort at market
EndIf
If ppo > 0 and signalLine SignalLine Then
If shortonmarket Then
Exitshort at market
EndIf
Buy possize contract at market
ElsIf ppo 0 and ppo < SignalLine Then
If longonmarket Then
Sell at market
EndIf
Sellshort possize contract at market
EndIf
bonjour,
j’ai récupéré le code ci-joint sur Prorealcode. Mais j’ai deux problèmes
- je pense que le code comporte des bugs (ex deux signalLine à la suite, des “pop 0” sans signe entre les “ppo” et “0” en gras dans le code).
- J’ai essayé de corriger (j’ai supprimé un “signalLine”, j’ai mis (au pif” un signe “=” dans le premier ppo et un signe “<” dans le deuxième ppo. Et j’ai testé en back test : je me suis aperçu que le code ne permettait que des entrées “long” autrement dit ne fait qu’acheter”.
Quelqu’un aurait il le code corrigé ? Merci d’avance.
Où se trouve le code original sur le site stp ? Cela me permettrait de mieux comprendre le problème, merci.
Je pense que c’est le symbole < (inférieure) qui est à ajouter à ces endroits.
Bonsoir,
en oute, ligne 25 il est fait référence à un “exitshort” : or, à la ligne 24, il y a un “if longonmarket” donc ce serait plutôt un “sell” non ?