
A estratégia é uma estratégia de negociação de longo prazo baseada em uma média móvel simples (SMA) e uma taxa de flutuação real média (ATR) com configurações de stop loss. Combina os benefícios de acompanhamento de tendências e gerenciamento de risco, com o objetivo de controlar retrações e maximizar os lucros.
A estratégia usa o SMA 200 para determinar a direção da grande tendência, usa o ATR para definir a linha de parada e para monitorar a perda dinâmica. Concretamente, o sinal de compra é o fechamento do SMA 200 mais o ATR 14 dias, o que significa que o fechamento está atualmente em alta. O sinal de perda é o fechamento do SMA 200 menos o ATR 14 dias, o que significa que a tendência de alta foi quebrada.
A estratégia combina as vantagens dos dois indicadores SMA e ATR. A SMA 200 filtra o ruído do mercado, bloqueando a direção principal da linha longa; e a ATR 14 dias pode definir uma linha de parada com base na flutuação das últimas duas semanas, atingindo o efeito de um stop loss de acompanhamento dinâmico. Isso permite um lucro contínuo na tendência, além de controlar efetivamente as retrações.
O risco de controle de perda, seguindo a tendência, pode ser obtido com um alto índice de lucro.
Retirada controlada: o rastreamento dinâmico do ATR reduz a incidência de incidentes inesperados e controla efetivamente a retirada.
Parâmetros simples. Usar apenas dois parâmetros para equilibrar riscos e benefícios e evitar otimização excessiva.
A estratégia também tem alguns riscos que devem ser levados em conta. Os principais riscos são:
Risco de reversão de tendência. A estratégia em si não pode determinar a reversão de tendência, podendo causar grandes perdas se ocorrer uma reversão súbita.
Risco de atraso do SMA. O SMA tem um certo atraso e não pode refletir imediatamente a mudança de tendência.
Riscos de configuração de parâmetros ATR. Se os parâmetros ATR forem muito grandes ou pequenos, eles afetarão o desempenho da estratégia.
Resolução:
A estratégia também pode ser melhorada em alguns aspectos:
Teste diferentes combinações de parâmetros SMA e ATR para encontrar o melhor.
Adição de outros indicadores técnicos para a inversão de julgamento, como o MACD.
Optimizar mecanismos de suspensão, como suspensão de mudança, suspensão móvel, etc.
Combine os indicadores fundamentais das ações para evitar a compra de ações que não têm perspectivas de alta.
A estratégia integra métodos de acompanhamento de tendências e gerenciamento de risco dinâmico, permitindo a otimização de stop loss e stop loss durante a posse de longas linhas. Tem características de alta taxa de ganho e perda, retorno controlado e equilíbrio de risco e ganho. Mas também existe um certo risco de reversão de tendência e dificuldade de otimização de parâmetros.
/*backtest
start: 2023-01-30 00:00:00
end: 2024-02-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("SMA+ATR Strategie", overlay=true)
// Benutzer-Inputs für SMA, ATR und die Anzeigeoption
smaLength = input(200, title="SMA Länge")
atrLength = input(14, title="ATR Länge")
showSMAandATR = input(true, title="Zeige SMA und ATR-Bänder")
// Berechnung von SMA und ATR
sma = ta.sma(close, smaLength)
atr = ta.atr(atrLength)
// Kauf- und Verkaufslogik basierend auf SMA und ATR
buyCondition = close > sma + atr
sellCondition = close < sma - atr
// Variable zum Speichern des Eintrittspreises
var float entryPrice = na
// Kauf- und Verkaufssignale
if (buyCondition)
strategy.entry("Buy", strategy.long)
entryPrice := close // Speichere den Eintrittspreis
if (sellCondition)
// Nur wenn ein Kauf stattgefunden hat
if not na(entryPrice)
// Berechne die Performance seit dem Kaufsignal
performanceSinceBuy = ((close - entryPrice) / entryPrice) * 100
// Anzeigen der Performance
// Wähle die Box-Farbe basierend auf dem Vorzeichen der Performance
plColor = performanceSinceBuy >= 0 ? color.green : color.red
// Anzeigen der Performance in der entsprechenden Farbe
plBox = "P/L: " + str.tostring(performanceSinceBuy, "#.##") + "%"
label.new(bar_index, high, text=plBox, color=plColor, textcolor=color.white, style=label.style_label_center, yloc=yloc.price)
// Schließe den Trade und setze den Eintrittspreis zurück
strategy.close("Buy")
entryPrice := na
// Optionale Anzeige von SMA und ATR-Band
plot(showSMAandATR ? sma : na, color=color.blue, title="SMA 200")
plot(showSMAandATR ? sma + atr : na, color=color.green, title="SMA 200 + ATR")
plot(showSMAandATR ? sma - atr : na, color=color.red, title="SMA 200 - ATR")