Esta estratégia combina estratégias de reversão e oscilador para obter sinais de negociação mais confiáveis.
Estratégia de previsão de reversão
Usar oscilador estocástico para identificar condições de sobrecompra e sobrevenda
Faça negociações contra-direcionais quando o preço fechar a reversão acima de 2 barras enquanto o oscilador estocástico atinge níveis de sobrecompra ou sobrevenda
Estratégia do oscilador Chande
Usar a análise de regressão linear para prever preços
O oscilador traça a diferença percentual entre o preço de fechamento e o preço previsto
Gerar sinais de negociação quando o preço real se desviar significativamente do preço previsto
Regras de estratégia
Calcular simultaneamente os sinais de ambas as estratégias
Só gerar sinais de negociação reais quando ambas as estratégias concordarem em comprar ou vender
Combinação de filtros de sinais falsos de estratégias individuais, melhorando a confiabilidade
A combinação de múltiplas estratégias permite uma avaliação do mercado mais robusta
Filtra sinais falsos que possam ocorrer em indicadores individuais
A estratégia de reversão capta oportunidades de reversão a curto prazo
O oscilador Chande avalia com precisão as tendências de longo prazo
Parâmetros flexíveis do oscilador estocástico adaptáveis à evolução dos mercados
Combina técnicas de análise para capitalizar diversas perspectivas de negociação
Embora mais confiáveis, as estratégias combinadas reduzem a frequência do sinal
Requer otimização complexa de vários parâmetros de estratégia
Dificuldade de reverter o tempo, existem riscos de perdas
Previsão de regressão linear ineficaz quando os preços são voláteis
Observe a divergência de preços do oscilador estocástico
Dados insuficientes dos testes de regresso, desempenho em tempo real incerto
Otimizar o oscilador estocástico reduzindo os períodos K e D
Teste mais períodos de regressão linear para encontrar o ideal
Adicionar stop loss para limitar perdas
Altere a lógica para esperar que o oscilador estocástico atinja extremos.
Analisar as propriedades estatísticas dos instrumentos de negociação
Incorporar mais indicadores como o MACD para robustez
Esta estratégia sintetiza várias técnicas analíticas e melhora a qualidade do sinal através de combinação, capturando reversões de curto prazo e tendências de longo prazo. Mas o desempenho ao vivo precisa ser validado e os parâmetros ajustados em conformidade.
/*backtest start: 2023-09-09 00:00:00 end: 2023-10-09 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 08/08/2019 // This is combo strategies for get a cumulative signal. // // First strategy // This System was created from the Book "How I Tripled My Money In The // Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies. // The strategy buys at market, if close price is higher than the previous close // during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. // The strategy sells at market, if close price is lower than the previous close price // during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50. // // Second strategy // The Chande Forecast Oscillator developed by Tushar Chande The Forecast // Oscillator plots the percentage difference between the closing price and // the n-period linear regression forecasted price. The oscillator is above // zero when the forecast price is greater than the closing price and less // than zero if it is below. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// Reversal123(Length, KSmoothing, DLength, Level) => vFast = sma(stoch(close, high, low, Length), KSmoothing) vSlow = sma(vFast, DLength) pos = 0.0 pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1, iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) pos ChandeForecastOscillator(Length, Offset) => pos = 0 xLG = linreg(close, Length, Offset) xCFO = ((close -xLG) * 100) / close pos := iff(xCFO > 0, 1, iff(xCFO < 0, -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Chande Forecast Oscillator", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- LengthCFO = input(14, minval=1) Offset = input(0) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posChandeForecastOscillator = ChandeForecastOscillator(LengthCFO, Offset) pos = iff(posReversal123 == 1 and posChandeForecastOscillator == 1 , 1, iff(posReversal123 == -1 and posChandeForecastOscillator == -1, -1, 0)) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1 , 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )