
A estratégia de inversão de filtro de correlação é uma estratégia de negociação de ações baseada no filtro de correlação. Ela simula um filtro de correlação, construindo uma função cos e sine, e gerando um sinal de compra e venda. A estratégia executa uma operação inversa, ou seja, compra ou venda, quando a saída do filtro é superior ou inferior a um determinado nível de disparo.
O núcleo da estratégia é a construção de um filtro de banda passante BP, que é composto por dois parâmetros: a frequência central e a largura de banda. A frequência central determina o ciclo principal pelo qual o filtro passa, e a largura de banda determina o intervalo de ciclos pelo qual passa.
Em particular, a estratégia inclui as seguintes variáveis:
Com base nessas variáveis, a estratégia constrói um filtro de IIR (resposta de impulso infinita) de um nível:
BP = 0.5(1 - alpha)(xPrice - xPrice[2]) + beta*(1 + alpha)*nz(BP[1]) - alpha*nz(BP[2])
Quando a BP é maior ou menor que o TriggerLevel, a estratégia opera na direção oposta.
As principais vantagens desta estratégia são:
A estratégia também apresenta alguns riscos:
Para reduzir esses riscos, considerem-se os seguintes métodos de otimização:
A estratégia pode ser melhorada em vários aspectos:
Ciclo e parâmetros de auto-adaptação: De acordo com o cenário de preços de diferentes ciclos e a mais recente janela de tempo, ajuste em tempo real os parâmetros como Length, Delta, para que o filtro se adapte dinamicamente às mudanças do ambiente de mercado.
Combinando a tendência de julgamento: com base em um filtro de passagem, adicionar MACD, MA e outros indicadores técnicos para julgar a direção da tendência, evitando a abertura de posições contrárias.
Combinação de múltiplos prazos: estratégia de implantação em vários prazos (por exemplo, 5 minutos, 15 minutos, 30 minutos, etc.), verificação de sinais entre diferentes prazos, aumento da precisão do sinal.
Mecanismo de parada: definir uma posição de parada razoável, parar ativamente a posição de liquidação após a perda atingir o ponto de parada, controlar efetivamente o tamanho da perda individual.
Otimizando os pontos acima, pode-se aumentar significativamente a estabilidade, adaptabilidade e lucratividade das estratégias.
A estratégia de reversão de ondas de correlação é construída com um filtro de correlação, extraindo os sinais de frequência média úteis e, ao produzir o nível de ação do filtro, fazendo uma operação de reversão para capturar a oportunidade de reversão de curto prazo do preço. A estratégia é relativamente simples e pode ser adaptada a vários ambientes de mercado por meio de otimização de parâmetros. As principais direções de otimização incluem a adaptação do filtro, o julgamento de tendências, a combinação de quadros de tempo múltiplos e o mecanismo de parada de perdas.
/*backtest
start: 2024-01-16 00:00:00
end: 2024-01-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version = 2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 24/11/2016
// The related article is copyrighted material from
// Stocks & Commodities Mar 2010
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Bandpass Filter Reversed Strategy")
Length = input(20, minval=1)
Delta = input(0.5)
TriggerLevel = input(0)
xPrice = hl2
hline(TriggerLevel, color=blue, linestyle=line)
beta = cos(3.14 * (360 / Length) / 180)
gamma = 1 / cos(3.14 * (720 * Delta / Length) / 180)
alpha = gamma - sqrt(gamma * gamma - 1)
BP = 0.5 * (1 - alpha) * (xPrice - xPrice[2]) + beta * (1 + alpha) * nz(BP[1]) - alpha * nz(BP[2])
pos = iff(BP > TriggerLevel, -1,
iff(BP <= TriggerLevel, 1, nz(pos[1], 0)))
if (pos == 1)
strategy.entry("Long", strategy.long)
if (pos == -1)
strategy.entry("Short", strategy.short)
barcolor(pos == -1 ? red: pos == 1 ? green : blue )
plot(BP, color=red, title="Bandpass Filter Strategy")