Tendência Seguindo a Estratégia Baseada no Oscilador de Banda de Bollinger

Autora:ChaoZhang, Data: 2023-10-10 10:54:05
Tags:

Resumo

A ideia central desta estratégia é identificar tendências usando o oscilador de banda de Bollinger e entrar em posições quando as tendências mudam.

Estratégia lógica

A estratégia usa principalmente o Oscilador de Banda de Bollinger para determinar a direção da tendência.

BBO = (Close - N-day Moving Average) / (2 * N-day Standard Deviation) * 100

Onde o Close é o preço de fechamento, a média móvel de N dias é a média móvel simples de N dias do close e o desvio padrão de N dias é o desvio padrão de N dias do close.

A estratégia primeiro calcula o BBO de 65 dias, depois a média móvel de 30 dias do BBO. Quando o BBO cruza acima de sua MA, ele sinaliza uma tendência de alta, vá longo. Quando o BBO cruza abaixo de sua MA, ele sinaliza uma tendência de queda, vá curto.

Após a entrada de posições, a estratégia usa stop loss móvel, take profit fixo e stop loss traseiro para controlar riscos e bloquear lucros.

Vantagens

  1. O BBO é sensível às mudanças de tendência.

  2. O movimento de stop loss controla a perda individual quando a tendência se inverte.

  3. Os lucros fixos se bloqueiam nos lucros quando a tendência é correcta.

  4. Trailing stop loss maximiza o lucro para um único comércio.

  5. A estratégia é simples e intuitiva.

Riscos

  1. O BBO pode dar sinais falsos.

  2. A saída de stop loss/take profit imprópria pode ser prematura demais.

  3. Os lucros fixos podem sair muito cedo, perdendo mais lucros.

  4. Os parâmetros precisam de otimização para evitar o sobreajuste.

  5. Utilização potencialmente elevada, capital suficiente necessário.

Optimização

  1. Optimize os parâmetros BBO e MA.

  2. Teste diferentes métodos de stop loss como ATR, percentagem.

  3. Otimizar o lucro fixo e o stop loss.

  4. Adicione filtros para evitar sinais falsos.

  5. Otimizar o dimensionamento das posições para diferentes mercados.

  6. Teste a eficácia da estratégia em todos os instrumentos e prazos.

Conclusão

A estratégia identifica mudanças de tendência usando BBO e entra em posições de acordo. Controla riscos e bloqueia lucros com vários tipos de saídas. A estratégia é simples e intuitiva, mas requer otimização de parâmetros. Pode ter um bom desempenho em mercados de tendência se otimizado corretamente, mas sinais falsos e saídas inadequadas precisam ser observados.


/*backtest
start: 2022-10-03 00:00:00
end: 2023-10-09 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title="Strategy CCT Bollinger Band Oscillator", shorttitle="Hornkild", calc_on_order_fills=true, default_qty_type=strategy.percent_of_equity, default_qty_value=50, overlay=false)

length=input(65)
lengthMA=input(30)
src=close
cctbbo=100 * ( src + 2*stdev( src, length) - sma( src, length ) ) / ( 4 * stdev( src, length ) )

//ul=hline(100, color=gray, editable=true)
//ll=hline(0, color=gray)
//hline(50, color=gray)
//fill(ul,ll, color=blue)
//plot(cctbbo, color=blue, linewidth=2)
//plot(ema(cctbbo, lengthMA), color=red)

TP = input(0) * 10
SL = input(0) * 10
TS = input(1) * 10
TO = input(10) * 10
CQ = 100

TPP = (TP > 0) ? TP : na
SLP = (SL > 0) ? SL : na
TSP = (TS > 0) ? TS : na
TOP = (TO > 0) ? TO : na

longCondition = crossover(cctbbo, ema(cctbbo, lengthMA))
if (longCondition)
    strategy.entry("Long", strategy.long)


shortCondition = crossunder(cctbbo, ema(cctbbo, lengthMA))
if (shortCondition)
    strategy.entry("Short", strategy.short)

strategy.exit("Close Short", "Short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP, trail_offset=TOP)
strategy.exit("Close Long", "Long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP, trail_offset=TOP)

Mais.