Estratégia de negociação de reversão de dupla cruz de ouro

Autora:ChaoZhang, Data: 2023-11-03 15:32:38
Tags:

img

Resumo

A estratégia de negociação de inversão dupla de cruz de ouro é uma estratégia de negociação que combina vários indicadores de análise técnica.

Princípios de estratégia

A estratégia consiste em duas sub-estratégias:

  1. 123 estratégia de reversão do padrão

    Ele gera sinais de negociação com base nos preços de fechamento de ações. Os sinais são acionados quando a relação entre os preços de fechamento de dias consecutivos muda. Especificamente, um sinal curto é gerado quando o preço de fechamento anterior é maior do que o de dois dias atrás, e o preço de fechamento atual é menor do que o dia anterior. Um sinal longo é gerado quando o preço de fechamento anterior é menor do que o de dois dias atrás, e o preço de fechamento atual é maior do que o dia anterior. Além disso, os sinais só são ativados quando o oscilador estocástico atravessa. Ou seja, o sinal longo é ativado apenas quando a linha rápida está abaixo da linha lenta. O sinal curto é ativado apenas quando a linha rápida está acima da linha lenta.

  2. Estratégia de bandas de números primos

    Esta estratégia usa a distribuição única de números primos para determinar os intervalos de flutuação de preços. Primeiro, localiza os números primos mais altos e mais baixos dentro de uma certa faixa percentual do preço e traça as duas séries de números primos como bandas. Os sinais de negociação são gerados quando o preço toca as bandas. Especificamente, um sinal longo é desencadeado quando o preço quebra acima da faixa superior. Um sinal curto é desencadeado quando o preço quebra abaixo da faixa inferior.

As duas sub-estratégias são combinadas para gerar os sinais finais de negociação. Ou seja, o sinal longo é gerado apenas quando ambas as estratégias produzem sinais longos. Da mesma forma para os sinais curtos. Nenhuma negociação é executada se os sinais das duas estratégias contradizerem um ao outro.

Análise das vantagens

A estratégia apresenta as seguintes vantagens:

  1. Aumentar a rentabilidade através da integração de sinais

    Ao combinar sinais de dois tipos diferentes de estratégias, a confiabilidade dos sinais pode ser verificada para identificar oportunidades de negociação lucrativas de alta probabilidade.

  2. Alta taxa de vitória do padrão de reversão 123

    O padrão de reversão 123 é uma estratégia contrária clássica que pode capturar oportunidades de reversão decorrentes de situações de sobrecompra e sobrevenda de curto prazo, possuindo assim uma taxa de ganho relativamente elevada na negociação ao vivo.

  3. As faixas de números primos captam padrões de preços

    As bandas de números primos fazem uso da aleatoriedade única dos números primos para determinar os intervalos de flutuação de preços, evitando viés subjetivo e aumentando a objetividade dos sinais de negociação.

  4. A lógica da nova estratégia evita a exploração

    A integração inovadora de múltiplos indicadores torna a estratégia menos suscetível à engenharia reversa e à exploração por estratégias imitadoras.

Análise de riscos

A estratégia comporta igualmente os seguintes riscos:

  1. Risco de reversão fracassada

    Como estratégia de reversão, reversões fracassadas do padrão 123 podem levar a perdas.

  2. Falha das faixas de números primos

    As faixas de números primos dependem de um ajuste adequado de parâmetros.

  3. Aumento da frequência de negociação a partir de sinais múltiplos

    Os custos excessivos de negociação podem corroer os lucros se não forem devidamente controlados.

  4. Optimização difícil

    A otimização dos parâmetros a partir de duas estratégias integradas pode ser um desafio.

Sugestões de otimização

A estratégia pode ser otimizada nos seguintes aspectos:

  1. O valor da posição em risco deve ser calculado de acordo com o método de classificação da posição em risco.

  2. Otimizar os parâmetros das faixas de números primos para se adequarem às últimas condições de mercado.

  3. Controlar a frequência do comércio para evitar que o custo do comércio seja excessivo.

  4. Introduzir algoritmos de aprendizagem de máquina para automatizar a otimização de parâmetros de estratégia.

  5. Adicionar mais indicadores de confirmação como indicadores de volume para melhorar ainda mais a precisão do sinal.

Resumo

A estratégia de negociação de reversão dupla de cruz de ouro integra vários indicadores técnicos para filtrar os negócios de ruído e identificar oportunidades de negociação de alta probabilidade através da verificação de sinais.


/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 23/04/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
// Determining market trends has become a science even though a high number 
// or people still believe it’s a gambling game. Mathematicians, technicians, 
// brokers and investors have worked together in developing quite several 
// indicators to help them better understand and forecast market movements.
// The Prime Number Bands indicator was developed by Modulus Financial Engineering 
// Inc. This indicator is charted by indentifying the highest and lowest prime number 
// in the neighborhood and plotting the two series as a band.
//
// 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

PrimeNumberUpBand(price, percent) =>
    res = 0.0
    res1 = 0.0
    for j = price to price + (price * percent / 100)
        res1 := j
	    for i = 2 to sqrt(price)
        	res1 := iff(j % i == 0 , 0, j)
            if res1 == 0 
                break
		if res1 > 0 
		    break
    res := iff(res1 == 0, res[1], res1)
    res

PrimeNumberDnBand(price, percent) =>
    res = 0.0
    res2 = 0.0
    for j = price to price - (price * percent / 100)
        res2 := j
	    for i = 2 to sqrt(price)
        	res2 := iff(j % i == 0 , 0, j)
            if res2 == 0 
                break
		if res2 > 0 
		    break
    res := iff(res2 == 0, res[1], res2)
    res

PNB(percent, Length,srcUp,srcDn) =>
    pos = 0.0
    xPNUB = PrimeNumberUpBand(srcUp, percent)
    xPNDB = PrimeNumberDnBand(srcDn, percent)
    xHighestPNUB = highest(xPNUB, Length)
    xLowestPNUB = lowest(xPNDB, Length)
    pos:= iff(close > xHighestPNUB[1], 1,
             iff(close < xLowestPNUB[1], -1, nz(pos[1], 0))) 
    pos


strategy(title="Combo Backtest 123 Reversal & Prime Number Bands", 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, "---- Prime Number Bands ----")
percent = input(5, minval=0.01, step = 0.01, title="Tolerance Percentage")
Length_PNB = input(5, minval=1)
srcUp = input(title="Source Up Band", type=input.source, defval=high)
srcDn = input(title="Source Down Band", type=input.source, defval=low)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posPNB = PNB(percent, Length_PNB,srcUp,srcDn)
pos = iff(posReversal123 == 1 and posPNB == 1 , 1,
	   iff(posReversal123 == -1 and posPNB == -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 )

Mais.