
Эта стратегия представляет собой систему торговли, которая отслеживает тенденции в сочетании с простыми движущимися средними ((SMA) и относительно сильными показателями ((RSI)). Она использует 200-циклические SMA для выявления восходящих тенденций и использует RSI в качестве фильтра для оптимизации времени входа.
Основная логика этой стратегии включает в себя следующие ключевые элементы:
Идентификация тенденции: использование 200-циклических SMA в качестве индикатора долгосрочных тенденций. Когда цена растет и остается выше SMA, она рассматривается как потенциальная восходящая тенденция.
Подтверждение входа: требует, чтобы цена оставалась выше SMA не менее 30 последовательных циклов (в течение минуты), чтобы обеспечить стабильность тренда.
RSI-фильтр: используется 14-циклический RSI-индикатор, который разрешает вход только тогда, когда RSI ниже 30 (зона перепродажи), что помогает поймать потенциальные шансы на отскок.
Управление рисками: устанавливается уровень стоп-лосса 0,5% для ограничения максимальных потерь в одной сделке.
Цель прибыли: установить 2%-ный уровень остановки, чтобы автоматически ликвидировать позиции при достижении ожидаемой прибыли.
Процесс выполнения стратегии выглядит следующим образом:
Тренд-трек: использование долгосрочных SMA для захвата основных тенденций, которые помогают получить прибыль в условиях сильного повышения.
Входная оптимизация: требует, чтобы цена оставалась выше SMA в течение 30 циклов, что помогает отфильтровать ложные прорывы и повысить качество входа.
Обратная ловля: в сочетании с RSI-оперебойными условиями, помогает уловить потенциальные шансы на отскок в начале тренда.
Контроль риска: установление четкого уровня стоп-лосса, эффективно ограничивающего максимальный риск для каждой сделки.
Локализация прибыли: предустановленный уровень остановки обеспечивает автоматическое блокирование прибыли при достижении ожидаемой прибыли.
Объективность: четкие правила стратегии, которые уменьшают эмоциональное воздействие субъективных суждений.
Количественность: параметры стратегии могут быть отслежены и оптимизированы с помощью исторических данных.
Фальшивые прорывы: в поперечных или волатильных рынках могут возникать частые ложные прорывы, которые приводят к последовательным остановкам.
Остаточность: SMA, как отсталый показатель, может пропустить некоторые возможности в начале тренда или остаться в позиции в конце тренда.
Ограничения RSI: строгие условия RSI могут пропустить некоторые хорошие возможности для входа, особенно в период сильного роста.
Фиксированный стоп-стоп: заданный процент может не применяться ко всем рыночным условиям и может быть преждевременно сделан в более волатильных рынках.
Однонаправленность: стратегия - это просто многое делать, а не получать прибыль от падения.
Чувствительность к параметрам: эффективность стратегии может быть чувствительна к изменениям параметров, таких как SMA-циклы, подтверждающие циклы и RSI-настройки.
Рыночная адаптивность: стратегия может хорошо работать на определенных рынках или в определенные временные рамки, но не обязательно для всех ситуаций.
Динамический стоп-стоп: рассмотрите использование ATR (средняя реальная волновая amplitude) для установки динамического уровня стоп-стоп-стоп, чтобы адаптироваться к различным рыночным колебаниям.
Многоциклическое подтверждение: введение механизма подтверждения нескольких временных рамок, например, одновременное выполнение условий солнечного и часового пояса, для повышения надежности сигнала.
Фильтрация силы тренда: добавление ADX (средний индикатор тренда) для измерения силы тренда, только в случае сильной тенденции.
Корректировка волатильности: в зависимости от динамики рыночной волатильности параметры корректировки, такие как увеличение периода подтверждения в период низкой волатильности, уменьшение периода подтверждения в период высокой волатильности.
Присоединение к механизму дисконтирования: учитывайте дисконтирование, когда цена падает ниже SMA и RSI перекупает, чтобы стратегия могла быть прибыльной в двусторонних ситуациях.
Оптимизируйте использование RSI: рассмотрите возможность использования RSI в отрыве от или в сочетании с другими показателями (например, MACD) для повышения надежности входных сигналов.
Введение подтверждения объема сделок: включение анализа объема сделок, чтобы обеспечить достаточную поддержку объема сделок для прорыва или обращения.
Временная фильтрация: включение временной фильтрации, чтобы избежать торговли в известные периоды низкой ликвидности.
Оптимизация управления капиталом: реализация динамического управления позициями, корректировка рискового порога каждой сделки в зависимости от размера счета и рыночных колебаний.
Повышение портфеля индикаторов: рассмотрение возможности объединения других технических индикаторов, таких как Брин-Бенд, Фибоначчи, чтобы создать более полную торговую систему.
“Стратегия двойного равномерного трендового отслеживания с фильтром RSI” - это количественная торговая стратегия, которая сочетает в себе идею отслеживания тренда и обратного мышления на динамику. Стратегия предназначена для выявления долгосрочных тенденций с использованием 200-циклических SMA и оптимизации времени входа в рынок в сочетании с RSI в условиях перепродажи, чтобы захватить потенциальные возможности для отскока в сильных восходящих тенденциях. Встроенный механизм стоп-стоп помогает контролировать риск и блокировать прибыль, что делает его относительно полноценной торговой системой.
Однако в стратегии есть и некоторые ограничения, такие как вероятность воздействия ложных прорывов, ограничение на многоторговые сделки и т. д. Для дальнейшего повышения устойчивости и адаптивности стратегии рекомендуется рассмотреть такие оптимизационные меры, как введение динамического стоп-стоп, многоциклического подтверждения, фильтрации силы тренда и т. д. Кроме того, добавление дифференцированных механизмов и оптимизации стратегии управления капиталом также может значительно повысить общую производительность системы.
В целом, эта стратегия является хорошей отправной точкой для отслеживания тенденций и динамического трейдинга. Благодаря постоянному отслеживанию, оптимизации и проверке на практике, трейдер может улучшить и настроить эту стратегию в соответствии с конкретными рыночными условиями и личными предпочтениями в отношении риска, чтобы достичь лучшей эффективности торговли.
/*backtest
start: 2024-07-21 00:00:00
end: 2024-07-28 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("SMA 200 with RSI Filter", overlay=true)
// Inputs
smaLength = input.int(200, title="SMA Length")
confirmBars = input.int(30, title="Confirmation Bars (30 minutes)")
takeProfitPerc = input.float(2.0, title="Take Profit (%)", step=0.1) / 100
stopLossPerc = input.float(0.5, title="Stop Loss (%)", step=0.1) / 100
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
// Calculate SMA
sma = ta.sma(close, smaLength)
// Calculate RSI
rsi = ta.rsi(close, rsiLength)
// Buy condition
priceAboveSMA = close > sma
aboveSMAcount = ta.barssince(priceAboveSMA == false)
rsiCondition = rsi < rsiOversold
enterLongCondition = priceAboveSMA and aboveSMAcount >= confirmBars and rsiCondition
// Track entry price for calculating take profit and stop loss levels
var float entryPrice = na
if (enterLongCondition and na(entryPrice))
entryPrice := close
// Ensure the entryPrice is only set when a position is opened
if (strategy.opentrades == 0)
entryPrice := na
takeProfitLevel = entryPrice * (1 + takeProfitPerc)
stopLossLevel = entryPrice * (1 - stopLossPerc)
// Exit conditions
takeProfitCondition = close >= takeProfitLevel
stopLossCondition = close <= stopLossLevel
// Plot SMA and RSI
plot(sma, title="SMA 200", color=color.blue)
hline(rsiOverbought, "Overbought", color=color.red)
hline(rsiOversold, "Oversold", color=color.green)
plot(rsi, title="RSI", color=color.purple)
// Plot shapes for entries and exits
plotshape(series=enterLongCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=takeProfitCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="TP")
plotshape(series=stopLossCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="SL")
// Strategy entry and exit
if (enterLongCondition)
strategy.entry("Long", strategy.long, comment="SMA200LE")
if (takeProfitCondition or stopLossCondition)
strategy.close("Long", when=takeProfitCondition or stopLossCondition)
// Reset entry price after position is closed
if (strategy.position_size == 0)
entryPrice := na