J'aimerais rendre moins sensible la définission d'un + haut ou + bas donc au lieu de 3 barres en dessous d'un plus haut passer à 4 voir plus et pareil pour un plus bas. Instinctivement, j'ai augmenter toutes les données liées au nombre 3 (en gras dans le code ci-dessous et le code modifié plus bas) puisque c'est la base du code (Je m'exprime rapidement en espérant que ceux qui connaissent Darvas comprendront sinon je détaillerais). Ca à l'air de fonctionner pour la premiere incrémentation mais au delà, certaines boites deviennent plus petites et l'allure ne me convient pas.
Je suis preneur de toutes remarques pour améliorer ce code et de code darvas différents de celui-ci.
J'ai un code pour Darvas pris sur hk-lisse:
k=48
once tth=undefined
once ttl=undefined
n=(k*2)-4
p=(n/2)-1
h1=dpo[n](high)
moyh=high-h1
hi=(moyh-moyh[1]+(high[p])/n)*n
hi=(round(hi*100))/100
l1=dpo[n](low)
moyl=low-l1
lo=(moyl-moyl[1]+(low[p])/n)*n
lo=(round(lo*100))/100
low1=(round(low*100))/100
high1=(round(high*100))/100
if barindex > 100 then
if box=1 and (high1>tth or low1<ttl) then
box=0
flag=0
endif
if box=0 and flag=0 and high1>=hi[46] and high1>=hi[45] and high1>=hi[44] then
th=high1
flag=1
endif
if box=0 and flag=1 then
for zz=0 to 44
if hi[47-zz-1]>th or hi[47-zz-2]>th or hi[47-zz-3]>th then
flag=0
break
endif
if lo[47-zz]<lo[47-zz-1] and lo[47-zz]<lo[47-zz-2] and lo[47-zz]<lo[47-zz-3] then
box=1
tth=th
ttl=lo[47-zz]
break
endif
next
endif
else
tth=undefined
ttl=undefined
endif
if box=1 then
ba=ttl
else
ba=tth
endif
return ba coloured by box-1, tth coloured by box-1, ttl coloured by box-1
Voici le nouveau code qui fonctionne pour une incrementation ou réduction de la sensibilité de 1:
Code : #
k=49
once tth=undefined
once ttl=undefined
n=(k*2)-4
p=(n/2)-1
h1=dpo[n](high)
moyh=high-h1
hi=(moyh-moyh[1]+(high[p])/n)*n
hi=(round(hi*100))/100
l1=dpo[n](low)
moyl=low-l1
lo=(moyl-moyl[1]+(low[p])/n)*n
lo=(round(lo*100))/100
low1=(round(low*100))/100
high1=(round(high*100))/100
if barindex > 100 then
if box=1 and (high1>tth or low1<ttl) then
box=0
flag=0
endif
if box=0 and flag=0 and high1>=hi[47] and high1>=hi[46] and high1>=hi[45] and high1>=hi[44] then
th=high1
flag=1
endif
if box=0 and flag=1 then
for zz=0 to 45
if hi[48-zz-1]>th or hi[48-zz-2]>th or hi[48-zz-3]>th or hi[48-zz-4]>th then
flag=0
break
endif
if lo[48-zz]<lo[48-zz-1] and lo[48-zz]<lo[48-zz-2] and lo[48-zz]<lo[48-zz-3] and lo[48-zz]<lo[48-zz-4]then
box=1
tth=th
ttl=lo[48-zz]
break
endif
next
endif
else
tth=undefined
ttl=undefined
endif
if box=1 then
ba=ttl
else
ba=tth
endif
return ba coloured by box-1, tth coloured by box-1, ttl coloured by box-1