Esta estratégia combina linhas EMA, indicador MACD e ganho de um dia para identificar sinais de avanço do mercado e implementar uma estratégia de negociação de impulso para comprar baixo e vender alto.
Quando a linha EMA rápida cruza a linha EMA lenta, considera-se que o mercado está em uma tendência de alta e um sinal de compra é gerado.
Além disso, se o preço de fechamento de um único dia subir mais de 10% em comparação com o preço de abertura, também será gerado um sinal de compra para perseguir a tendência de mercado.
Após a abertura de posições, se o preço cair mais de 10%, o stop loss será acionado.
Esta é uma tendência típica de seguir uma estratégia que pode capturar a tendência de alta após uma forte ruptura de ímpeto, com grande potencial de lucro.
Embora razoavelmente concebido, ainda existem alguns riscos:
Para reduzir os riscos acima, podemos considerar a otimização da estratégia de stop loss em movimento ou adicionar outros indicadores como volume para filtrar sinais.
Ainda há espaço para uma maior otimização:
A estabilidade e a rendibilidade desta estratégia podem ser consideravelmente melhoradas através de ajustes de parâmetros, combinação de indicadores e outros métodos.
Em geral, esta estratégia é simples, prática e com grande potencial de lucro. Ao julgar os pontos de ruptura do mercado, ela pode efetivamente capturar as tendências de alta, e o controle de retirada também é razoável. Na otimização futura, melhorar continuamente o ajuste de parâmetros e o projeto stop loss / take profit pode torná-lo uma estratégia comercial quantitativa de longo prazo que vale a pena.
/*backtest start: 2023-01-11 00:00:00 end: 2024-01-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Alt Coins", overlay=true) //Simple Alt Coin Trading Strategy// // by @ShanghaiCrypto // ////EMA//// fastLength = input(5) slowLength = input(12) baseLength = input(50) price = close emafast = ema(price, fastLength) emaslow = ema(price, slowLength) emabase = ema(price, baseLength) ///MACD//// MACDLength = input(9) MACDfast = input(12) MACDslow = input(26) MACD = ema(close, MACDfast) - ema(close, MACDslow) aMACD = ema(MACD, MACDLength) delta = MACD - aMACD ////PUMP//// OneCandleIncrease = input(10, title='Gain %') pump = OneCandleIncrease/100 ////Profit Capture and Stop Loss////// stop = input(10.0, title='Stop Loss %', type=float)/100 profit = input(45.0, title='Profit %', type=float)/100 stop_level = strategy.position_avg_price * (1 - stop) take_level = strategy.position_avg_price * (1 + profit) ////Entries///// if crossover(emafast, emaslow) strategy.entry("Cross", strategy.long, comment="BUY") if (crossover(delta, 0)) strategy.entry("MACD", strategy.long, comment="BUY") if close > (open + open*pump) strategy.entry("Pump", strategy.long, comment="BUY") /////Exits///// strategy.exit("SELL","Cross", stop=stop_level, limit=take_level) strategy.exit("SELL","MACD", stop=stop_level, limit=take_level) strategy.exit("SELL","Pump", stop=stop_level, limit=take_level) ////Plots//// plot(emafast, color=green) plot(emaslow, color=red) plot(emabase, color=yellow) plot(take_level, color=blue) plot(stop_level, color=orange)