Тенденция, следующая только за долгой стратегией, - это стратегия, которая отслеживает тенденции цен с использованием динамических скользящих средних. Она определяет текущую тенденцию, рассчитывая скользящие средние самых высоких и самых низких цен в течение периода и объединяет ее с ATR для динамического стоп-лосса и получения прибыли. Эта стратегия хорошо работает на трендовых рынках, своевременно улавливая обратные тенденции для долгосрочного держания.
Стратегия сначала рассчитывает скользящие средние самых высоких и самых низких цен в течение периода (по умолчанию 200 дней) и принимает их среднюю точку в качестве базовой линии. Затем она измеряет отклонение цены от базовой линии. Если цена выше базовой линии на 1 ATR (0,5 раз 10-дневный ATR по умолчанию), это считается восходящим трендом. Если цена ниже базовой линии на 1 ATR, это считается нисходящим трендом. Долгие или короткие позиции вводятся на основе состояния тренда.
Кроме того, динамический ATR позволяет остановить потерю и получить прибыль, чтобы следовать за основным трендом, избегая чрезмерной торговли при незначительных колебаниях.
Риски могут быть уменьшены путем корректировки параметров ATR, добавления фильтров для установки с высокой вероятностью и оценки рыночных условий и желания рисковать.
Тренд после длинной только стратегии - это простая в использовании система торговли трендом в целом. Он определяет направление тренда с использованием динамических средних и устанавливает контроль рисков с помощью остановок на основе ATR. Он может эффективно улавливать прибыльные колебания на трендовых рынках.
/*backtest start: 2022-10-10 00:00:00 end: 2023-10-16 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Trend Following Long Only Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) lookback_length = input(200, type=input.integer, minval=1, title="Lookback Length") smoother_length = input(5, type=input.integer, minval=1, title="Smoother Length") atr_length = input(10, type=input.integer, minval=1, title="ATR Length") atr_multiplier = input(0.5, type=input.float, minval=0.5, title="ATR Multiplier") vola = atr(atr_length) * atr_multiplier price = sma(close, 3) l = ema(lowest(low, lookback_length), smoother_length) h = ema(highest(high, lookback_length), smoother_length) center = (h + l) * 0.5 upper = center + vola lower = center - vola trend = ema(price > upper ? 1 : (price < lower ? -1 : 0), 3) c = trend < 0 ? upper : lower pcenter = plot(center, transp=100) pclose = plot(close, transp=100) pc = plot(c, transp=100) buy_signal = crossover(trend, 0.0) sell_signal = crossunder(trend, 0.0) strategy.entry("Buy", strategy.long, when=buy_signal) strategy.close("Buy", when=sell_signal) bgcolor(trend >= 0 ? color.green : color.red, transp=95) fill(pc, pclose, color=trend >= 0 ? color.green : color.red)