
A estratégia é uma estratégia de negociação quantitativa baseada nos indicadores Brin Belt e MACD. Combina breakouts de Brin Belt com o acompanhamento de tendências do MACD para melhorar a qualidade do sinal de negociação.
A estratégia baseia-se principalmente em sinais de negociação do indicador Brin e do indicador MACD.
O indicador de Brinks é composto por um meio, um alto e um baixo. Um sinal de compra é gerado quando o preço quebra um baixo e um sinal de venda quando o preço quebra um alto. A estratégia usa o princípio da ruptura de Brinks para determinar um sinal de ruptura mais forte.
O indicador MACD reflete a relação entre a média móvel de curto e longo prazo, e determina a hora de comprar e vender através da linha de diferença e da linha de sinal. A estratégia de integração usa o indicador MACD para filtrar os sinais de negociação da faixa de trânsito, gerando um sinal de compra mais eficaz quando a linha de diferença se rompe para cima.
Em geral, a estratégia combina o acompanhamento de tendências da faixa de Bryn e a vantagem da média móvel do MACD, com o objetivo de capturar as maiores flutuações do mercado em tendências fortes.
A combinação dos indicadores BRI e MACD permite que os sinais de negociação sejam mais confiáveis.
Em um cenário de tendência, o acompanhamento de tendências da faixa de Brin e a crossação da média móvel MACD podem gerar um sinal de entrada mais forte.
A análise de duplo indicador permite filtrar os falsos sinais e reduzir o risco de transação.
Os parâmetros da estratégia têm muito espaço para otimização, podendo ser ajustados de acordo com diferentes variedades e ciclos.
Em situações de turbulência, os sinais de negociação gerados pela Brin e pela MACD podem ser frequentes, trazendo risco de arbitragem.
O indicador MACD apresenta três sinais de compra de garfo na região baixa, podendo enfrentar um risco de reversão.
As estratégias usam mais indicadores e são mais difíceis de otimizar os parâmetros e testar as estratégias.
Os riscos acima mencionados podem ser controlados por meio de métodos como o ajuste adequado do tempo de detenção, o estabelecimento de linhas de parada e otimizar os parâmetros.
Teste de um período mais longo dos parâmetros da faixa de Bryn para reduzir a frequência de transação.
Otimizar os parâmetros de linha média rápida e lenta do MACD para aumentar a sensibilidade do indicador.
Adicionar filtros de outros indicadores, como KDJ, RSI, etc., para melhorar a qualidade do sinal.
Configuração de stop loss dinâmico, stop loss automático e saída automática, controle de risco de uma única transação.
A estratégia integra negociações de ruptura de Brin e filtragem do indicador MACD, o que teoricamente pode produzir um sinal de negociação de alta qualidade. Os melhores resultados de feedback podem ser obtidos por meio de otimização de parâmetros e meios de controle de risco. No entanto, nenhuma estratégia pode evitar perdas completamente e os efeitos reais das negociações devem ser cuidadosamente avaliados.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Nabz-BBMACD-2022-V1.1", shorttitle="BBM-Nabz", overlay=true)
// My 1st Pine Scrpt Indicator
// Work on best on 1Hr Chart
// Open for Help/Donations.
var float lastentry=1
int result = 0
float x = 0
drawshape = false
/////////////EMA
shortest = ta.ema(close, 20)
short = ta.ema(close, 50)
longer = ta.ema(close, 100)
longest = ta.ema(close, 200)
plot(shortest, color = color.red)
plot(short, color = color.orange)
plot(longer, color = color.aqua)
plot(longest, color = color.blue)
///////////// RSI
RSIlength = input(6,title="RSI Period Length")
RSIoverSold = 50
RSIoverBought = 50
price = close
vrsi = ta.rsi(price, RSIlength)
///////////// Bollinger Bands
BBlength = input.int(200, minval=1,title="Bollinger Period Length")
BBmult = 2 // input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
BBbasis = ta.sma(price, BBlength)
BBdev = BBmult * ta.stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev
source = close
buyEntry = ta.crossover(source, BBlower)
sellEntry = ta.crossunder(source, BBupper)
////////////// MACD
fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)
MACD = ta.ema(close, fastLength) - ta.ema(close, slowlength)
aMACD = ta.ema(MACD, MACDLength)
delta = MACD - aMACD
///////////// Colors
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Enable Background Color?")
TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) and BBbasis < BBbasis[1] ? color.red : RSIoverSold and (price[1] < BBlower and price > BBlower) and BBbasis > BBbasis[1] ? color.green : na
///////////Strategy
bool tcu = not (ta.crossunder(price[0],shortest[0]))
if (((price[1]<BBlower[1]) and (ta.crossover(price,BBlower))))
lastentry := low[1]
strategy.entry("RSI_BB_L", strategy.long, comment="Buy 1st IF")
if (((ta.crossover(delta, 0.0) and (ta.crossover(price,BBlower)))))
lastentry := low[1]
strategy.entry("RSI_BB_L", strategy.long, comment="Buy 2nd IF")
if (((ta.crossover(delta, 0.0)) and (low[0]>shortest[0])) and (price[1]<low))
lastentry := low[1]
strategy.entry("RSI_BB_L", strategy.long, comment="Buy 3rd IF") //else
if (((ta.crossover(delta, 0.01)) and (high[1]<BBupper)) and (tcu))
lastentry := low[1]
strategy.entry("RSI_BB_L", strategy.long, comment="Buy 4th IF")
if ((ta.crossunder(low[0],shortest[0]) and close<shortest))
strategy.close(id="RSI_BB_L", comment="Close by 1st IF")
if (price<lastentry)
drawshape := true
if (price<strategy.opentrades.entry_price(0)/1.01175734321249)
strategy.close(id="RSI_BB_L", comment="Close by 2nd IF")
plot(strategy.opentrades.entry_price(0), color=color.yellow)