O nome desta estratégia é
A lógica principal desta estratégia é a seguinte:
Usar o cruzamento entre o preço baixo de 180 períodos e o preço de fechamento para determinar a tendência ascendente. Quando o baixo cruza acima do preço de fechamento, indica que o preço começa a subir e uma tendência é formada, uma posição longa será aberta neste ponto;
Quando o preço mudar de uma tendência descendente para uma tendência ascendente, ou seja, o preço de fechamento cruzar acima do preço de abertura e a linha EMA estar abaixo, uma posição longa também será aberta;
Quando o preço mudar de uma tendência ascendente para uma tendência descendente, ou seja, o preço de fechamento cruzar abaixo do preço de abertura, a posição longa existente será encerrada;
Para determinar a tendência descendente, utilizar o cruzamento entre o máximo de 180 períodos e a EMA.
Quando o preço mudar de uma tendência ascendente para uma tendência descendente, ou seja, o preço de fechamento cruzar abaixo do preço de abertura e a linha EMA estar acima, uma posição curta também será aberta;
Quando o preço mudar de uma tendência descendente para uma tendência ascendente, ou seja, o preço de fechamento cruzar acima do preço de abertura, a posição curta existente será fechada.
Esta estratégia combina indicadores de tendência e média móvel, que podem capturar eficazmente os pontos de virada das tendências de preços.
Esta estratégia tem também alguns riscos:
As soluções para os riscos são:
A estratégia pode ser otimizada nos seguintes aspectos:
Em geral, esta é uma estratégia típica de tendência que usa as características do preço para determinar a direção e rastrear as tendências. É simples, eficaz, fácil de implementar e adequado como uma estratégia quantitativa de negociação para iniciantes. No entanto, existem alguns problemas como atraso do indicador e sensibilidade dos parâmetros. Esses problemas podem ser melhorados introduzindo mais fontes de dados e usando aprendizado de máquina. Portanto, há um grande potencial de expansão e otimização desta estratégia.
/*backtest start: 2023-11-28 00:00:00 end: 2023-12-05 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Trend + EMA", overlay=true, initial_capital=10000, currency=currency.USD, pyramiding=0) tim=input("180", title="Period for trend") ema_period=input(180, title="EMA period") opn = request.security(syminfo.tickerid, tim, open) cls = request.security(syminfo.tickerid, tim, close) emaline = ema(close, ema_period) plot(opn, color=red) plot(cls, color=green) plot(emaline, color=black) if (crossover(low, emaline)) strategy.entry("long", strategy.long) if (crossover(cls, opn) and emaline < opn and strategy.position_size == 0) strategy.entry("long", strategy.long) if (crossunder(cls, opn) and strategy.position_size > 0) strategy.close_all() if (crossunder(high, emaline) and high < emaline) strategy.entry("short", strategy.short) if (crossunder(cls, opn) and emaline > opn and strategy.position_size == 0) strategy.entry("short", strategy.short) if (crossover(cls, opn) and strategy.position_size < 0) strategy.close_all()