Торговая стратегия RSI, сочетающая полосы Боллинджера и скользящие средние


Дата создания: 2024-03-11 11:02:44 Последнее изменение: 2024-03-11 11:02:44
Копировать: 0 Количество просмотров: 717
1
Подписаться
1617
Подписчики

Торговая стратегия RSI, сочетающая полосы Боллинджера и скользящие средние

Обзор

Эта стратегия использует три технических показателя, включая пересекающиеся сигналы, такие как 3-дневная скользящая средняя ((EMA) и относительно слабый показатель ((RSI), для создания целой торговой системы. Сигнал покупки возникает, когда цена прорывает 3-дневную скользящую среднюю (EMA) и RSI ниже 30, а также сигнал продажи, когда цена прорывает 3-дневную скользящую среднюю (EMA) и RSI ниже 70.

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

  1. Полоса Бринна состоит из трех линий: средняя линия - это скользящая средняя цены, а верхняя и нижняя полоса - стандартная разница цены. Она используется в основном для измерения волатильности рынка и выявления состояния перекупа и перепродажи.

  2. 3-дневная EMA - это скользящая средняя индекса, основанная на последних 3-дневных расчетах цен на закрытие, способная быстро реагировать на ценовые изменения и является индикатором краткосрочного тренда.

  3. RSI измеряет величину и скорость изменения цен на акции в течение определенного периода времени, чтобы оценить явление перекупки и перепродажи акций. Когда RSI меньше 30, подсказывает перепродажу; когда RSI больше 70, подсказывает перекупку.

  4. Логика стратегии:

    • Когда цена на закрытии пересекает нижнюю полосу Брин, одновременно пересекая 3-дневную ЭМА, и RSI меньше 30, считается, что акции могут скоро перевернуться вверх, создавая сигнал купить.
    • Когда конечная цена пересекает Бринскую полосу, пересекает 3-дневную ЭМА, и RSI больше 70, считается, что акция может быть на подходе к обратному падению, что создает сигнал продажи.
    • Сигналы, отвечающие трем показателям: BRI, EMA, RSI, могут эффективно отфильтровывать множество ложных сигналов, повышая точность торгов.

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

  1. Брин-пояса позволяют количественно оценивать рыночные колебания, 3-дневная ЭМА отслеживает изменения цен, RSI определяет перекуп и перепродажу, три показателя дополняют друг друга и составляют прочную торговую систему.

  2. При этом в сочетании с тремя индикаторами, строгие условия торгов позволяют избежать частых сделок, что снижает их стоимость.

  3. Лучшие возможности для торговли могут быть зафиксированы как в трендовых, так и в шокирующих ситуациях.

  4. Явный, понятный, понятный и оптимизируемый.

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

  1. При односторонней трендовой конъюнктуре эта стратегия может иметь более низкую частоту торговли и упускать некоторые трендовые прибыли.

  2. В случае сильной волатильности рынка в течение дня, торговые сигналы могут появиться с небольшой задержкой.

  3. Выбор параметров стратегии оказывает существенное влияние на результаты торговли и требует оптимизации в соответствии с различными критериями и рыночными характеристиками.

  4. Стратегия не устанавливает стоп-лосс и стоп-стоп, что может привести к более высоким рискам при резких колебаниях.

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

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

  1. Внедрение более эффективных технических индикаторов, таких как индикаторы трендового класса MACD, позволяет эффективно ловить торговые возможности как в условиях шока, так и в условиях тренда.

  2. Оптимизация выбора параметров, чтобы найти оптимальное сочетание параметров, повысить стабильность стратегии и доходность путем полного отсчета исторических данных.

  3. Рассмотреть возможность включения правил управления позициями и управлением капиталом, контроля соотношения капитала в одной сделке и динамического корректировки позиций для лучшего контроля риска.

  4. Установка разумных условий стоп-стоп, чтобы уменьшить максимальные потери от одной сделки и обеспечить максимальную прибыль от прибыльной.

  5. Разработать механизмы реагирования на различные рыночные условия, такие как уменьшение частоты торгов в условиях шока, увеличение времени удержания позиций в условиях тренда и т. д.

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

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

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

Исходный код стратегии
/*backtest
start: 2024-03-09 00:00:00
end: 2024-03-10 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Custom Strategy", overlay=true)

// Input parameters
length = input(20, title="Bollinger Bands Length")
src = input(close, title="Source")
mult = input(2.0, title="Bollinger Bands Multiplier")

// Bollinger Bands
basis = ta.sma(src, length)
upper_band = basis + mult * ta.stdev(src, length)
lower_band = basis - mult * ta.stdev(src, length)

// 3 EMA
ema3 = ta.ema(close, 3)

// RSI
rsi_length = input(14, title="RSI Length")
rsi_source = close
rsi_value = ta.rsi(rsi_source, rsi_length)

// Strategy logic
strategy.entry("Buy", strategy.long, when=ta.crossover(close, lower_band) and ta.crossover(close, ema3) and rsi_value < 30)
strategy.entry("Sell", strategy.short, when=ta.crossover(close, upper_band) and ta.crossunder(close, ema3) and rsi_value > 70)

// Plotting
plot(upper_band, color=color.blue)
plot(lower_band, color=color.blue)
plot(ema3, color=color.green, title="3 EMA")
hline(70, "Overbought", color=color.red)
hline(30, "Oversold", color=color.green)