Краткосрочная стратегия RSI-VWAP

Автор:Чао Чжан, Дата: 2024-01-19 14:21:15
Тэги:

img

Обзор

Эта стратегия называется RSI-VWAP Short-term Strategy. Она использует индикатор RSI и средневзвешенную цену объема (VWAP) в качестве технических индикаторов для генерации длинных и коротких сигналов и, таким образом, принятия решений о покупке и продаже.

Принцип стратегии

  1. Используйте индикатор RSI, чтобы определить, является ли рынок перекупленным или перепроданным.
  2. Индикатор RSI использует VWAP вместо цены закрытия в качестве исходных данных.
  3. Сигнал покупки генерируется, когда RSI пересекает 20 с перепроданной зоны. Сигнал продажи генерируется, когда RSI пересекает 80 с перекупленной зоны.
  4. Эта стратегия только длится долго и не идет коротко. то есть, только купить в перепроданных и продать в перекупленных.

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

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

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

  1. Существует риск перенастройки при обратном тестировании квантовой стратегии, и фактические результаты могут отличаться от обратного тестирования.
  2. Не в состоянии воспользоваться возможностями в нисходящих тенденциях, идя только на длинный.
  3. Критерии перекупки и перепродажи могут не соответствовать всем продуктам, параметры необходимо корректировать для разных продуктов.
  4. Любой технический индикатор может генерировать ложные сигналы, и потерь невозможно полностью избежать.

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

Руководство по оптимизации

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

Заключение

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


/*backtest
start: 2023-12-19 00:00:00
end: 2024-01-18 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/
// © Xaviz

//#####©ÉÉÉɶN###############################################
//####*..´´´´´´,,,»ëN########################################
//###ë..´´´´´´,,,,,,''%©#####################################
//###'´´´´´´,,,,,,,'''''?¶###################################
//##o´´´´´´,,,,,,,''''''''*©#################################
//##'´´´´´,,,,,,,'''''''^^^~±################################
//#±´´´´´,,,,,,,''''''''^í/;~*©####æ%;í»~~~~;==I±N###########
//#»´´´´,,,,,,'''''''''^;////;»¶X/í~~/~~~;=~~~~~~~~*¶########
//#'´´´,,,,,,''''''''^^;////;%I^~/~~/~~~=~~~;=?;~~~~;?ë######
//©´´,,,,,,,''''''''^^~/////X~/~~/~~/~~»í~~=~~~~~~~~~~^;É####
//¶´,,,,,,,''''''''^^^;///;%;~/~~;í~~»~í?~?~~~?I/~~~~?*=íÑ###
//N,,,,,,,'''''''^^^^^///;;o/~~;;~~;£=»í»;IX/=~~~~~~^^^^'*æ##
//#í,,,,,''''''''^^^^^;;;;;o~»~~~~íX//~/»~;í?IíI»~~^/*?'''=N#
//#%,,,'''''''''^^^^^^í;;;;£;~~~//»I»/£X/X/»í*&~~~^^^^'^*~'É#
//#©,,''''''''^^^^^^^^~;;;;&/~/////*X;í;o*í»~=*?*===^'''''*£#
//##&''''''''^^^^^^^^^^~;;;;X=í~~~»;;;/~;í»~»±;^^^^^';=''''É#
//##N^''''''^^^^^^^^^^~~~;;;;/£;~~/»~~»~~///o~~^^^^''''?^',æ#
//###Ñ''''^^^^^^^^^^^~~~~~;;;;;í*X*í»;~~IX?~~^^^^/?'''''=,=##
//####X'''^^^^^^^^^^~~~~~~~~;;íííííí~~í*=~~~~Ií^'''=''''^»©##
//#####£^^^^^^^^^^^~~~~~~~~~~~íííííí~~~~~*~^^^;/''''='',,N###
//######æ~^^^^^^^^~~~~~~~~~~~~~~íííí~~~~~^*^^^'=''''?',,§####
//########&^^^^^^~~~~~~~~~~~~~~~~~~~~~~~^^=^^''=''''?,íN#####
//#########N?^^~~~~~~~~~~~~~~~~~~~~~~~~^^^=^''^?''';í@#######
//###########N*~~~~~~~~~~~~~~~~~~~~~~~^^^*'''^='''/É#########
//##############@;~~~~~~~~~~~~~~~~~~~^^~='''~?'';É###########
//#################É=~~~~~~~~~~~~~~^^^*~'''*~?§##############
//#####################N§£I/~~~~~~»*?~»o§æN##################

//@version=4
strategy("RSI-VWAP INDICATOR", overlay=false)

// ================================================================================================================================================================================
// RSI VWAP INDICATOR
// ================================================================================================================================================================================

// Initial inputs
Act_RSI_VWAP = input(true, "RSI VOLUME WEIGHTED AVERAGE PRICE")
RSI_VWAP_length = input(17, "RSI-VWAP LENGTH")
RSI_VWAP_overSold = input(19, "RSI-VWAP OVERSOLD", type=input.float)
RSI_VWAP_overBought = input(80, "RSI-VWAP OVERBOUGHT", type=input.float)

// RSI with VWAP as source
RSI_VWAP = rsi(vwap(close), RSI_VWAP_length)

// Plotting, overlay=false
r=plot(RSI_VWAP, color = RSI_VWAP > RSI_VWAP_overBought ? color.red : RSI_VWAP < RSI_VWAP_overSold ? color.lime : color.blue, title="rsi", linewidth=2, style=plot.style_line)
h1=plot(RSI_VWAP_overBought, color = color.gray, style=plot.style_stepline)
h2=plot(RSI_VWAP_overSold, color = color.gray, style=plot.style_stepline)
fill(r,h1, color = RSI_VWAP > RSI_VWAP_overBought ? color.red : na, transp = 60)
fill(r,h2, color = RSI_VWAP < RSI_VWAP_overSold ? color.lime : na, transp = 60)

// Long only Backtest
strategy.entry("Long", strategy.long, when = (crossover(RSI_VWAP, RSI_VWAP_overSold)))
strategy.close("Long", when = (crossunder(RSI_VWAP, RSI_VWAP_overBought)))

Больше