Внутридневная торговая стратегия TAM RSI


Дата создания: 2023-10-17 16:58:46 Последнее изменение: 2023-10-17 16:58:46
Копировать: 5 Количество просмотров: 790
1
Подписаться
1617
Подписчики

Внутридневная торговая стратегия TAM RSI

Обзор

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

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

Эта стратегия использует два индикатора RSI для получения сигналов о покупке и продаже. Для получения сигналов о покупке используются краткосрочные 2-дневные RSI и среднесрочные 14-дневные RSI, для получения сигналов о покупке используются краткосрочные 7-дневные RSI и среднесрочные 50-дневные RSI, для получения сигналов о продаже используются краткосрочные 7-дневные RSI и среднесрочные 50-дневные RSI, для получения сигналов о продаже используются краткосрочные 2-дневные RSI и среднесрочные 14-дневные RSI.

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

  • 2-й день RSI 50
  • 2-дневный RSI фактически больше 50.
  • RSI на 14-й день превышает 50.
  • RSI на 14 день на самом деле больше 50.

Условия продажи похожи:

  • 7-дневный RSI ниже 50.
  • 7-дневный RSI фактически меньше 50.
  • 50-дневный RSI ниже 50.
  • 50-дневный RSI фактически меньше 50.

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

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

Внутренний RSI TAM имеет следующие преимущества:

  1. Использование двойного RSI для многовременного анализа позволяет эффективно отфильтровывать рыночный шум и вступать в игру только в заметных точках перехода тенденции.

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

  3. Используя различные параметры RSI для определения входа и выхода, можно более точно улавливать точки поворота.

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

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

  6. Логика ясна, проста, легко понятна и подходит для количественных сделок.

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

Однако эта стратегия также несет в себе некоторые риски:

  1. Дневные сделки содержат риск ночных зазоров, которые могут быть заменены на стратегические стоп-лоски.

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

  3. В течение дня рынок сильно колеблется, поэтому необходимо ослабить, но не переусердствовать, в установке стоп-лосс.

  4. Оптимизация параметров имеет риск переоптимизации и должна быть проверена на разных рынках.

  5. Количественный отсчет не может полностью отражать эффективность торговли на реальном рынке, поэтому необходимо соответствующее корректирование стратегии на реальном рынке.

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

Эта стратегия может быть оптимизирована в следующих аспектах:

  1. В сочетании с другими показателями подтверждает сигнал RSI, например, KDJ, MACD и т. д.

  2. Увеличение фильтрации объема сделок, принимая во внимание сигнал только в случае увеличения объема сделок.

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

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

  5. Искусственная стратегия, в сочетании с методами технического анализа, такими как ключевые поддерживающие сопротивления, графические формы и т. Д.

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

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

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

Исходный код стратегии
/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 1h
basePeriod: 15m
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/
// © DvKel

//@version=5
strategy("TAM - RSI Strategy", overlay = true)

// Input parameters
useDateFilter = input.bool(true, title="Filter Date Range of Backtest",  group="Backtest Time Period")
startDate = input(timestamp("2020-01-01"), title = "Start date", group = "Backtest Time Period")
buyRsiLength1 = input(2, title = "RSI Buy Length 1 (default 2)", group="Buy configuration")
buyRsiLength2 = input(14, title = "RSI Buy Length 2 (default 14)", group="Buy configuration")
buyRsiValue = input(50, title = "RSI Buy Value Signal (default 50)", group="Buy configuration")
closeRsiLength1 = input(7, title = "RSI Close Length 1 (default 7)", group="Close configuration")
closeRsiLength2 = input(50, title = "RSI Close Length 2 (default 50)", group="Close configuration")
closeRsiValue = input(50, title = "RSI Close Value Signal (default 50)", group="Close configuration")

// Check timeframe
inTradeWindow = true

// Calculate RSI
rsiBuy1Value =  ta.rsi(close, buyRsiLength1)
rsiBuy2Value = ta.rsi(close, buyRsiLength2)
rsiClose1Value =  ta.rsi(close, closeRsiLength1)
rsiClose2Value = ta.rsi(close, closeRsiLength2)

// Strategy conditions
//(ta.crossover(rsiBuy1Value, buyRsiValue) or ta.crossover(rsiBuy2Value, buyRsiValue)) and 
//8ta.crossunder(rsiClose1Value, closeRsiValue) or ta.crossunder(rsiClose2Value, closeRsiValue)) and
buyCondition = (ta.crossover(rsiBuy1Value, buyRsiValue) or ta.crossover(rsiBuy2Value, buyRsiValue)) and rsiBuy1Value > buyRsiValue and rsiBuy2Value > buyRsiValue
closeCondition = (ta.crossunder(rsiClose1Value, closeRsiValue) or ta.crossunder(rsiClose2Value, closeRsiValue)) and rsiClose1Value < closeRsiValue and rsiClose2Value < closeRsiValue


// Strategy actions
if (inTradeWindow  and buyCondition) 
    strategy.entry("Buy", strategy.long)


if (inTradeWindow and closeCondition) 
    strategy.close("Buy")

// Plot RSI and overbought/oversold levels
plotchar(rsiBuy1Value, title = "RSI-Buy1", color = color.green)
plotchar(rsiBuy2Value, title = "RSI-Buy2", color = color.lime)
plotchar(rsiClose1Value, title = "RSI-Close1", color = color.red)
plotchar(rsiClose2Value, title = "RSI-Close2", color = color.fuchsia)