Esta estratégia usa a cruz de ouro e a cruz da morte de linhas EMA rápidas e lentas para determinar a tendência e define uma porcentagem de lucro como a regra de lucro para implementar a tendência após a negociação.
A estratégia emprega 3 e 30 EMAs de período como sinais de negociação. Quando o 3EMA cruza acima do 30EMA, ele sinaliza que o preço começa a subir, que está em conformidade com a condição de compra. Quando o 3EMA cruza abaixo do 30EMA, ele sinaliza que o preço começa a cair, que está em conformidade com a condição de venda.
Além disso, uma meta de lucro é configurada na estratégia. Quando o preço sobe para o preço de entrada multiplicado pela porcentagem de lucro, a posição será fechada para bloquear mais lucros e alcançar a tendência após a negociação.
Em conclusão, esta é uma estratégia de tendência muito prática. Adota indicadores EMA simples para determinar a direção da tendência e define regras razoáveis de lucro para controlar efetivamente os riscos, adequados para rastreamento de longo prazo de tendências de médio e longo prazo de ações e índices.
/*backtest start: 2023-02-12 00:00:00 end: 2024-02-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover Strategy with Target", shorttitle="EMACross", overlay=true) // Define input parameters fastLength = input(3, title="Fast EMA Length") slowLength = input(30, title="Slow EMA Length") profitPercentage = input(100.0, title="Profit Percentage") // Calculate EMAs fastEMA = ta.ema(close, fastLength) slowEMA = ta.ema(close, slowLength) // Plot EMAs on the chart plot(fastEMA, color=color.blue, title="Fast EMA") plot(slowEMA, color=color.red, title="Slow EMA") // Buy condition: 3EMA crosses above 30EMA buyCondition = ta.crossover(fastEMA, slowEMA) // Sell condition: 3EMA crosses below 30EMA or profit target is reached sellCondition = ta.crossunder(fastEMA, slowEMA) or close >= (strategy.position_avg_price * (1 + profitPercentage / 100)) // Target condition: 50 points profit //targetCondition = close >= (strategy.position_avg_price + 50) // Execute orders // strategy.entry("Buy", strategy.long, when=buyCondition) // strategy.close("Buy", when=sellCondition ) if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.close("Buy") // // Execute sell orders // strategy.entry("Sell", strategy.short, when=sellCondition) // strategy.close("Sell", when=buyCondition) // Plot buy and sell signals on the chart plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar) plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)