Bonjour, mon problème est de ne pas pouvoir stocker le prix à un instant donner, par exemple si je fais:
var1 = 0
If indicator1 = 5 then
var1 = close
endif
et que après avec un autre indicateur j’achète ou je vend peut importe, et que je lui dit:
si close = var1
alors je revend ou j’achète aussi peut importe
il ne vas jamais se finir
je voudrais juste pouvoir stocker dans une variable le prix quand je le veut,
merci d’avance pour vos réponses.
Je comprend pas toutes les fonctions du tableau, donc je demande si quelqu’un sait, en gros mon code serait:
indicator1 = …
var1 = indicator1 faisant quelque chose
var2 = indicateur2 faisant quelque chose
if var 2 then
stocker la valeur du prix dans un tableau (exemple: $var)
et à chaque fois la mettre à la fin du tableau
endif
if var1 then
buy 1 contract at market
endif
if close = le dernière valeur du tableau ($var) then
sell at market
Ne doublez pas les messages. Posez votre question une seule fois et dans un seul forum. Tous les messages doubles seront supprimés de toute façon, donc poster plusieurs fois la même question vous fera perdre votre propre temps et ne vous donnera pas de réponse plus rapidement. La double publication crée juste de la confusion dans les forums.
Merci 🙂
Si j’ai bien compris ton exemple, tu n’es pas obligé d’utiliser un tableau, puisque tu utilises toujours la dernière valeur dans ta condition de fermeture de trade. Tu peux utiliser un variable classique qui gardera sa valeur tant que tu ne lui en affectera pas une autre.
Bonjour, oui j’ai pensé au début à le mettre dans une variable, le problème c’est que si je fais ex:
cf = (indicator faisant qqch)
var = 0
if cf then
var = close
endif
et après je met mes conditions de ventes donc :
if close = var then
sell at market
endif
mais du coup ça fait, if close = close, et non : if close (maintenant) = close (de quand mon indicateur à fait quelque chose)
et bien dans ce cas, bouge ton code de sortie avant celui qui renseigne la nouvelle valeur dans “var” 🙂
Ca me prend toujours la valeur de var après… pas grave, je continuerais à la main en attendant, merci quand même pour les réponses
Dommage on peut y arriver, mais il faudrait poster un code entier pour que je puisse t’indiquer comment procéder exactement.
Oui je pense que vous y arriverez vite mais j’aimerais garder mon code 🙂 , sinon se serais possible de : dès que mon indicateur fait quelque chose, je trace une ligne sur le graphique du prix et si il le refait, j’enlève cette ligne et je la remet la ou est le prix. Puis si il y a mais condition d’achat alors j’achète et si le prix touche la ligne alors je vend. C’est un peut la même chose mais je sais pas faire autrement, le code serais comme ça (pour le problème d’avant, en simplifié):
indicateur1 = …
var1 = indicateur1 crosses under …
var2 = indicateur1 crosses over …
if var1 then
var = close
endif
if var2 then
buy 1 contract at market
endif
if close = var then
sell at market
(var est une valeur antérieur de close)
Ok, si je peux pas avoir mieux, je vais essayer de faire avec un autre exemple 😀
avec le code ci-dessous, tu remarques que VAR ne change que lorsque VAR1 est vérifié vrai (en rouge dans l’image jointe).
defparam cumulateorders=false
indicateur1 = rsi[14]
var1 = indicateur1 crosses under 50
var2 = indicateur1 crosses over 50
if close = var then
sell at market
endif
if var1 then
var = close
endif
if var2 then
buy 1 contract at market
endif
graphonprice var
graph var1
Bien sûr la condition de sortie avec “close = var” n’est jamais vérifié puisqu’il sera très très très rare que le prix soit à nouveau égal à un ancien prix au point près.
Je n’y arrive toujours pas …, j’ai d’autre idées en tête donc je remet celle là à quand j’aurais plus de connaissance, merci quand même pour votre temps.