
Это стратегия подтверждения тренда, основанная на двойной средней и переходной величинах. Эта стратегия использует перекрестные сигналы 21-циклического и 50-циклического подвижного среднего показателя ((EMA) в сочетании с анализом переходной величины для подтверждения направления тренда, что позволяет уловить тенденции рынка и захватить торговые возможности.
Основная логика стратегии состоит из трех основных частей: определение тренда, входные сигналы и выходные сигналы. Определение тренда осуществляется путем сравнения текущего оборота с 20-циклическим средним оборотом. Выше среднего считается трендом, а ниже среднего - трендом. Входный сигнал основан на перекрестке 21-циклической ЭМА и 50-циклической ЭМА, в результате которого происходит синтетическое подтверждение тренда.
Эта стратегия, в сочетании с двулинейной системой и анализом объема сделок, создает полную торговую систему для отслеживания тенденций. Стратегия имеет разумный дизайн, имеет хорошую работоспособность и адаптивность. С помощью рекомендуемого направления оптимизации можно дополнительно повысить стабильность и доходность стратегии.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-23 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("TATA Swing Trading Strategy with Volume and EMAs", overlay=true)
// Define the moving averages
ema21 = ta.ema(close, 21)
ema50 = ta.ema(close, 50)
// Calculate volume moving average for analysis
volumeMA = ta.sma(volume, 20)
// Trend Confirmation using Volume
isBullishTrend = volume > volumeMA
isBearishTrend = volume < volumeMA
// Long Entry Conditions
longCondition = isBullishTrend and ta.crossover(ema21, ema50)
// Short Entry Conditions
shortCondition = isBearishTrend and ta.crossunder(ema21, ema50)
// Exit Conditions
exitLong = close < ema21 or close < ema50
exitShort = close > ema21 or close > ema50
// Execute trades based on conditions
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
if (exitLong)
strategy.close("Long")
if (exitShort)
strategy.close("Short")
// Plotting the EMAs
plot(ema21, color=color.blue, title="21 EMA")
plot(ema50, color=color.red, title="50 EMA")