Estratégia de tendência de ruptura de resistência de suporte dinâmico


Data de criação: 2023-12-26 15:21:45 última modificação: 2023-12-26 15:21:45
cópia: 0 Cliques: 712
1
focar em
1621
Seguidores

Estratégia de tendência de ruptura de resistência de suporte dinâmico

Visão geral

A estratégia julga a direção da tendência com base na ruptura da resistência de suporte a longo prazo, para que a ruptura da resistência de suporte seja o momento de entrada. Ela usa a linha de inflexão para definir o ponto alto e o ponto baixo, confirmando o ponto alto / baixo com 2 linhas K, portanto, há um atraso de 2 linhas K. Ela calcula o diferencial de SMA para o ponto alto e baixo dentro de um determinado período (default 21) como um ponto de suporte auxiliar.

Princípio da estratégia

A estratégia usa a seguinte lógica para julgar tendências e sinais de negociação:

  1. Use a linha de fenda para determinar o ponto alto e baixo: dos 5 eixos K atuais, o ponto baixo do 5o eixo K é menor que o 4o eixo, o 4o eixo é menor que o 3o eixo, o 3o eixo é maior que o 2o eixo e o 2o eixo é maior que o 1o eixo. Confirme o ponto baixo do 3o eixo K como o ponto mínimo.

  2. Calcule o número de pontos altos hn e o número de pontos baixos ln em um determinado período. Se hn>0 e ln>0, calcule o valor médio hsum/hn do ponto alto e o valor médio lsum/ln do ponto baixo em um determinado período. A diferença entre eles r serve como resistência auxiliar de suporte.

  3. Comparando o preço de fechamento com a resistência dinâmica lvalr e o suporte hvalr, para determinar a direção da tendência. Se o preço de fechamento for superior a um dos dois, a ruptura será efetiva.

  4. Faça mais quando for eficaz na quebra da resistência dinâmica; faça menos quando for eficaz na quebra da resistência dinâmica.

Análise de vantagens

A estratégia tem as seguintes vantagens:

  1. O uso da linha de fenda para julgar a resistência de suporte é mais preciso, evitando erros de ruptura.

  2. A resistência de suporte baseada em estatísticas de longo prazo tem mais valor de referência e reduz o risco de posição.

  3. A introdução de resistência de suporte auxiliar aumenta a eficácia da ruptura.

  4. A lógica da estratégia é simples, clara, fácil de entender e adequada para transações quantitativas.

  5. Pode ser customizado para suportar o ciclo de resistência estatística, adaptado a diferentes ciclos e variedades.

Análise de Riscos

A estratégia também apresenta alguns riscos:

  1. A linha de fenda determina que o ponto de resistência de suporte está atrasado em 2 linhas K, podendo perder o melhor ponto de entrada.

  2. A previsão de resistência de suporte é apenas para referência, e os preços ainda podem ter brechas inexplicáveis.

  3. O comprimento inadequado do ciclo estatístico pode causar o fracasso da resistência de suporte.

  4. A correção de preço após a ruptura pode desencadear um stop loss.

  5. O preço pode fluctuar muito depois de um longo prazo, levando a maiores perdas.

Os correspondentes meios de controlo e otimização de riscos são:

  1. Reduzir adequadamente os ciclos estatísticos para reduzir o atraso.

  2. A combinação de mais fatores prevê a resistência de suporte.

  3. Testar a estabilidade de diferentes parâmetros de ciclo.

  4. Estabeleça um limite de perda razoável.

  5. A utilização de métodos de controlo de posição para limitar as perdas individuais.

Direção de otimização

A estratégia pode ser otimizada em:

  1. O uso de métodos de aprendizagem de máquina para prever a resistência de suporte pode aumentar a taxa de sucesso da ruptura de resistência de suporte.

  2. A eficácia da ruptura é avaliada em combinação com o volume de transações do indicador CONF. A participação de um grande número de contratos de posição não liquidada na ruptura é mais convincente.

  3. Resistência de suporte estatística classificada de acordo com diferentes períodos. Por exemplo, de acordo com a linha do dia, a circunferência, etc., aumentando a eficácia da resistência de suporte.

  4. Em posições de ganho, coloque um ponto de parada livre para equilibrar o prejuízo. Isso pode garantir maiores ganhos ao mesmo tempo em que garante o lucro.

  5. Combine os indicadores de linha média para avaliar a tendência e evite fazer mais vazio quando não há uma tendência clara.

Resumir

A estratégia é, em geral, uma estratégia de acompanhamento de tendências mais robusta e confiável. Ela tem uma maior probabilidade de determinar corretamente a direção da tendência e possui algumas medidas de controle de risco.

Código-fonte da estratégia
/*backtest
start: 2023-11-25 00:00:00
end: 2023-12-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("SR TREND STRATEGY", shorttitle="SR TREND", overlay=true, calc_on_order_fills=true)
//based on by synapticEx SR indicator https://www.tradingview.com/script/O0F675Kv-Nebula-Advanced-Dynamic-Support-Resistance/
length = input(title="SR lookbak length", type=input.integer, defval=21)
h = bar_index>5 and high[5]<high[4] and high[4]<high[3] and high[3]>high[2] and high[2]>high[1] ? 1 : 0
l = bar_index>5 and low[5]>low[4]   and low[4]>low[3]   and low[3]<low[2]   and low[2]<low[1]   ? 1 : 0
ln = sum(l, length)
hn = sum(h, length)
hval =  h>0 ? high[3] : 0
lval =  l>0 ? low[3]  : 0
lsum = sum(lval, length)
hsum = sum(hval, length)
r = ln>0 and hn>0 ? abs((hsum/hn) - (lsum/ln)): 0
float lvalc = na
float lvalr = na
float hvalc = na
float hvalr = na
lvalc := lval and r>0 ? lval   : lvalc[1]
lvalr := lval and r>0 ? lval+r : lvalr[1]
hvalc := hval and r>0 ? hval   : hvalc[1]
hvalr := hval and r>0 ? hval-r : hvalr[1]
int trend=0
trend:=close > lvalr and close > hvalr ? 1 : close < lvalr and close < hvalr ? -1 : trend[1]
strategy.close("Long", when=trend==-1)
strategy.close("Short", when=trend==1)
strategy.entry("Long", strategy.long, when=trend==1 and close>hvalc)
strategy.entry("Short", strategy.short, when=trend==-1 and close<lvalc)
int long=0
int short=0
long:= trend==1 and close>hvalc ? 1 : trend==-1 ? -1 : long[1]
short:= trend==-1 and close<lvalc ? 1 : trend==1 ? -1 : short[1]
barcolor(long>0? color.green : short>0? color.red : trend>0? color.white: trend<0 ? color.orange : color.blue)