
A estratégia é uma combinação de estratégias de reversão em combinação com o indicador de momentum. Integra a estratégia de reversão bidirecional e o oscilador de momentum de Shannon, que visa verificar o sinal de momentum ao mesmo tempo em que se encontra uma oportunidade de reversão, permitindo um sinal de negociação mais confiável.
A estratégia consiste em duas partes:
A primeira parte é a estratégia de reversão bidirecional. Ela julga a oportunidade de reversão detectando a mudança no preço de fechamento dos dois dias anteriores. Concretamente, se o preço de fechamento dos dois dias anteriores diminuiu, o preço de fechamento do dia anterior aumentou e o indicador aleatório ficou abaixo do nível definido, é um sinal de compra.
A segunda parte é o Vibrator de Dinâmica de Chancellor. Ele julga a dinâmica comparando a variação do preço com a variação média em um determinado período. Se o indicador de dinâmica for superior ao limite superior definido, é um sinal de compra; Se for inferior ao limite inferior definido, é um sinal de venda.
A estratégia combina a utilização de um binário de inversão para determinar o ponto de inversão e um indicador de movimento para verificar a dinâmica, que só produz um verdadeiro sinal de compra e venda quando os dois sinais são sincronizados.
Mecanismos de dupla verificação, evitando sinais falsos, aumentando a confiabilidade do sinal. Estratégias de reversão para julgar potenciais pontos de reversão, indicadores de potência para verificar a eficácia do sinal de reversão.
A estratégia de reversão é combinada com a estratégia de tendência, levando em consideração reversões e tendências, para capturar oportunidades de mercado com flexibilidade.
Introdução de indicadores de dinâmica, evitando a armadilha de reversão e negociando somente quando a dinâmica é confirmada.
Os vários parâmetros são ajustáveis e podem ser otimizados para diferentes mercados.
O sinal de retorno pode ter uma profundidade de retorno grande, necessitando de uma perda razoável.
A captura do ponto de viragem requer precisão, podendo ocorrer erros de avaliação.
O indicador de massa está atrasado e pode ter perdido o melhor momento de reversão.
A configuração dos parâmetros precisa ser cuidadosamente otimizada de acordo com o mercado específico. A configuração incorreta pode aumentar o risco de negociação.
Pode-se controlar a perda individual através de um stop loss razoável. Optimizar a configuração dos parâmetros, buscar a estabilidade dos parâmetros.
Teste diferentes combinações de inversões para encontrar configurações sensíveis a inversões de mercado.
Tente diferentes indicadores de dinâmica, como índice de força relativa, taxa de variação de volume de transação, etc.
Adicionar condições de filtragem, como breakouts, para evitar transações que não sejam pontos de inflexão críticos.
Avaliar a estratégia de stop loss para encontrar o método de stop loss com o maior retorno controlado.
Avaliar a estratégia de controle de posição e ajustar o tamanho da posição de acordo com as condições do mercado.
A estratégia combina os benefícios da estratégia de reversão e da estratégia de dinâmica, com a vantagem de uma alta confiabilidade do sinal e a flexibilidade para capturar oportunidades de mercado. A otimização de parâmetros, o gerenciamento de perdas e o controle de posição podem reduzir o risco e melhorar a estabilidade e a lucratividade da estratégia.
/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 18/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
// This indicator plots Chande Momentum Oscillator. This indicator was
// developed by Tushar Chande. A scientist, an inventor, and a respected
// trading system developer, Mr. Chande developed the CMO to capture what
// he calls "pure momentum". For more definitive information on the CMO and
// other indicators we recommend the book The New Technical Trader by Tushar
// Chande and Stanley Kroll.
// The CMO is closely related to, yet unique from, other momentum oriented
// indicators such as Relative Strength Index, Stochastic, Rate-of-Change,
// etc. It is most closely related to Welles Wilder`s RSI, yet it differs
// in several ways:
// - It uses data for both up days and down days in the numerator, thereby
// directly measuring momentum;
// - The calculations are applied on unsmoothed data. Therefore, short-term
// extreme movements in price are not hidden. Once calculated, smoothing
// can be applied to the CMO, if desired;
// - The scale is bounded between +100 and -100, thereby allowing you to
// clearly see changes in net momentum using the 0 level. The bounded scale
// also allows you to conveniently compare values across different securities.
//
// 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
CMO(Length, TopBand, LowBand) =>
pos = 0
xMom = abs(close - close[1])
xSMA_mom = sma(xMom, Length)
xMomLength = close - close[Length]
nRes = 100 * (xMomLength / (xSMA_mom * Length))
pos := iff(nRes > TopBand, 1,
iff(nRes <= LowBand, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Chande Momentum 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)
//-------------------------
LengthCMO = input(9, minval=1)
TopBand = input(70, minval=1)
LowBand = input(-70, maxval=-1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCMO = CMO(LengthCMO, TopBand, LowBand)
pos = iff(posReversal123 == 1 and posCMO == 1 , 1,
iff(posReversal123 == -1 and posCMO == -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 )