Estratégia simples de retração de tendências de longo prazo

Autora:ChaoZhang, Data: 2023-12-12 15:32:15
Tags:

img

Esta estratégia acompanha as tendências de longo prazo e entra no mercado durante os retrocessos de curto prazo, alcançando uma lógica de negociação simples de comprar baixo e vender alto.

Princípio da estratégia

Quando o preço de fechamento está acima da média móvel simples de 200 dias, indica que o mercado atual está em uma tendência ascendente de longo prazo. Quando o preço de fechamento está abaixo da média móvel simples de 10 dias e o RSI (((3) está abaixo de 30, indica que o preço recuou acentuadamente no curto prazo. Neste momento, vá longo para acompanhar a tendência ascendente de longo prazo a um preço melhor.

Após tomar uma posição longa, defina um stop loss e tire lucro. Especificamente, o stop loss é definido em 95% do preço de entrada, e o take profit é definido em 120% do preço de entrada. Quando o preço atravessa a linha de 10 dias no lado de cima, tire lucro; quando o preço quebra abaixo do mínimo da linha K anterior, stop loss.

Análise das vantagens

A maior vantagem desta estratégia é que, acompanhando tendências de longo prazo e escolhendo melhores pontos de entrada durante ajustes de curto prazo, pode alcançar baixas compras e altas vendas.

No curto prazo, o ponto de entrada escolhido por esta estratégia está numa fase de sobrevenda a curto prazo, com um certo efeito de baixa compra.

Análise de riscos

Apesar da proteção do mecanismo de stop loss, o maior risco dessa estratégia ainda vem do julgamento errado da tendência. Se a tendência de longo prazo for julgada erroneamente, ela pode enfrentar maiores perdas após entrar no mercado. Além disso, se a posição de stop loss for definida muito perto, o risco também pode aumentar.

Uma solução é adicionar mais indicadores de julgamento de tendência, como o ADX, para garantir que ele esteja realmente em um estado de tendência ao entrar no mercado.

Orientações de otimização

Esta estratégia pode ser otimizada nos seguintes aspectos:

  1. Adicionar mais indicadores de avaliação de tendências para assegurar avaliações mais precisas das tendências a curto e a longo prazo;

  2. Otimizar os parâmetros do ciclo da média móvel para encontrar a melhor combinação de parâmetros;

  3. Testar diferentes configurações de parâmetros de take profit e stop loss para encontrar a combinação ideal de parâmetros;

  4. Tente adicionar outros fatores ao entrar no mercado, como a amplificação do volume de negociação, para melhorar a eficiência da entrada.

Resumo

A principal ideia desta estratégia é escolher um melhor ponto de entrada durante os ajustes de curto prazo, enquanto acompanha as tendências de longo prazo. Sua maior vantagem é a otimização do preço de entrada, que pode alcançar baixa compra e alta venda para rastrear tendências ascendentes de longo prazo. Ao mesmo tempo, a estratégia também considera o controle de risco, definindo um mecanismo de stop loss. No geral, esta é uma estratégia de rastreamento de tendências muito simples, direta e fácil de entender e implementar. Ao otimizar alguns parâmetros e regras, o efeito da estratégia pode ser melhorado.


/*backtest
start: 2022-12-05 00:00:00
end: 2023-12-11 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/
// © tsujimoto0403

//@version=5
strategy("simple pull back", overlay=true,default_qty_type=strategy.percent_of_equity,
     default_qty_value=100)

//input value 
malongperiod=input.int(200,"長期移動平均BASE200/period of long term sma",group = "パラメータ")
mashortperiod=input.int(10,"長期移動平均BASE10/period of short term sma",group = "パラメータ")
stoprate=input.int(5,title = "損切の割合%/stoploss percentages",group = "パラメータ")
profit=input.int(20,title = "利食いの割合%/take profit percentages",group = "パラメータ")
startday=input(title="バックテストを始める日/start trade day", defval=timestamp("01 Jan 2000 13:30 +0000"), group="期間")
endday=input(title="バックテスを終わる日/finish date day", defval=timestamp("1 Jan 2099 19:30 +0000"), group="期間")


//polt indicators that we use 
malong=ta.sma(close,malongperiod)
mashort=ta.sma(close,mashortperiod)

plot(malong,color=color.aqua,linewidth = 2)
plot(mashort,color=color.yellow,linewidth = 2)

//date range 
datefilter = true

//open conditions
if close>malong and close<mashort and strategy.position_size == 0 and datefilter and ta.rsi(close,3)<30 
    strategy.entry(id="long", direction=strategy.long)
    
//sell conditions 
strategy.exit(id="cut",from_entry="long",stop=(1-0.01*stoprate)*strategy.position_avg_price,limit=(1+0.01*profit)*strategy.position_avg_price)


if close>mashort and close<low[1] and strategy.position_size>0
    strategy.close(id ="long")
        




Mais.