EMA-Cross-JC Intraday com Trailing SL

Autora:ChaoZhang, Data: 2023-09-04 15:39:54
Tags:

EMA-Cross-JC Intraday com estratégia SL de rastreamento

A estratégia EMA-Cross-JC Intraday with Trailing SL é uma estratégia técnica de negociação que usa a média móvel exponencial (EMA) para identificar oportunidades de negociação.

A estratégia funciona identificando cruzes entre as EMAs rápidas e lentas. Quando a EMA rápida cruza acima da EMA lenta, um sinal de compra é gerado. Quando a EMA rápida cruza abaixo da EMA lenta, um sinal de venda é gerado.

A estratégia também usa um stop loss de trailing para gerenciar o risco. O stop loss de trailing é um stop loss dinâmico que é movido para cima à medida que o preço do ativo se move a favor do comerciante. Isso ajuda a garantir que as perdas do comerciante sejam limitadas, permitindo que eles participem da maior parte do lucro potencial possível.

A estratégia EMA-Cross-JC Intraday with Trailing SL é uma estratégia relativamente simples de usar, mas pode ser muito eficaz.

A seguir apresentam-se alguns dos benefícios da utilização da estratégia EMA-Cross-JC Intraday with Trailing SL:

É uma estratégia simples de usar, tornando-a acessível a comerciantes de todos os níveis de experiência. Baseia-se em princípios técnicos sólidos, o que significa que tem uma elevada probabilidade de êxito. Ele usa um stop loss para gerenciar o risco, o que ajuda a proteger os traders de grandes perdas. Pode ser usado para negociar posições longas e curtas, tornando-se uma estratégia versátil. A seguir apresentam-se alguns dos riscos associados à utilização da estratégia EMA-Cross-JC Intraday with Trailing SL:

A estratégia baseia-se em dados históricos de preços e não há garantia de que seja rentável no futuro. A estratégia pode ser suscetível a um "whipsaw", que é quando o preço de um ativo se move rapidamente em ambas as direções. A estratégia pode ser volátil, o que significa que existe o risco de grandes perdas. No geral, a estratégia de negociação EMA-Cross-JC Intraday com Trailing SL é uma estratégia de negociação relativamente simples e eficaz que pode ser usada por traders de todos os níveis de experiência.

Espero que este artigo seja útil e informativo.


/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-03 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA-Cross-JC Intraday with Trailing SL", overlay=true)

// emabasel = input(100, "Base Length")
emaslen = input(15, "Slow Length")
emaflen = input(9, "Fast Length")
intra =input(true, title = "Intraday?")
sq_time_hr = input(15, title="Exit Hr")
sq_time_min = input(20, title="Exit Min")

emaslow = ta.ema(close, emaslen)
emafast = ta.ema(close, emaflen)
// emabase = ta.ema(close, emabasel)

emaup = ta.crossover(emafast, emaslow)
emadown = ta.crossunder(emafast, emaslow)

tsival = ta.tsi(close, 13, 55)

plot(emaslow, title="Slow EMA", color=color.yellow, linewidth=1)
plot(emafast, title="Fast EMA", color=color.green, linewidth=1)
// plot(emabase, title="Base EMA", color=color.white, linewidth=3)

takeProfitPoints = input(200, title="Take Profit")
// tp_off = input(4000, title="Keep trailing")
stopLossPoints = input(100, title="Stop Loss")

// Define the time to square off positions
squareOffTime = timestamp(year, month, dayofmonth, sq_time_hr, sq_time_min)

var float trailingStop = na

if emaup and barstate.isconfirmed and time < squareOffTime //and tsival >=0
    strategy.entry("Buy", strategy.long)
    strategy.exit("Sell", "Buy", stop=close - stopLossPoints, limit=close + takeProfitPoints)
    // trailingStop := emabase - stopLossPoints
    strategy.exit("Trailing Stop", "Buy", stop=trailingStop)

if emadown and barstate.isconfirmed and time < squareOffTime //and tsival <=0
    strategy.entry("Sell", strategy.short)
    strategy.exit("Cover", "Sell", stop=close + stopLossPoints, limit=close - takeProfitPoints)
    // trailingStop := emabase + stopLossPoints
    strategy.exit("Trailing Stop", "Sell", stop=trailingStop)

// Close any open positions before the end of the trading day
if ta.barssince(strategy.opentrades) == 0 and time >= squareOffTime and intra == true
    strategy.close_all()

// plot(tsival, title = "TSI Value")
plotshape(emaup and barstate.isconfirmed, title="Crossover", style = shape.triangleup , size=size.small,color = color.green, location = location.belowbar)
plotshape(emadown and barstate.isconfirmed, title="Crossunder",style = shape.triangledown, size=size.small,color = color.red, location = location.abovebar)


Mais.