Estratégia de captura de crossover reverso


Data de criação: 2024-01-17 16:29:13 última modificação: 2024-01-17 16:29:13
cópia: 2 Cliques: 558
1
focar em
1617
Seguidores

Estratégia de captura de crossover reverso

Visão geral

A estratégia de captura de cruz invertida é uma estratégia complexa que combina negociação invertida e cruzamento de indicadores. Em primeiro lugar, ela utiliza a forma de inversão de preços para gerar um sinal de negociação e, em seguida, filtra em combinação com o cruzamento de indicadores aleatórios para capturar oportunidades de reversão de mercados de curto prazo.

Princípio da estratégia

A estratégia é composta por duas sub-estratégias:

  1. 123 estratégia de reversão
  • Quando o preço de fechamento muda de um ponto alto para um ponto baixo em dois dias, se um indicador aleatório estiver abaixo de um determinado valor no dia 9, um sinal de compra é gerado
  • Quando o preço de fechamento passa de um baixo para um alto em dois dias, se o indicador aleatório for alto no dia 9 (acima de um determinado valor), um sinal de venda é gerado
  1. Estratégia de forquilhinhas de indicadores aleatórios
  • Quando a linha %K cai de cima para baixo abaixo da linha %D, enquanto a linha %K e a linha %D estão na zona de sobrecompra, gera um sinal de venda
  • Quando a linha %K atravessa a linha %D de baixo para cima, enquanto a linha %K e a linha %D estão na zona de oversold, gera um sinal de compra

A estratégia de combinação julga os sinais das duas estratégias menores e, quando os sinais de negociação das duas estratégias menores coincidem, produz um sinal de negociação real.

Vantagens estratégicas

Esta estratégia, combinando reversão e cruzamento de indicadores, julga integralmente os preços e as informações dos indicadores, filtrando eficazmente os falsos sinais, explorando potenciais oportunidades de reversão e aumentando a taxa de retorno dos lucros.

As vantagens incluem:

  1. Capturar a reversão do mercado, retroceder mais rapidamente, sem ter que esperar por um sinal de tremor por muito tempo
  2. Verificação cruzada de estratégias de duas sementes aumenta a precisão do sinal
  3. A combinação de análise de preços e indicadores aumenta a probabilidade de vitória

Risco estratégico

A estratégia também tem riscos:

  1. Quando o mercado está em forte volatilidade, os preços são difíceis de reverter claramente em curto prazo, o que pode gerar sinais errados.
  2. A configuração incorreta dos parâmetros do indicador também afeta a qualidade do sinal
  3. O tempo de reversão não é controlado, há um risco de tempo.

Os riscos podem ser controlados por meio de ajustes nos parâmetros dos indicadores, configuração de mecanismos de suspensão de perdas, etc.

Direção de otimização da estratégia

A estratégia pode ser otimizada a partir das seguintes dimensões:

  1. Ajustar os parâmetros do indicador e otimizar a combinação de parâmetros
  2. Adicionar outros indicadores de filtragem, como indicadores de volume de negócios
  3. Parâmetros de indicadores personalizados de acordo com as características de diferentes variedades e condições de mercado
  4. Aumentar o risco da estratégia de controlo de perdas
  5. Computação de sinais com aprendizagem de máquina

Resumir

A estratégia de captura de cruzamento de inversão usa o conjunto de vantagens de várias estratégias e, sob a premissa de controlar o risco, tem uma forte capacidade de lucratividade. Através da otimização e melhoria contínuas, pode-se criar estratégias eficientes adequadas ao seu estilo e adaptadas ao ambiente de mercado em constante mudança.

Código-fonte da estratégia
/*backtest
start: 2024-01-09 00:00:00
end: 2024-01-16 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 15/09/2021
// 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 back testing strategy generates a long trade at the Open of the following 
// bar when the %K line crosses below the %D line and both are above the Overbought level.
// It generates a short trade at the Open of the following bar when the %K line 
// crosses above the %D line and both values are below the Oversold level.
//
// 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


StochCross(Length, DLength,Oversold,Overbought) =>
    pos = 0.0
    vFast = stoch(close, high, low, Length)
    vSlow = sma(vFast, DLength)
    pos := iff(vFast < vSlow and vFast > Overbought and vSlow > Overbought, 1,
    	      iff(vFast >= vSlow and vFast < Oversold and vSlow < Oversold, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Stochastic Crossover", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Stochastic Crossover ----")
LengthSC = input(7, minval=1)
DLengthSC = input(3, minval=1)
Oversold = input(20, minval=1)
Overbought = input(70, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posmStochCross = StochCross(LengthSC, DLengthSC,Oversold,Overbought)
pos = iff(posReversal123 == 1 and posmStochCross == 1 , 1,
	   iff(posReversal123 == -1 and posmStochCross == -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 )