A estratégia é denominada
O núcleo desta estratégia é o indicador Detrended Price Oscillator (DPO). O DPO é semelhante à média móvel, que pode filtrar tendências de longo prazo nos preços para tornar as flutuações cíclicas mais pronunciadas. Especificamente, o DPO compara os preços com sua média móvel simples de N dias. Quando o preço está acima da média móvel, o DPO é positivo; quando o preço está abaixo da média móvel, o DPO é negativo. Isso resulta em um oscilador flutuando em torno do eixo 0. Podemos usar o positivo / negativo do DPO para julgar a subida / queda dos preços em relação à tendência.
Esta estratégia define o parâmetro N para 14 e constrói um indicador de DPO de 14 dias. Quando o DPO é positivo, é emitido um sinal longo. Quando o DPO é negativo, é emitido um sinal curto.
Para mitigar os riscos, a otimização pode ser considerada nos seguintes aspectos:
Adicionar mecanismos de stop loss para controlar perdas individuais.
Ajustar o valor do parâmetro N para encontrar o parâmetro ideal.
Incorporar indicadores de tendência para evitar negociações contra tendências significativas.
Esta estratégia gera sinais de negociação com base no indicador Detrended Price Oscillator. Ao comparar com médias móveis, este indicador filtra tendências de longo prazo nos preços para tornar as características cíclicas dos preços mais pronunciadas. Isso ajuda a descobrir algumas oportunidades de negociação ocultas. Ao mesmo tempo, também enfrenta problemas como sensibilidade de parâmetros, filtragem, etc. Ainda há um grande espaço para melhoria de eficácia por meio de otimização contínua.
/*backtest start: 2023-11-16 00:00:00 end: 2023-11-20 08:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 31/03/2017 // The Detrend Price Osc indicator is similar to a moving average, // in that it filters out trends in prices to more easily identify // cycles. The indicator is an attempt to define cycles in a trend // by drawing a moving average as a horizontal straight line and // placing prices along the line according to their relation to a // moving average. It provides a means of identifying underlying // cycles not apparent when the moving average is viewed within a // price chart. Cycles of a longer duration than the Length (number // of bars used to calculate the Detrend Price Osc) are effectively // filtered or removed by the oscillator. // // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy(title="Detrended Price Oscillator", shorttitle="DPO") Length = input(14, minval=1) Series = input(title="Price", defval="close") reverse = input(false, title="Trade reverse") hline(0, color=green, linestyle=line) xPrice = close xsma = sma(xPrice, Length) nRes = xPrice - xsma pos = iff(nRes > 0, 1, iff(nRes < 0, -1, nz(pos[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) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(nRes, color=red, title="Detrended Price Oscillator")