
La estrategia de tendencia de criptomonedas con RSI ascendente es una estrategia de tendencia de criptomonedas y mercados de valores para períodos de tiempo más largos (por ejemplo, 4 horas o más).
La estrategia utiliza el indicador RSI para identificar tendencias al alza y a la baja, en combinación con bandas de Brin y el indicador de la tasa de cambio para evitar la consolidación de las operaciones. Según las pruebas, la estrategia funciona mejor en el comercio de criptomonedas contra criptomonedas que en el comercio contra monedas legales.
La estrategia utiliza los siguientes indicadores:
Las reglas específicas de las transacciones son las siguientes:
Reglas para abrir una posición
Posiciones de más cabeza: el RSI sube y las bandas de Brin y el índice de variación muestran que no están en equilibrio, hacen más Posiciones en blanco: RSI baja y las bandas de Bryn y el índice de variación indican que no se ha cerrado y se ha cerrado.
Regla de las posiciones iguales
Se cerraron las posiciones al recibir la señal de reversión.
Se debe tener en cuenta el aumento de la amplitud de parada, la adaptación de la combinación de parámetros de la banda de Bryn y la tasa de cambio, y la combinación con el análisis fundamental.
La estrategia puede ser mejorada en los siguientes aspectos:
Incrementar los mecanismos de detención de pérdidas, establecer límites razonables de detención de pérdidas y controlar las pérdidas individuales.
Optimización de los parámetros de la banda de Bryn y el índice de variación para encontrar la combinación óptima de parámetros. Se puede optimizar mediante retroalimentación.
Añadir otros indicadores auxiliares, como MACD, KD, etc., permite una combinación de varios indicadores y mejora la precisión de la señal.
Desarrollar modelos de interrupción de flujos para suspender el comercio en caso de fluctuaciones anormales y evitar que se encuentre en una posición de riesgo.
Utiliza métodos de aprendizaje automático para optimizar combinaciones de parámetros y pesos de señal.
Combinando datos de la cadena, enfocarse en parámetros como la fluidez de las bolsas, el flujo de capital, etc., para mejorar la adaptabilidad de las estrategias.
La estrategia de tendencia criptográfica de RSI ascendente utiliza el indicador RSI complementado con el indicador de la banda de Brin y el índice de cambio, para capturar la tendencia del mercado de criptomonedas en períodos de tiempo más largos. La ventaja de la estrategia reside en capturar el cambio de tendencia a tiempo, evitar el apalancamiento y las oportunidades direccionales adecuadas para rastrear líneas más largas.
/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 2h
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/
// © exlux99
//@version=4
strategy(title = "RSI Rising", overlay = true, initial_capital = 100, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, slippage=0,commission_type=strategy.commission.percent,commission_value=0.03)
/////////////////////
source = close
bb_length = 20
bb_mult = 1.0
basis = sma(source, bb_length)
dev = bb_mult * stdev(source, bb_length)
upperx = basis + dev
lowerx = basis - dev
bbr = (source - lowerx)/(upperx - lowerx)
bbr_len = 21
bbr_std = stdev(bbr, bbr_len)
bbr_std_thresh = 0.1
is_sideways = (bbr > 0.0 and bbr < 1.0) and bbr_std <= bbr_std_thresh
////////////////
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2010, title = "From Year", minval = 1970)
//monday and session
// To Date Inputs
toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2021, title = "To Year", minval = 1970)
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
sourcex = close
length = 2
pcntChange = 1
roc = 100 * (sourcex - sourcex[length])/sourcex[length]
emaroc = ema(roc, length/2)
isMoving() => emaroc > (pcntChange / 2) or emaroc < (0 - (pcntChange / 2))
periods = input(19)
smooth = input(14, title="RSI Length" )
src = input(low, title="Source" )
rsiClose = rsi(ema(src, periods), smooth)
long=rising(rsiClose,2) and not is_sideways and isMoving()
short=not rising(rsiClose,2) and not is_sideways and isMoving()
if(time_cond)
strategy.entry('long',1,when=long)
strategy.entry('short',0,when=short)