
이 전략은 평행선의 트렌드 판단 기능을 최대한 활용하고 부린띠의 오버 바이 오버 세를 판단하고, T3 평평한 평행선 필터 흔들림을 보조하여, 트렌드 전환이 발생했을 때 조기에 모양을 판단하고 경기장에 들어가기 위해, 흔들림 영역에서 부린띠를 사용하여 오버 바이 오버 세 지역을 식별하여 역전 작업을 수행하고, 초단선 거래를 실현한다.
이 전략은 주로 세 개의 평균선을 사용하여 트렌드를 식별하고 거래 신호 판단을 한다. 첫째는 T3 평균선이며, 여러 차례의 지수 평형으로 파동 작용을 하며, 가격 변동을 효과적으로 필터링하여 트렌드 방향을 판단한다. 그 다음은 중기 평균선이며, 여기에 길이가 20의 SMA 평균선이 사용되어 중기 트렌드 방향을 판단한다. 마지막으로 빠르고 느린 평균선이며, 각각 길이가 50 및 200의 T3 평균선이 사용되며, 빠른 선은 느린 선보다 크고 상승 추세를 나타냅니다. 그렇지 않으면 하향 추세를 나타냅니다.
거래 신호의 판단은, 중기 평균선이 황금포크 발생했을 때 상승 추세와 결합하여 더 많이 하고, 중기 평균선이 사다리 발생했을 때 하향 추세와 결합하여 공백을 하는 것이다. 또한, 브린띠를 사용하여 하향 궤도를 판단하는 경우도 있다. 가격이 상향 궤도를 돌파할 경우 정지를 고려하고, 하향 궤도를 돌파할 경우 손실을 고려한다.
구체적으로 말하면, 중기 평균 선이 중기 T3 평균 선을 통과하고, 빠른 선이 느린 선보다 크면, 중기 평균 선이 중기 평균 선 아래로 T3 평균 선을 통과하면 상쇄를 고려한다. 중기 평균 선이 중기 평균 선 아래로 T3 평균 선을 통과하고, 빠른 선이 느린 선보다 작으면, 중기 평균 선이 중기 평균 선 아래로 T3 평균 선을 통과하면 상쇄를 고려한다.
최적화 방법:
이 전략은 전체적으로, 평행선을 이용하여 체계적으로 트렌드를 판단하고, 브린띠를 이용하여 과매매 지역을 식별할 수 있으며, 트렌드가 전환될 때 시시각에 형태를 판단할 수 있으며, 위험을 효과적으로 제어할 수 있다. 그러나 파라미터 조정 및 최적화에 주의를 기울여야만 전략의 효과를 발휘할 수 있다. 추세 강도 지표, 변동률 지표, 그리고 모바일 중지 기술과 추가적으로 결합하면 전략을 더 탄력하고 지능적으로 만들 수 있다.
/*backtest
start: 2023-10-25 00:00:00
end: 2023-11-01 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(shorttitle="BB T3 Strategy", title="BB T3 Strategy", overlay=true)
//T3
b = 0.7
c1 = -b*b*b
c2 = 3*b*b+3*b*b*b
c3 = -6*b*b-3*b-3*b*b*b
c4 = 1+3*b+b*b*b+3*b*b
t3(len) => c1 * ema(ema(ema(ema(ema(ema(close, len), len), len), len), len), len) + c2 * ema(ema(ema(ema(ema(close, len), len), len), len), len) + c3 * ema(ema(ema(ema(close, len), len), len), len) + c4 * ema(ema(ema(close, len), len), len)
//T3 end
length = input(20, minval=1)
mult = input(2.5, minval=0.001, maxval=50, title="StdDev")
basis = t3(length)
basisDev = t3(length/10)
dev = mult * stdev(basisDev,length)
upper = basis + dev
lower = basis - dev
offset = input(0, "Offset", type = input.integer, minval = -500, maxval = 500)
plot(basis, "Basis", color=#872323, offset = offset)
p1 = plot(upper, "Upper", color=color.teal, offset = offset)
p2 = plot(lower, "Lower", color=color.teal, offset = offset)
fill(p1, p2, title = "Background", color=#198787, transp=95)
stoploss = input(true, "Stop Loss")
basisSma = sma(close, length)
p3 = plot(basisSma, color=color.blue, title="MA", offset=offset)
fastT3 = t3(50)
slowT3 = t3(200)
crossUp = crossover(basisSma, basis)
crossDown = crossunder(basisSma, basis)
bollBounce = crossover(close, upper)
bollReject = crossunder(close, lower)
underBasis = crossunder(close, basis)
overBasis = crossover(close, basis)
trendUp = fastT3 > slowT3
trendDown = fastT3 < slowT3
strategy.entry("long", strategy.long, when=(trendUp and crossUp), stop=(stoploss ? high+syminfo.mintick : na))
strategy.close("long", when=(bollBounce or crossDown or underBasis))
strategy.entry("short", strategy.short, when=(trendDown and crossDown), stop=(stoploss ? low-syminfo.mintick : na))
strategy.close("short", when=(bollReject or crossUp or overBasis))