
Esta estratégia combina a lógica de parada de perda de seguimento de tendência e a lógica de saída de parada de parada para obter lucro de seguimento contínuo da tendência. A estratégia usa a linha de equilíbrio para determinar a direção da tendência e gera um sinal de negociação quando o preço quebra a linha de equilíbrio. Após entrar em uma posição de vários cabeças, a estratégia define a distância de parada de perda de acordo com o valor do ATR e, ao mesmo tempo, usa a lógica de parada de perda de seguimento de tendência para ajustar a distância de parada de perda e, ao mesmo tempo, proteger os lucros.
De acordo com o intervalo de tempo de detecção de entrada do usuário, configure o tempo de início e término da detecção.
O preço de parada para posições longas e curtas, bem como o percentual de rastreamento de parada.
Quando o preço quebra a linha média, é gerado um sinal de “fazer mais” para fazer mais entrada.
Calcule a distância de stop loss com base no valor do ATR e defina o preço de stop loss.
Quando os preços continuam a subir, acompanhe o ajuste da distância de parada para que ela se mova gradualmente para cima, bloqueando mais lucros.
Quando o preço sobe para o limite de suspensão definido, parte da posição de liquidação é suspensa.
Quando a linha média for ultrapassada, um sinal de falta será emitido.
Calcule a distância de stop loss com base no valor do ATR e defina o preço de stop loss.
Quando os preços continuam a cair, acompanhe e ajuste a distância de parada para que ela se mova gradualmente para baixo e bloqueie mais lucros.
Quando o preço cai para o seu limite de parada, parte da posição de liquidação é parada.
Usando o mecanismo de stop loss de seguimento de tendências, é possível obter lucros ao mesmo tempo em que se protege os lucros, o que é mais vantajoso do que a tradicional distância de stop loss fixa.
A combinação com o indicador ATR para calcular a distância de parada dinâmica pode ser eficaz para responder às flutuações do mercado e reduzir a probabilidade de um stop loss ser acionado.
A lógica de bloqueio parcial pode bloquear parte dos lucros e reduzir o risco de retirada.
A lógica da estratégia é simples e clara, fácil de entender e implementar, adequada para os traders.
Quando a tendência se inverte de repente, a distância de parada pode ser muito grande para parar a perda a tempo, o que pode levar a grandes perdas.
A distância de parada calculada pelo indicador ATR pode ser muito flexível e pode ser facilmente desencadeada pelo ruído do mercado.
Algumas das proporções de paradas estão mal definidas, podendo perder oportunidades de tendência ou aumentar os prejuízos
Os parâmetros necessários para a otimização, como o ciclo ATR, a taxa de rastreamento de perda e a taxa de paralisação parcial, são mais difíceis de otimizar.
A estratégia baseia-se apenas na linha média e nos indicadores ATR, que geram erros de negociação quando emitem sinais errados.
Pode ser combinado com outros indicadores para filtrar os sinais de negociação, evitando a formação de sinais errôneos na linha uniforme. Por exemplo, MACD, KD etc.
Pode-se considerar a troca de paradas parciais fixas por paradas proporcionais dinâmicas, ajustadas de acordo com a intensidade da tendência.
É possível testar diferentes parâmetros do ciclo ATR, com o parâmetro mais estável. Também pode ser combinado com outros indicadores para determinar a distância de parada.
Algoritmos de aprendizagem de máquina podem ser introduzidos para otimizar automaticamente os parâmetros e ajustá-los em tempo real de acordo com o mercado.
Pode ser combinado com algoritmos avançados, como o aprendizado profundo, para identificar automaticamente as tendências e gerar sinais de negociação através do treinamento de modelos.
Esta estratégia integra stop loss de acompanhamento de tendência, stop loss dinâmico ATR e lógica de parada parcial, que pode continuar a seguir a tendência para parar, e também tem uma certa vantagem no controle de retração. Mas a estratégia também tem certas limitações, como a tendência de julgar o indicador simples, o parâmetro de otimização de dificuldade, etc. Isso nos dá uma boa direção de otimização, com a introdução de mais indicadores e meios técnicos, com o objetivo de aumentar ainda mais a estabilidade da estratégia e a taxa de retorno.
/*backtest
start: 2023-09-29 00:00:00
end: 2023-10-29 00:00:00
period: 1h
basePeriod: 15m
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/
// © felipefs
//@version=4
strategy("Meu Script", overlay=true)
plot(ohlc4)
//Funçao de Datas
testStartYear = input(2018, "Backtest Start Year")
testStartMonth = input(6, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)
testPeriod() => time >= testPeriodStart and time <= testPeriodStop ? true : false
//Funções de Trailing Stop
long_stop_price = 0.0
short_stop_price = 0.0
long_trail_perc = 0
short_trail_perc = 0
long_stop_price := if (strategy.position_size > 0)
stopValue = close * (1 - long_trail_perc)
max(stopValue, long_stop_price[1])
else
0
short_stop_price := if (strategy.position_size < 0)
stopValue = close * (1 + short_trail_perc)
min(stopValue, short_stop_price[1])
else
999999
//Função de Debug
debug(value) =>
x = bar_index
y = close
label.new(x, y, tostring(value))
//Take Profit
profit = close * (1 + 0.12)
strategy.entry("Long", true)
strategy.exit("Take Profit 1 Long", from_entry="Long", limit=profit, qty_percent=50.0)
//ATR Stop
// xATRTrailingStopLong = 0.0
// xATR = atr(nATRPeriod)
// nLossLong = nATRMultipLong * xATR
// if (strategy.position_size > 0)
// xATRTrailingStopLong := max(nz(xATRTrailingStopLong[1]), close - nLossLong)