Bonjour à tous,
Nous savons que nous avons la possibilité d’afficher un graphique en ticks et cela dans le nombre de ticks que nous voulons.
Ce que je recherche, c’est de créer un graphique en ticks mais avec comme contrainte :
– à chaque fois que le prix corrige de X ticks défini auparavant, le système crée une nouvelle bougie avec évidemment la même contrainte.
– tant que le prix ne corrige pas du nombre de ticks voulu la bougie continue d’éxister.
Autrement dit un graphique TICK REVERSAL
Merci de votre aide
J’ai codé ce principe de “retracement bars” avec plusieurs options, dans ce sujet anglophone: https://www.prorealcode.com/topic/draw-vertical-segment-with-tick-only/
Magnifique
C’est exactement ce que je recherchais.
Je reposte ton code en dessous cela évite de le rechercher.
Avec une sauvegarde d’un premier essai
Merci
defparam drawonlastbaronly=true
//size = 10
//mode = 1 //1=mode line ; 0=mode bar
//scalemode = //1=in scale mode ; 0=no time scale
once s=size*pointsize
once iprice = close
if high>iprice+s then
while high>iprice+s do
iprice=iprice+s
if dir = -1 then //new bar
bar=bar+1
$iopen[bar]=$iclose[max(0,bar-1)]
$ibar[bar]=barindex
$icolor[bar]=1
else
$iclose[bar]=iprice
endif
dir = 1
r=0
g=255
wend
elsif low<iprice-s then
while low<iprice-s do
iprice=iprice-s
if dir = 1 then //new bar
bar=bar+1
$iopen[bar]=$iclose[max(0,bar-1)]
$ibar[bar]=barindex
$icolor[bar]=-1
else
$iclose[bar]=iprice
endif
dir = -1
r=255
g=0
wend
endif
if dir=1 then
iprice=max(iprice,high)
elsif dir=-1 then
iprice=min(iprice,low)
endif
$iclose[bar]=iprice
iline = undefined
iscale = undefined
if mode then
iline=iprice
else //plot bars
iscale = close
if islastbarupdate and bar>2 then
for i = bar downto 1 do
if scalemode then
offset = $ibar[i]
else
offset = barindex-(bar-i)
endif
if $icolor[i]=1 then
drawsegment(offset,$iopen[i],offset,$iclose[i]) style(line,2) coloured("green")
else
drawsegment(offset,$iopen[i],offset,$iclose[i]) style(line,2) coloured("crimson")
endif
next
endif
endif
return iline coloured(r,g,0) style(line,2), iscale coloured(0,0,0,0)
Voilà la force d’un graphique en ticks reversal.
Le graphique que vous voyez au plus haut est daté du 1 juin 2023 au plus haut et la clôture du 22/06/2023.
UN graphique 1MN classique serait, beaucoup plus étendu dans le temps et donc illisible.
NE PAS SE FIER au temps inscrit en bas , ce système n’a rien à faire du temps……………… DONC OUBLIER se qui se passe en bas en abscisse.
QU’EST CE QU’ON REMARQUE :
Les zones en bleu sont des singles prints
les zones en jaunes cerclés noirs : imbalance 4H
les zones en jaunes cerclés oranges : imbalance 30mn
la ligne bleue : VWAP
Et bien du coup le trading devient beaucoup plus facile.
NON ?
Le problème de ta capture d’écran c’est que les échelles sont du coup différente, entre ces nouveaux chandeliers et les indicateurs que appliques dessus.
Comme tu le stipules, il faut oublier le temps qui passe pour obtenir un graphique lisible, sauf que ton VWAP et tes zones d’imbalance sont bien liés à l’échelle du bas, alors que les bougies de mon indicateur ne le sont pas, donc tu peux très bien avoir un support VWAP sur des zones de prix où tu vois des bougies de mon indicateur alors que le prix n’était pas présent dans cette zone à ce moment là.
Bref, pour faire clair, tu mélanges 2 échelles différentes, c’est comme ci on traçait une courbe de température en degrés sur un graphique en fahrenheits.
Pour illustrer, voir ci-joint image qui affiche les bars ancrés sur le temps qui passe (scaleMode=1), comme tu le remarques une barre de retracement équivaut à de multiples chandeliers ordinaires. Si tu appliques le VWAP de la plateforme il se calculera sur les chandeliers classiques et non sur mon indicateur.
OUI c’est exact, et c’est justement ce que je recherche.
les imbalances ,vwap et singles print sont dessinés par rapport à un graphique PRIX 1 minute. Les imbalances sont dessinées et enlevées à la main, les singles automatiquement et la vwap reste.
Je ne cherche pas à dessiner ces éléments par rapport à l’indicateur REVERSAL.
De même, si je passe un ordre d’achat et de vente , les prises de positions vont se décaler dans le temps au fur et à mesure et ne correspondront à rien .
Par contre, tous les dessins à droite du prix (imbalance,vwap, et singles print) sont justes.
L’indicateur reversal me sert uniquement à une lecture plus condensée dans le temps.
Bonjour
Avez vous une methode pour definir le mode /scalmode/size
Je ne sais pas comment faire merci pour votre collaboration
Décommenter les lignes 3 à 5.
Merci pour votre reponse
j ai supprimer les lignes de 3 a 5 car je compremd que decommenter veux bien dire supprimer
mais le probleme persiste
Bonjour,
non il ne faut pas supprimer l’intégralité de ces lignes, mais seulement les // au début de chacune des 3 lignes.
Si “commenter” = ajouter des // en début d’une ligne, pour que le programme la considère comme un commentaire et non pas une instruction,
alors “décommenter” = l’action inverse : ôter les // en début de ligne pour que la ligne ne soit plus un commentaire, mais une instruction lue par le code.
Autrement dit, ces lignes passent de:
//size = 10
//mode = 1 //1=mode line ; 0=mode bar
//scalemode = //1=in scale mode ; 0=no time scale
à:
size = 10
mode = 1 //1=mode line ; 0=mode bar
scalemode = //1=in scale mode ; 0=no time scale
ce qui permet de définir les variables dans le code.
Si elles étaient en commentaire, c’est parce que son auteur les utilisaient probablement en paramètre externe, pour les définir depuis la fenêtre de propriétés, et le commentaire en rappellait leur mode d’emploi. Mais si on ne veut pas les modifier et qu’on ne sait pas créer de paramètres externes, le plus rapide reste de les décommenter.
De là, une fois les 3 lignes décommentées, size et mode sont définies, il reste à définir scalemode en choisissant de rajouter 0 ou 1 juste après scalemode= (et avant le commentaire restant “//1=in scale mode ; 0=no time scale“)
Merci pour vos efforts
Mais j ai supprimer les // a chaque ligne de 1 a 5 mais cela me met une erreur a la ligne 5
Je ne pense pas que ce code fontionne correctement
J ai repris intergralement vos indications
Cordialement
Desoler je n avais pas vu votre mail au sujet de la ligne 5
J ai charger l indicateur mais il ne m apporte pas les bougies reversal
Pa s de soucis je laisse tomber
Merci pour vos efforts
cordialement