
Esta estratégia combina o indicador da faixa de Brin, o indicador RSI e a análise de múltiplos períodos de tempo, com o objetivo de capturar a direção da tendência de linha média e longa. Combina os sinais de compra e venda do RSI com os pontos de reversão da tendência através de rupturas de trajetória e de trajetória da faixa de Brin, permitindo uma entrada de baixo risco.
O indicador de Bollinger Bands é usado para determinar a quebra de preços. A trajetória da faixa de Bollinger é a média móvel do preço de fechamento de N dias, com uma diferença padrão entre a trajetória superior e a trajetória inferior.
Combinando o indicador RSI para julgar o fenômeno de sobrecompra e sobrevenda. O RSI maior que 70 é a área de sobrecompra e menor que 30 é a área de sobrevenda. Quando o RSI ultrapassa 70 de baixo para cima, é considerado como supercompra.
Aplique um filtro de tempo mais alto para falhas de ruptura. Se um sinal de ruptura ocorrer na linha do dia, um período de tempo de 4 horas ou mais será necessário para a confirmação e evitar a captura.
A integração de múltiplos indicadores aumenta a estabilidade e a rentabilidade das estratégias.
O indicador RSI determina pontos de reversão e reduz os prejuízos causados por falsas rupturas.
Análise de múltiplos quadros temporais para filtrar os movimentos de tremores e evitar a captura.
Otimizar o julgamento de sinais de ruptura (os 3 K devem atravessar a faixa de Brin para subir e descer), garantindo que a tendência se desenvolva e entre em jogo quando madura.
O indicador Vortex determina a direção da tendência e capta novas tendências que estão começando a se formar.
A configuração incorreta dos parâmetros da faixa de Bryn pode causar erros de sinal de supercompra e supervenda.
A configuração do parâmetro RSI requer que se determine um valor razoável de acordo com as diferentes variedades.
O sinal de ruptura pode apresentar uma falsa ruptura e deve ser amplificado adequadamente para o ponto de parada.
Garantia de um amplo limite de perda, por exemplo, 3 vezes o ATR.
Aplicar algoritmos de aprendizagem de máquina para otimizar os parâmetros de Brin e RSI em tempo real.
Otimizar o ponto de parada com o uso de indicadores de volatilidade.
Adição de módulos de controle de volume de transação para ajustar as posições de acordo com as mudanças no mercado.
Limitação da perda por transação, em consonância com os princípios de gestão de fundos.
Avaliação da estabilidade dos sinais de ruptura em diferentes períodos de negociação.
Esta estratégia compreensiva considera vários indicadores técnicos, como o julgamento de tendências, o fenômeno de supercompra e supervenda e a análise de vários quadros temporais, com o objetivo de controlar o risco, escolher o momento de entrada apropriado, capturar a tendência de qualidade da linha média e longa e obter uma melhor margem de lucro. Além disso, há espaço para otimização adicional, e é esperado um excelente resultado de investimento por meio de ajustes de parâmetros e melhorias no mecanismo de parada de prejuízos.
/*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"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Noway0utstorm
//@version=5
strategy(title='Vortex0.71.3 + bb 3bar breakout + rsi - close hit upper or lower', shorttitle='truongphuthinh', format=format.price, precision=4,overlay = true)
length = input(20, title="Length")
mult = input(2.0, title="Multiplier")
source = close
basis = ta.sma(source, length)
dev = mult * ta.stdev(source, length)
upperBand = basis + dev
lowerBand = basis - dev
isClosedBar = ta.change(time("15"))
var bool closeAboveUpperBand = false
var bool closeBelowLowerBand = false
// Vortex Indicator Settings
period_ = input.int(14, title='Period', minval=2)
VMP = math.sum(math.abs(high - low[1]), period_)
VMM = math.sum(math.abs(low - high[1]), period_)
STR = math.sum(ta.atr(1), period_)
VIP = VMP / STR
VIM = VMM / STR
//
lengthrsi = input(14, title="RSI Length")
overboughtLevel = input(70, title="Overbought Level")
oversoldLevel = input(30, title="Oversold Level")
sourcersi = close
rsiValue = ta.rsi(sourcersi, lengthrsi)
shouldShort = rsiValue > overboughtLevel
shouldLong = rsiValue < oversoldLevel
if bool(isClosedBar[1]) and bool(isClosedBar[2]) and bool(isClosedBar[3])
if close[1] > upperBand[1] and close[2] > upperBand[2] and close[3] > upperBand[3] and VIP > 1.25 and VIM < 0.7 and rsiValue > overboughtLevel
strategy.entry("Short", strategy.short)
closeAboveUpperBand := false // Reset the condition when entering a new Short position
if close[1] < lowerBand[1] and close[2] < lowerBand[2] and close[3] < lowerBand[3] and VIP < 0.7 and VIM > 1.25 and rsiValue < oversoldLevel
strategy.entry("Long", strategy.long)
closeBelowLowerBand := false // Reset the condition when entering a new Long position
if strategy.position_size > 0 // Check if there is an open Long position
closeAboveUpperBand := close > upperBand // Update the condition based on close price
if closeAboveUpperBand
strategy.close("Long",disable_alert=true) // Close the Long position if close price is above upper band
if strategy.position_size < 0 // Check if there is an open Short position
closeBelowLowerBand := close < lowerBand // Update the condition based on close price
if closeBelowLowerBand
strategy.close("Short",disable_alert=true) // Close the Short position if close price is below lower band
// Plots
plot(basis, color=color.orange, title="Basis")
p1 = plot(upperBand, color=color.blue, title="Upper Band")
p2 = plot(lowerBand, color=color.blue, title="Lower Band")
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))