ARGO 파동 돌파구 전략은 채널 돌파구를 기반으로 한 4 시간 파동 거래 전략이다. 이 전략은 부린 채널과 돌파구 원칙을 결합하여 4 시간 동안 거래 신호를 형성하여 큰 가격 변동을 포착한다.
이 전략은 먼저 일정 주기 동안의 최고 가격과 최저 가격으로 채널을 형성하는 범위를 계산한다. 그 다음 채널의 중간선과 채널의 위아래 경로의 브린 라인을 계산한다. 채널의 방향이 전환될 때, 구매 및 판매 신호를 형성한다.
구체적으로, 전략은 먼저 N주기 (대저 47주기) 내의 최고 가격 upBound와 최저 가격 downBound를 계산하여 통로의 상하 경계를 형성한다. 그리고는 오차율 point (대저 1) 와 용량차 tol (대저 1000) 을 설정하고, 통로의 상하 경계를 BoundUp와 하하 경계를 BoundDown으로 계산한다. 가격이 상하 경로를 통과할 때 구매 신호를 생성하고, 가격이 하하 경로를 통과할 때 판매 신호를 생성한다.
또한, 이 전략은 스톱스트로프 조건을 설정한다. 스톱스트로프를 하단 라인 근처에 구매하고, 스톱스트로프를 상단 라인 근처에 판매한다.
ARGO 파장 돌파 전략은 브린 통로와 돌파 원칙을 이용한 4시간 중장선 장선 거래 전략이다. 이 전략은 단선 거래에 비해 가격 중장선 장선 추세의 전환점을 더 중요하게 파악한다. 매개 변수를 최적화하여, 다양한 시장 환경에 적응할 수 있으며, 위험을 통제하는 전제하에 큰 거래 수익을 얻을 수 있다. 이 전략은 추세를 고려하면서도 위험 통제를 중시하며, 추천되는 중장선 돌파 거래 전략이다.
/*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)