La stratégie de rupture de la bande ARGO est une stratégie de négociation de bandes de 4 heures basée sur la rupture de la voie. La stratégie combine la voie de Boulder et le principe de la rupture pour former un signal de négociation sur une période de 4 heures afin de capturer les plus grandes fluctuations des prix.
La stratégie commence par calculer la portée des cours les plus élevés et les plus bas d’une période donnée. Elle est suivie par la calculation de la ligne médiane du cours et de la ligne de browning de la trajectoire ascendante et descendante du cours.
Plus précisément, la stratégie commence par calculer les prix maximaux upBound et minimaux downBound sur N cycles (default 47 cycles) pour former la limite supérieure et inférieure de la chaîne. Ensuite, elle définit un point de décalage (défault 1) et une tolérance (défault 1000) pour calculer la limite supérieure et inférieure de la chaîne.
En outre, la stratégie impose des conditions de stop-loss. L’achat d’un stop-loss est effectué près de la voie descendante, et la vente d’un stop-loss est effectuée près de la voie descendante. Le stop-loss est défini comme le ratio de profit/perte de l’entrée.
La stratégie de rupture de la bande ARGO est une stratégie de négociation de longue ligne moyenne de 4 heures utilisant le canal de Brin et le principe de la rupture. Par rapport à la négociation de courte ligne, cette stratégie accorde plus d’importance à la capture des points de basculement de la tendance de la longue ligne moyenne des prix.
/*backtest
start: 2023-01-01 00:00:00
end: 2023-10-06 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
// strategy("ARGO_BAND-STRATEGY", overlay=true,default_qty_value=10000,scale=true,initial_capital=100,currency=currency.USD)
// A 4hours Breakout Strategy work in progres..it's a starting point, thanks to all tradingview community
//How to use: test it only on gbpjpy 240 min, wait the end of the candle to place next order, red and blue dots are short and long stop orders, Targets are Upper and lowerBands. Test it and enjoy but use at your own risk..
//2016 © F.Peluso
risk=input(title="Risk", defval=1)
length = input(title="Length", minval=1, maxval=1000, defval=47)
stopBound=input(title="Previous",defval=10)
upBound = highest(high, length)
downBound = lowest(low, length)
point=1
tol=1000
stopT=input(title="Stop", defval=5,minval=1, maxval=5)
dev =input(title="Tolerance",defval=2,minval=1, maxval=5)
limitBoundUp=( highest(high, length))*(point-(dev/tol))
limitBoundDown=downBound/(point-(dev/tol))
plot(limitBoundUp[1],linewidth = 3,style = circles, color = navy,trackprice=true),transp=0
plot(limitBoundDown[1],linewidth = 3,style = circles, color = red,trackprice=true,transp=0)
mezzalinea=((upBound+downBound)/2)
// Color Bands
colo = ((close>limitBoundUp[1]) ? blue : (close<upBound[1]) ? white : na)
UpB = plot(upBound[1], title="Upper Bound", style=linebr, linewidth=1, color=colo)
DownB = plot(limitBoundUp[1] ,title="Lower Bound", style=linebr, linewidth=2, color=colo)
fill(UpB, DownB, color=colo, transp=90)
plot(limitBoundUp[2]/(point+(stopT/tol)),color=colo)
coloS = ((close<limitBoundDown[1]) ? red : (close>downBound[1]) ? white : na)
DB = plot(downBound[1], title="Upper Bound", style=linebr, linewidth=1, color=coloS)
DoB = plot(limitBoundDown[1] ,title="Lower Bound", style=linebr, linewidth=2, color=coloS)
fill(DB, DoB, color=coloS, transp=90)
plot(limitBoundDown[2]*(point+(stopT/tol)),color=coloS)
// Strategy
past=input(title="Past", defval=5)
buy=(crossover(close,limitBoundUp))
closebuy=cross(high[past],upBound[0])
stopbuy = limitBoundUp[2]/(point+(stopT/tol))
sell=crossunder(close,limitBoundDown)
closesell=cross(low[past],downBound[0])
if (not na(close[length]))
if (buy)
strategy.entry("ChBrkLE", strategy.long,stop=limitBoundUp - syminfo.mintick,comment="Long I")
strategy.close("ChBrkLE",when=closebuy)
if (not na(close[length]))
if (sell)
strategy.entry("ChBrkSE", strategy.short,stop=limitBoundDown + syminfo.mintick,comment="Short I")
strategy.close("ChBrkSE",when=closesell)
Target =input(0) * 10
Stop = input(90) * 10
Trailing = input(40) * 10
CQ = 100
TPP = (Target > 0) ? Target : na
SLP = (Stop > 0) ? Stop : na
TSP = (Trailing > 0) ? Trailing : na
strategy.exit("Out Short", "ChBrkSE", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)
strategy.exit("Out Long", "ChBrkLE", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)