Стратегия RSI2 внутридневной разворотный процент выигрышей на бэктесте

RSI SMA
Дата создания: 2024-04-29 14:02:55 Последнее изменение: 2024-04-29 14:02:55
Копировать: 7 Количество просмотров: 1116
1
Подписаться
1617
Подписчики

Стратегия RSI2 внутридневной разворотный процент выигрышей на бэктесте

Обзор

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

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

  1. Вычислить RSI на 2 цикла и 200-циклическую простую скользящую среднюю
  2. Когда цена закрытия выше средней и RSI меньше, чем превышает порог продажи (по умолчанию 10), покупайте в следующий торговый день
  3. Запись минимальной цены покупки в день в качестве цены входа
  4. Стоп-приз 6% и стоп-убыток 3% на основе цены входа
  5. На следующий торговый день, если коснуться стоп-цены, то будет стоп-полиция, если коснуться стоп-цены, то будет стоп-полиция.
  6. Количество стоп-ап и стоп-лосс, вычислить стратегию побед в заданном цикле

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

  1. Покупайте на дневных минимумах, чтобы получить обратную прибыль от перепродажи RSI в тот день
  2. Фиксированные процентные стопы и стоп-лосы для контроля риска в одном транзакции
  3. Использование среднелинейных фильтров с длительным циклом для уменьшения негативных сделок
  4. Простота использования, гибкость параметров, подходящая для краткосрочных трейдеров

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

  1. RSI oversold не гарантирует обратного курса, в крайних случаях рынок будет продолжать падать
  2. Фиксированный процент стоп-стоп может не покрыть стоимость сделки
  3. Входные пункты основаны на минимальных ценах за день, поэтому очень сложно точно определить, где именно стоит покупка.
  4. Отсутствие определения тенденции, простое использование сигналов о перекупке и перепродаже может привести к низкой доходности.

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

  1. Использование адаптивных стоп-стоп, динамически корректируемых в зависимости от таких показателей, как волатильность цен
  2. Присоединяйте индикаторы подтверждения тренда, такие как MACD, DMI и т. Д., Чтобы избежать обратной торговли
  3. Оптимизация входных точек, например, с использованием правила торговли на переменном расстоянии от пляжа
  4. Увеличение управления позициями, повышение эффективности использования капитала и доходности
  5. В сочетании с другими короткоциклическими индикаторами, повышенная степень подтверждения сигнала, такие как Brinband, KDJ и т. д.

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

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

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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © rajk1987

//@version=5
strategy("RSI2 strategy Raj", overlay=true, margin_long=100, margin_short=100)

rsi_len = input.int( 2, title = "RSI Length",     group = "Indicators")
rsi_os  = input.float(10, title = "RSI Oversold", group = "Indicators")
rsi_ob  = input.float(90, title = "RSI OverBrought",   group = "Indicators")
max_los = input.float(3,title = "Max Loss Percent", group = "Indicators")
tar_per = input.float(6,title = "Target Percent",group = "Indicators")

//Get the rsi value of the stock
rsi = ta.rsi(close, rsi_len)
sma = ta.sma(close,200)
var ent_dat = 0
var tar = 0.0
var los = 0.0
var bp = 0.0

if ((close > sma) and (rsi < rsi_os))
    strategy.entry("RSI2 Long Entry", strategy.long,1)
    ent_dat := time(timeframe = timeframe.period)

if(ent_dat == time(timeframe = timeframe.period))
    bp := low //high/2 + low/2
    tar := bp * (1 + (tar_per/100))
    los := bp * (1 - (max_los/100))

if (time(timeframe = timeframe.period) > ent_dat)
    strategy.exit("RSI2 Exit", "RSI2 Long Entry",qty = 1, limit = tar, stop = los, comment_profit = "P", comment_loss = "L")

//plot(rsi,"RSI")
//plot(bp,"BP")
//plot(tar,"TAR")
//plot(los,"LOS")