Esta estratégia faz pleno uso do julgamento da tendência das médias móveis e do julgamento de sobrecompra / sobrevenda das Bandas de Bollinger. Com a suavização da média móvel T3, ele pode identificar a reversão da tendência em tempo hábil e entrar no mercado. Na zona de oscilação, ele usa as Bandas de Bollinger para identificar áreas de sobrecompra / sobrevenda para a negociação de contra-tendência. Assim, realiza a negociação de ultra curto prazo.
A estratégia usa principalmente três grupos de médias móveis para identificar a tendência e gerar sinais de negociação. A primeira é a média móvel T3, que pode filtrar as flutuações de preço através de suavização exponencial e julgar a direção da tendência. A segunda é a média móvel de médio prazo, aqui usa SMA de 20 períodos para determinar a tendência de médio prazo.
Os sinais de negociação são gerados quando a SMA de médio prazo cruza o T3 de médio prazo para cima combinando com uma tendência ascendente, vá longo. Quando a SMA de médio prazo cruza abaixo do T3 de médio prazo para baixo combinando com uma tendência descendente, vá curto. Além disso, as Bandas de Bollinger podem ser usadas para obter lucro e parar de perder. Se o preço atravessar a faixa superior, considere tirar lucro. Se o preço atravessar a faixa inferior, considere parar de perder.
Especificamente, a condição longa é o SMA médio atravessa o T3 médio para cima, e o MA rápido é maior que o MA lento. Se o preço atravessar a banda de Bollinger superior ou o SMA médio atravessar abaixo do T3, considere tirar lucro. A condição curta é o SMA médio atravessa abaixo do T3 médio para baixo, e o MA rápido é menor que o MA lento. Se o preço atravessar a banda de Bollinger inferior ou o SMA médio atravessar acima do T3, considere o stop loss.
Melhorias:
Em resumo, esta estratégia usa médias móveis sistematicamente para determinar a tendência e identifica os níveis de sobrecompra / sobrevenda com Bandas de Bollinger. Pode entrar no mercado em tempo hábil em inversões de tendência e também controla efetivamente os riscos.
/*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))