
Это торговая стратегия, которая использует среднюю величину Ренко для определения и отслеживания тенденции. Основная логика этой стратегии заключается в том, чтобы совершать соответствующие покупки или продажи, когда цена преодолевает среднюю величину HL2 за 22 цикла. В то же время в этой стратегии есть механизмы управления рисками, такие как остановка, остановка и движущаяся остановка.
Сделайте больше, когда столбик Ренко закрывается над ценой, проходящей через среднее значение 22 циклов HL2; сделайте пустоту, когда столбик Ренко закрывается под ценой, проходящей через среднее значение 22 циклов HL2. Таким образом, чтобы понять направление тенденции, определяя отношение цены к среднему значению.
Среднее HL2 ((Highest High + Lowest Low) /2) - это среднее трендовое значение, которое объединяет информацию о максимальных и минимальных ценах и позволяет более точно судить о направлении развития тренда. 22 является экспериментальной величиной, используемой для балансировки чувствительности среднего значения.
Кроме того, в стратегии есть ограничения на открытие позиций только в определенные торговые часы, чтобы избежать возможных сильных колебаний на рынке.
Это довольно простая и интуитивно понятная стратегия отслеживания трендов, которая имеет следующие преимущества:
Используя столбик Renko в качестве торгового сигнала, можно эффективно отфильтровывать рыночный шум и улавливать основные тенденции.
HL2 средний объединяет информацию о максимальных и минимальных ценах, что позволяет более точно и надежно оценивать тенденции.
Установление фиксированных стоп-лосс и стоп-стоп-пойнтов позволяет хорошо контролировать риски по отдельным сделкам.
Мобильный стоп позволяет зафиксировать прибыль по мере развития тренда и отслеживать его.
Ограничивая время торгов, можно в какой-то степени избежать шока от резкой рыночной ситуации.
В этой стратегии также есть некоторые риски, в частности:
Средняя стратегия может привести к большему количеству ложных сигналов.
Неэффективное реагирование на риски отключения, вызванные внезапными событиями.
Неправильная настройка Ренко может привести к тому, что вы упустите лучшие возможности.
Фиксированные стоп-лозы и остановки не могут адаптироваться к изменениям на рынке.
Эта стратегия может быть оптимизирована в следующих направлениях:
Добавление других показателей или условий, чтобы отфильтровать сигнал и уменьшить ложный сигнал. Например, показатели количественной мощности, показатели колебаний и т. Д.
Можно проверить средние значения различных параметров, чтобы найти более подходящие циклические значения.
Размер корпуса Renko также может быть оптимизирован для тестирования, чтобы получить оптимальные параметры.
Добавление адаптивных сдерживающих механизмов на основе волатильности.
Для оптимизации этого условия можно тестировать различные настройки для торговых периодов.
В целом, это простая и практичная стратегия для определения и отслеживания тенденций с использованием средней величины Ренко. Она имеет более интуитивную торговую логику, механизм контроля риска, подходящий для трейдеров, стремящихся к стабильной прибыли. Но есть также место для улучшения, чтобы получить лучшую эффективность стратегии с помощью оптимизации параметров, увеличения условий фильтрации и адаптации к остановке потерь.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("HL2 - 22 Cross", overlay=true)
// Stops and Profit inputs
inpTakeProfit = input(defval = 300, title = "Take Profit", minval = 0)
inpStopLoss = input(defval = 200, title = "Stop Loss", minval = 0)
inpTrailStop = input(defval = 200, title = "Trailing Stop", minval = 0)
inpTrailOffset = input(defval = 0, title = "Trailing Stop Offset", minval = 0)
// Stops and Profit Targets
useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na
useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na
useTrailStop = inpTrailStop >= 1 ? inpTrailStop : na
useTrailOffset = inpTrailOffset >= 1 ? inpTrailOffset : na
//Specific Time to Trade
myspecifictradingtimes = input('0500-1600', title="My Defined Hours")
longCondition1 = crossover(close, ema(hl2, 22))
longCondition2 = time(timeframe.period, myspecifictradingtimes) != 0
if longCondition1 and longCondition2
strategy.entry("Long", strategy.long, comment="LongEntry")
shortCondition1 = crossunder(close, ema(hl2, 22))
shortCondition2 = time(timeframe.period, myspecifictradingtimes) != 0
if shortCondition1 and shortCondition2
strategy.entry("Short", strategy.short, comment="ShortEntry")
strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)