Momentum e tendência seguindo estratégia dupla


Data de criação: 2024-01-22 17:04:36 última modificação: 2024-01-22 17:04:36
cópia: 0 Cliques: 614
1
focar em
1617
Seguidores

Momentum e tendência seguindo estratégia dupla

Visão geral

Esta estratégia combina dois indicadores, o índice de força relativa (RSI) e a faixa de Brin, para implementar uma lógica de posição de abertura e posição de dupla confirmação. A estratégia emite um sinal de negociação apenas quando o RSI e a faixa de Brin exibem sinais de sobrevenda ou sobrevenda ao mesmo tempo. Isso pode efetivamente reduzir os falsos sinais e aumentar a estabilidade da estratégia.

Princípio da estratégia

  1. RSI Indicador de Julgamento de Lógica
    • RSI acima de 45 é considerado um sinal de oversold
    • RSI abaixo de 55 é um sinal de sobrevenda
  2. Brin com a lógica do julgamento
    • Os preços subiram e desceram com o Brin, mas foram considerados como uma sobrevenda.
    • O que é um super-compra quando o preço do brinquedo é baixo?
  3. Lógica de dupla confirmação
    • Só é possível abrir uma posição a mais quando o RSI e o Brin mostram sinais de sobrevenda ao mesmo tempo
    • A posição será aberta somente quando o RSI e o Brin mostrarem sinais de sobrevenda ao mesmo tempo.

A lógica acima permite uma estratégia de abertura de posição de dupla confirmação estável.

Análise de vantagens

  1. O mecanismo de dupla confirmação pode filtrar o ruído das transações e evitar transações desnecessárias, reduzindo os custos de transação e aumentando a taxa de ganho.

  2. O indicador RSI é eficaz na identificação de tendências e reversões, e o indicador de correlação de Brin é eficaz na determinação de resistência de suporte.

  3. A configuração dos parâmetros é flexível, pode ser ajustada de acordo com diferentes variedades e preferências de negociação, e é altamente adaptável.

Análise de Riscos

  1. Em situações de turbulência, o RSI e o indicador de correlação podem emitir sinais errados simultaneamente, resultando em prejuízos desnecessários. A probabilidade de erro de julgamento pode ser reduzida com a otimização dos parâmetros.

  2. O mecanismo de dupla confirmação aumenta ligeiramente o atraso de entrada e pode perder oportunidades de negociação em linhas muito curtas. Não é adequado para estratégias altamente sensíveis ao atraso.

  3. A estratégia é muito sensível aos parâmetros, e a configuração inadequada dos parâmetros pode reduzir drasticamente a taxa de retorno. É necessário um bom retorno e revisão para encontrar a melhor combinação de parâmetros.

Direção de otimização

  1. É possível testar diferentes períodos de RSI para encontrar os parâmetros de período mais adequados e melhorar a eficácia do indicador.

  2. Pode-se adicionar a lógica de stop loss, definindo um stop loss móvel ou fixo razoável para controlar o risco de perda individual.

  3. Pode testar os parâmetros de largura do canal da faixa de Brin, otimizar o alcance do canal e melhorar o reconhecimento da faixa de Brin.

  4. É possível testar diferentes entradas de preço, como o preço de fechamento, o preço máximo, o preço mínimo, etc., para encontrar a melhor entrada de preço para aumentar a estabilidade da estratégia.

Resumir

Esta estratégia combina com sucesso o indicador RSI e o indicador de bandas de Brin para implementar a lógica de dupla confirmação, garantindo oportunidades de negociação suficientes e reduzindo efetivamente o ruído de negociação. Com a otimização de parâmetros razoáveis e o controle de risco, a estratégia pode ser uma estratégia de acompanhamento de tendências e negociação muito estável e confiável.

Código-fonte da estratégia
/*backtest
start: 2023-12-22 00:00:00
end: 2024-01-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Bollinger + RSI, Double Strategy (by ChartArt)", shorttitle="CA_-_RSI_Bol_Strat", overlay=true)

// ChartArt's RSI + Bollinger Bands, Double Strategy
//
// Version 1.0
// Idea by ChartArt on January 14, 2015.
//
// This strategy uses a modfied RSI to sell
// when the RSI increases over the value of 55
// (or to buy when the value falls below 45),
// with the classic Bollinger Bands strategy
// to sell when the price is above the
// upper Bollinger Band (and to buy when
// this value is below the lower band).
//
// This simple strategy only triggers when
// both the RSI and the Bollinger Bands
// indicators are at the same time in
// a overbought or oversold condition.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 


///////////// RSI
RSIlength = input( 16 ,title="RSI Period Length") 
RSIvalue = input( 45 ,title="RSI Value Range") 
RSIoverSold = 0 + RSIvalue
RSIoverBought = 100 - RSIvalue
price = close
vrsi = rsi(price, RSIlength)


///////////// Bollinger Bands
BBlength = input(20, minval=1,title="Bollinger Bands SMA Period Length")
BBmult = input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyEntry = crossover(source, BBlower)
sellEntry = crossunder(source, BBupper)
plot(BBbasis, color=aqua,title="Bollinger Bands SMA Basis Line")
p1 = plot(BBupper, color=silver,title="Bollinger Bands Upper Line")
p2 = plot(BBlower, color=silver,title="Bollinger Bands Lower Line")
fill(p1, p2)


///////////// Colors
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Enable Background Color?")
TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) ? red : RSIoverSold and (price[1] < BBlower and price > BBlower)  ? green : na
barcolor(switch1?TrendColor:na)
bgcolor(switch2?TrendColor:na,transp=50)


///////////// RSI + Bollinger Bands Strategy
if (not na(vrsi))

    if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower))
        strategy.entry("RSI_BB_L", strategy.long, stop=BBlower,  comment="RSI_BB_L")
    else
        strategy.cancel(id="RSI_BB_L")
        
    if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper))
        strategy.entry("RSI_BB_S", strategy.short, stop=BBupper, comment="RSI_BB_S")
    else
        strategy.cancel(id="RSI_BB_S")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)