Bonjour Ivan
Je lis souvent vos posts merci pour le partage !!
Je pense que vous avez raison le problème doit être sur [Barindex-valeurBarLongOrder]. Ce que j’essaie de faire c’est qu’une fois mes conditions remplies sur un barre “valeurBarLongOrder” J’attend que le high de cette bar soit casse en placant tous les jours un stop price ert chose important sans que le low de cette par soit casse par le bas ce qui invalidera tout le set up
J’utilise également le low précédent cette bar pour définir mon stop et mon risk et donc ma quantite. Peut etre que je devrais simplement enregistré les high et low précédent cette bar .
Voila l’idée.
if (OrdreLongTrigger = 1 and OrdreLongTrigger[1] = 0) THEN
OrderLongToReplaceTrigger = 1
valeurBarLongOrder = BarIndex
endif
if OrderLongToReplaceTrigger = 1 and BarIndex<>valeurBarLongOrder and (lowest[Barindex-valeurBarLongOrder](close) < low[Barindex-valeurBarLongOrder]) THEN
OrderLongToReplaceTrigger = 0
endif
//graph OrderLongToReplaceTrigger
//graphonprice low[Barindex-valeurBarLongOrder]
// on replace l’order stop si le high du T1 n’a pas été franchi par un autre High
// on n’est pas Long car dans la boucle
// et il faut que aucun order a cette bar soit généré plus haut
//high[Barindex-valeurBarLongOrder] est la première valeur ou l’order à été trigger T1 en général (voir si plusieurs valueur il faudraut peut etre prendre la dernier ou //le plus haut high ?
// highest[Barindex-valeurBarLongOrder](high) est le plus haut high apres ce T1
if OrderLongToReplaceTrigger = 1 and OrdreLongTrigger = 0 and lowest[Barindex-valeurBarLongOrder](close) > low[Barindex-valeurBarLongOrder] then
Risk = (high[Barindex-valeurBarLongOrder]-low[Barindex-valeurBarLongOrder+1])*pointvalue
RiskperTrade = 0.02
capital = 17200+STRATEGYPROFIT
maxquantiteRiskTrade= round((RiskperTrade*capital)/risk)
if (Time > 1172001 and Time < 215901) then
depositI = 2500
maxquantitedepositI = floor(capital/depositI)
quantiteLongI = min(maxquantiteRiskTrade,maxquantitedepositI)
//graph quantiteLong
BUY quantiteLongI contract AT high[Barindex-valeurBarLongOrder] STOP
SET STOP PRICE low[Barindex-valeurBarLongOrder]
else
deposit = 3500
maxquantitedeposit = floor(capital/deposit)
quantiteLong = min(maxquantiteRiskTrade,maxquantitedeposit)
BUY quantiteLong contract AT high[Barindex-valeurBarLongOrder] STOP
SET STOP PRICE low[Barindex-valeurBarLongOrder]
endif