Bonsoir,
Je cherche a créer le code d’un indicateur qui me permette de retourner le plus haut sur (i) périodes de l’indicateur Bollinger BandWidth (20,2).
Après un long weekend pluvieux a me pencher sur le problème et de nombreuses tentatives de codage, il semble que rien ne marche d’où ma demande sur ce forum qui je l’espère saura me permettre de franchir ce pas si tant est que cela soit possible.
Fort des derniers apprentissages que j’ai pu trouver sur ce site, le dernier code que j’ai testé est le suivant:
period=10
maxBW=0
for i = 0 to period
maxBW=maxBW+max(BollingerBandWidth[20](medianPrice))(i)
next
return maxBW
et il semble que le software refuse la formulation en ligne 5 caractére 52…qui a une idée sur le défaut du codage? Est il possible de retourner des valeurs passées de l’indicateur en question?
Merci et a vous lire 😉
Bonsoir,
>> Pour la clarté des messages sur les forums de ProRealCode, merci d’utiliser le bouton “insert PRT code” pour séparer la partie texte de la partie code, merci ! <<
period=10
a=highest[period](BollingerBandWidth[20](medianPrice))
//
// si on veut avec les clotures au lieu du medianprice:
// a=highest[period](BollingerBandWidth[20](close))
return a as "le plus haut sur period de l'indicateur Bollinger Bandwidth"
Pour compléter la réponse, max compare 2 valeurs l’une à l’autre pour trouver la plus grande, tandis qu’highest va trouver la plus grande valeur d’une seule variable sur un nombre de bougies précédentes (ici nombre de bougies entre crochets donné par la valeur de period). Donc une première erreur de syntaxe dans la ligne 5 était dans l’usage de max qui ne va pas comparer i valeurs d’un seul coup. Une deuxième erreur de syntaxe était dans la façon d’utiliser i, qui aurait dû être entre [ ] si on avait voulu indiquer la i-ème valeur précédente de bollingerbandwidth. Mais la boucle étant inutile grâce au mot-clé highest, la syntaxe en [i] n’est pas reprise dans la solution. Enfin faire la somme sur les i=1 to period occurences n’aurait pas donné la plus grande valeur des bollingerbandwidth, mais leur somme sur “period” périodes.
Bonsoir et merci pour le code Noobywan ainsi que pour l’explication qui va avec. Ça fonctionne a merveille et j’avoue qu’une fois qu’on voit la simplicité du code on est en droit de se demander comment cela a pu me poser autant de soucis lol