Внутреннесуточная EMA-Cross-JC с Trailing SL

Автор:Чао Чжан, Дата: 2023-09-04 15:39:54
Тэги:

Внутренний день EMA-Cross-JC с последующей стратегией SL

Стратегия EMA-Cross-JC Intraday with Trailing SL - это техническая стратегия торговли, которая использует экспоненциальную скользящую среднюю (EMA) для выявления торговых возможностей.

Стратегия работает путем выявления перекрестных соотношений между быстрой и медленной EMA. Когда быстрая EMA пересекается над медленной EMA, генерируется сигнал покупки. Когда быстрая EMA пересекается ниже медленной EMA, генерируется сигнал продажи.

Стратегия также использует последующий стоп-лосс для управления рисками. Последующий стоп-лосс - это динамический стоп-лосс, который повышается по мере того, как цена актива движется в пользу трейдера. Это помогает обеспечить ограничение потерь трейдера, позволяя им участвовать в максимальном объеме потенциальной прибыли.

Стратегия EMA-Cross-JC Intraday with Trailing SL является относительно простой в использовании, но может быть очень эффективной.

Вот некоторые преимущества использования стратегии EMA-Cross-JC Intraday с Trailing SL:

Это простая стратегия, что делает ее доступной для трейдеров всех уровней опыта. Она основана на надежных технических принципах, что означает, что она имеет высокую вероятность успеха. Для управления риском используется стоп-лосс, который помогает защитить трейдеров от больших потерь. Он может использоваться для торговли как длинными, так и короткими позициями, что делает его универсальной стратегией. Вот некоторые риски, связанные с использованием стратегии EMA-Cross-JC Intraday with Trailing SL:

Стратегия основана на исторических данных о ценах, и нет никакой гарантии, что она будет прибыльной в будущем. Стратегия может быть восприимчива к випса, когда цена актива быстро движется в обоих направлениях. Стратегия может быть волатильной, что означает, что существует риск больших потерь. В целом, стратегия EMA-Cross-JC Intraday with Trailing SL является относительно простой и эффективной торговой стратегией, которую могут использовать трейдеры всех уровней опыта.

Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь их задавать.


/*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)


Больше