Количественная торговая стратегия, сочетающая в себе двойное пересечение скользящих средних и индикатор RSI


Дата создания: 2023-11-21 12:09:50 Последнее изменение: 2023-11-21 12:09:50
Копировать: 0 Количество просмотров: 669
1
Подписаться
1617
Подписчики

Количественная торговая стратегия, сочетающая в себе двойное пересечение скользящих средних и индикатор RSI

Обзор

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

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

Если быстрый 9-циклический средний пересекает медленный 50-циклический средний, это означает, что краткосрочная тенденция растет, накладывая на нее долгосрочную тенденцию, и является типичным многоголовым сигналом. В то же время, если индикатор RSI больше, чем 5 пунктов предыдущего цикла и меньше, чем 70, это означает, что он находится в зоне предыдущего перекупа.

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

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

  • Используйте двойную равномерную скрещивание для определения тенденций и избегайте ложных прорывов
  • Индекс RSI помогает избежать ошибок при рыночных переломах
  • Гибкость в адаптации среднелинейного цикла к различным видам и временным измерениям
  • Контролируемая стратегия по снижению убытков

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

  • Неэффективность принятия решений на перекрёстке может привести к убыткам.
  • Неправильная настройка параметров RSI может привести к пропуску оптимального момента входа
  • Необходимо обратить внимание на то, поддерживает ли объем торгов цены.
  • Нерациональное поведение, вызванное внезапными событиями, требует ручного вмешательства.

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

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

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

Эта стратегия позволяет эффективно использовать тенденции средней и длинной линии для получения стабильной прибыли путем определения направления двухместного перекрёстка и избежания преследования RSI. Однако также необходимо следить за задержкой сигналов перекрёстка средней и длинной линии и корректировкой параметров RSI, а также обращать внимание на связь цены и объема торгов.

Исходный код стратегии
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © joshuajcoop01

//@version=5
strategy("Bitpanda Coinrule Template",
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2020, 1, 1, 0, 0)
notInTrade = strategy.position_size <= 0


// RSI
length = input(14)
vrsi = ta.rsi(close, length)

// Moving  Averages for Buy Condition
buyFastEMA = ta.ema(close, 9)
buySlowEMA = ta.ema(close, 50)
buyCondition1 = ta.crossover(buyFastEMA, buySlowEMA)


increase = 5
if ((vrsi > vrsi[1]+increase) and buyCondition1 and vrsi < 70 and timePeriod)
    strategy.entry("Long", strategy.long)


// Moving  Averages for Sell Condition
sellFastEMA = ta.ema(close, 9)
sellSlowEMA = ta.ema(close, 50)
plot(request.security(syminfo.tickerid, "60", sellFastEMA), color = color.blue)
plot(request.security(syminfo.tickerid, "60", sellSlowEMA), color = color.green)


condition = ta.crossover(sellSlowEMA, sellFastEMA)
//sellCondition1 = request.security(syminfo.tickerid, "60", condition)

strategy.close('Long', when = condition and timePeriod)