
A estratégia de suporte/resistência automática é uma estratégia de acompanhamento de tendências. Ela determina os pontos críticos de suporte e resistência, calculando os preços mais altos e mais baixos em um determinado período.
A estratégia primeiro calcula os preços mais altos e mais baixos em um determinado número de ciclos à esquerda e à direita, determinando os principais pontos de suporte e resistência. Em seguida, calcula os preços mais altos e mais baixos em um período mais curto, determinando pontos de suporte e resistência rápidos.
A lógica chave da estratégia é que, depois que os preços formam suporte ou resistência em ambos os lados, é provável que uma nova tendência seja iniciada se o preço quebrar esses pontos, e a operação pode capturar a direção da tendência. A estratégia, ao mesmo tempo, combina tendências de julgamento de diferentes períodos, evitando assim ser influenciada pela dinâmica de curto prazo.
A maior vantagem desta estratégia é que pode ser automaticamente identificado os pontos críticos de suporte e resistência. Não é necessário julgar manualmente a posição de suporte e resistência. Ao mesmo tempo, a combinação de diferentes tendências de julgamento de períodos, pode filtrar efetivamente as situações de falsas rupturas e evitar que as negociações sejam encaixadas.
Além disso, as condições de compra e venda da estratégia são simples e claras, basta que o preço quebre o suporte rápido ou o nível de resistência. É fácil de implementar e de refletir os parâmetros de otimização.
O maior risco desta estratégia é que os pontos de suporte e resistência calculados automaticamente não são necessariamente confiáveis e o preço pode romper diretamente esses pontos para formar uma nova tendência, causando prejuízos.
Além disso, se o ciclo de apoio rápido e resistência for muito curto, pode causar muitos falsos sinais de ruptura. Isso aumenta os prejuízos das negociações reais.
Para reduzir o risco, pode-se considerar a filtragem em combinação com outros indicadores, tais como o volume de transações, a medição de direção de indicadores como a média móvel, ou a racionalidade do apoio e da resistência calculados manualmente.
A estratégia pode ser melhorada em dois aspectos principais:
Optimizar os parâmetros de ciclo de entrada para encontrar a melhor combinação de parâmetros. Você pode experimentar diferentes combinações de ciclo de esquerda e direita para encontrar o parâmetro com maior taxa de sucesso de ruptura.
Adicionar condições de filtragem de indicadores, como indicadores de energia quantitativa, médias móveis, etc., para evitar falsas rupturas. Também pode ser combinado com uma maneira de julgar artificialmente os pontos-chave, para melhorar a eficácia da estratégia.
A estratégia como um todo é um bom quadro de estratégia para o julgamento automático de suporte e resistência. Como o julgamento automático apoia a resistência, a implementação não é muito difícil e é adequada para a direção da captura de tendências. Ao mesmo tempo, a combinação de otimização de parâmetros e filtragem de condições pode aumentar ainda mais os ganhos da estratégia.
/*backtest
start: 2023-01-01 00:00:00
end: 2023-12-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © lukaRT
//@version=5
strategy("Auto S/R Strategy", shorttitle="Auto S/R", overlay=true)
// Ваши входные параметры
leftBars = input.int(50, title="Left Bars")
rightBars = input.int(25, title="Right Bars")
quickRightBars = input.int(5, title="Quick Right Bars")
src = input(close, title="Source")
pivotHigh = ta.pivothigh(src, leftBars, rightBars)
pivotLow = ta.pivotlow(src, leftBars, rightBars)
quickPivotHigh = ta.pivothigh(src, leftBars, quickRightBars)
quickPivotLow = ta.pivotlow(src, leftBars, quickRightBars)
// Ваши уровни сопротивления и поддержки
resistanceLevel1 = ta.valuewhen(quickPivotHigh, high[quickRightBars], 0)
supportLevel1 = ta.valuewhen(quickPivotLow, low[quickRightBars], 0)
// Пересечение ценой уровней
longCondition = ta.crossover(close, supportLevel1)
shortCondition = ta.crossunder(close, resistanceLevel1)
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
// Отображение линий сопротивления и поддержки на графике
plot(resistanceLevel1, color=color.red, title="Resistance Level 1")
plot(supportLevel1, color=color.green, title="Support Level 1")