Стратегия следования за трендом поддержки и сопротивления


Дата создания: 2024-02-27 15:11:04 Последнее изменение: 2024-02-27 15:11:04
Копировать: 1 Количество просмотров: 609
1
Подписаться
1617
Подписчики

Стратегия следования за трендом поддержки и сопротивления

Обзор

Стратегия использует три технических показателя - поддержку, сопротивление и линию тренда - для автоматического входа и остановки. Стратегия сначала идентифицирует ключевые точки поддержки и сопротивления, а затем в сочетании с направлением тренда определяет время входа.

Стратегический принцип

  1. Выявление ключевых точек поддержки и сопротивления.
  2. Используйте линию тренда, чтобы определить направление тенденции на рынке. Она определяется как тенденция к росту, когда цена выше, чем вчерашняя цена закрытия, в противном случае - как тенденция к снижению.
  3. Сигнал “купить” подается, когда цена приближается к поддержке и находится в тенденции к повышению.
  4. Когда цена приближается к уровню сопротивления и относится к нисходящему тренду, подается сигнал продажи.
  5. Стоп-стоп-цели рассчитываются на основе коэффициента возврата риска, при этом стоп-стоп устанавливается вблизи уровня поддержки.
  6. Вы можете использовать следящие стоп-локи для блокировки прибыли.

Анализ преимуществ

  1. Воспользуйтесь преимуществами трёх мощных индикаторов - поддержки, сопротивления и тренда.
  2. Автоматическое определение времени поступления, избегание субъективных ошибок.
  3. Риск управляемый, сдерживание убытков контролируется вблизи ключевых позиций поддержки.
  4. Выборный отслеживание стоп-лосса для блокировки прибыли и предотвращения оттока прибыли.

Анализ рисков

  1. Риск провала прорыва. После того, как цена прорвет поддержку или сопротивление, она может снова вернуться, что приводит к ухудшению.
  2. Риск провала определения тренда. Использование трендовых линий может привести к ошибкам в определении направления тренда.
  3. Стоп рискует быть нарушен. Хотя стоп находится недалеко от поддержки, он может быть непосредственно нарушен при сильных колебаниях.

Что делать?

  1. Определительность резистентности к поддержке должна быть расслаблена.
  2. Оценка тенденций с использованием различных показателей.
  3. Применение предотвращения повреждений или своевременного вмешательства.

Направление оптимизации

  1. Добавление дополнительных показателей, подтверждающих сигналы входа, повышает точность. Например, показатели количественной стоимости, скользящие средние и т. д.
  2. Оптимизировать настройки поддерживающего сопротивления и остановки. Можно проверить влияние различных параметров на результаты.
  3. Попробуйте методы машинного обучения, которые автоматически оптимизируют параметры.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2024-01-27 00:00:00
end: 2024-02-26 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Support Resistance Trend Strategy", overlay=true)

// Input parameters
supportLevel = input(100, title="Support Level")
resistanceLevel = input(200, title="Resistance Level")
riskRewardRatio = input(2, title="Risk-Reward Ratio")
trailStopLoss = input(true, title="Use Trailing Stop Loss")

// Calculate trend direction based on trend lines
trendUp = close > request.security(syminfo.tickerid, "D", close[1])
trendDown = close < request.security(syminfo.tickerid, "D", close[1])

// Buy signal condition
buySignal = close < supportLevel and trendUp

// Sell signal condition
sellSignal = close > resistanceLevel and trendDown

// Entry point and exit conditions
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.entry("Sell", strategy.short, when=sellSignal)

// Calculate targets and stop-loss levels
targetPrice = close + (close - supportLevel) * riskRewardRatio
stopLossLevel = supportLevel

// Plot support and resistance levels
plot(supportLevel, color=color.green, linewidth=2, title="Support Level")
plot(resistanceLevel, color=color.red, linewidth=2, title="Resistance Level")

// Plot targets and stop-loss levels
plot(targetPrice, color=color.blue, linewidth=2, title="Target Price")
plot(stopLossLevel, color=color.orange, linewidth=2, title="Stop Loss Level")

// Trailing stop-loss
strategy.exit("Take Profit/Stop Loss", from_entry="Buy", loss=stopLossLevel, profit=targetPrice)
strategy.exit("Take Profit/Stop Loss", from_entry="Sell", loss=targetPrice, profit=stopLossLevel)

// Plot trail stop loss
if (trailStopLoss)
    strategy.exit("Trailing Stop Loss", from_entry="Buy", loss=stopLossLevel)
    strategy.exit("Trailing Stop Loss", from_entry="Sell", loss=stopLossLevel)