Esta estratégia integra Bollinger Bands, Relative Strength Index (RSI) e Exponential Moving Average (EMA) três indicadores para implementar uma estratégia de negociação automática com longos períodos de retenção para ações.
Esta estratégia julga principalmente com base em Bollinger Bands, RSI e EMA três indicadores. O trilho do meio em Bollinger Bands é a média móvel simples do preço, e os trilhos superior e inferior são dois intervalos de desvio padrão do preço. Bollinger Bands pode julgar o estado de sobrecompra / sobrevenda do mercado. Quando o preço está perto do trilho inferior, ele indica o estado de sobrevenda, e quando o preço está perto do trilho superior, ele indica o estado de sobrevenda.
O sinal de compra para esta estratégia é gerado quando o RSI está abaixo da linha de supervenda de 30 e, ao mesmo tempo, o preço se aproximou ou tocou o trilho inferior das Bandas de Bollinger em estado de supervenda. Isso evita sinais falsos.
O sinal de venda é gerado quando o preço toca o trilho superior das Bandas de Bollinger durante uma tendência de alta.
Soluções:
A estratégia pode ser ainda melhorada nos seguintes aspectos:
A estratégia integra Bandas de Bollinger, RSI e EMA para uma estratégia de negociação automática de longo prazo com filtros de confirmação dupla. A dupla confirmação para o status de sobrecompra/supervenda evita sinais falsos de forma eficaz, e o uso da EMA para determinação de tendência impede a negociação contra a tendência. Enquanto isso, configurações de parâmetros flexíveis tornam-na adaptável a diferentes ações. Uma melhoria adicional nos aspectos de mecanismos de stop loss e saída pode melhorar a eficiência e a gestão de riscos da estratégia. A estratégia fornece uma valiosa estrutura de referência para iniciantes e tem significado prático.
/*backtest start: 2023-12-21 00:00:00 end: 2023-12-28 00:00:00 period: 3m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Bollinger + RSI + EMA, Double Strategy Long-Only (by ChartArt) v1.3", shorttitle="rsi 30 min ADJ Buy", overlay=true) ///////////// RSI RSIlength = input(2, title="RSI Period Length") // Adjusted RSI period length RSIoverSold = input(30, title="RSI Oversold Level") // Adjustable RSI oversold level RSIoverBought = input(80, title="RSI Overbought Level") // Adjustable RSI overbought level price = close vrsi = rsi(price, RSIlength) ///////////// Bollinger Bands BBlength = input(231, minval=1, title="Bollinger Period Length") // Adjusted Bollinger period length BBmult = 2 BBbasis = sma(price, BBlength) BBdev = BBmult * stdev(price, BBlength) BBupper = BBbasis + BBdev BBlower = BBbasis - BBdev ///////////// EMA useEMA = input(true, title="Use EMA?") emaLength = input(20, title="EMA Period Length") ema = useEMA ? ema(close, emaLength) : na source = close buyEntry = crossover(source, BBlower) or (close < BBlower and close > BBbasis) or (low < BBlower and close > BBbasis) // Add condition for low touching Bollinger Band sellEntry = crossunder(source, BBupper) ///////////// Plotting plot(BBbasis, color=color.aqua, title="Bollinger Bands SMA Basis Line") plot(BBupper, color=color.silver, title="Bollinger Bands Upper Line") plot(BBlower, color=color.silver, title="Bollinger Bands Lower Line") plot(ema, color=color.orange, title="EMA") // Plot EMA ///////////// RSI + Bollinger Bands Strategy long = crossover(vrsi, RSIoverSold) and buyEntry close_long = close >= BBupper if (not na(vrsi)) if long strategy.entry("Buy", strategy.long, qty=10, stop=BBlower, comment="Buy") else strategy.cancel(id="Buy") if close_long strategy.close("Buy")