
La estrategia genera una señal de negociación para juzgar el valor de las monedas digitales en relación con el mercado de criptomonedas, comparando el RSI de las monedas digitales con el RSI del mercado de criptomonedas.
La estrategia permite primero elegir un índice de mercado de criptomonedas, como el valor de mercado total, el valor de mercado total menos bitcoin, el valor de mercado total de otras monedas, etc. Al mismo tiempo, se selecciona un índice de mercado de criptomonedas de un período de tiempo más alto, por defecto, la línea del día. Luego se calcula el RSI de la moneda digital seleccionada y el RSI de dicho índice de mercado de criptomonedas, obteniendo un índice de fuerza relativa por la relación. Cuando el índice de fuerza relativa atraviesa el parámetro especificado, genera una señal de compra; cuando atraviesa el siguiente, genera una señal de venta.
La lógica central de esta estrategia es que cuando el RSI de una moneda digital es más fuerte que el índice del mercado criptográfico, indica que el valor relativo de la moneda está subestimado y tiene la posibilidad de ser sobrevalorado, por lo que se puede comprar; cuando el RSI de una moneda digital es más débil que el índice del mercado, indica que el mercado relativo de la moneda está sobrevalorado y tiene la posibilidad de ser subestimado, por lo que se puede vender.
La mayor ventaja de esta estrategia es que utiliza un índice relativamente débil que permite juzgar con mayor precisión el valor de las monedas digitales, en lugar de tomar decisiones solo en función de los indicadores técnicos de la moneda en sí misma, evitando la dificultad de mirar solo a un lado.
El índice relativamente fuerte tiene en cuenta el impacto del entorno general del mercado en una sola moneda, es capaz de capturar el ritmo de los movimientos del mercado, así como los flujos de los diferentes sectores, para explorar el valor de las monedas en el mercado.
Además, la estrategia ofrece una variedad de opciones de índices, que se pueden negociar en función de las diferentes condiciones del mercado, lo que garantiza la eficacia de la estrategia.
El principal riesgo de esta estrategia es que el índice de relative strength es solo una herramienta de valoración y no puede evitar por completo el riesgo de transacción que genera la propia forma técnica de la moneda única.
Por ejemplo, si la moneda entra en una forma evidente de cabeza, hombro y espalda, la estructura del mercado cambia, y solo con una señal de compra de un índice relativamente fuerte, puede haber pérdidas.
Por lo tanto, la estrategia también necesita combinar la tecnología de la moneda digital en sí misma para evitar transacciones no deseadas en puntos tecnológicos clave.
Otro riesgo es que si el índice elegido no es adecuado y no tiene una alta correlación con la moneda digital, el indicador de un índice relativamente fuerte se verá muy afectado. Esto requiere una selección optimizada en función de la correlación de diferentes monedas con los índices de mercado.
La estrategia puede ser optimizada en los siguientes aspectos:
Aumentar las estrategias de stop loss para evitar pérdidas en el momento en que el precio de la moneda se invierte.
Optimización de la selección de índices para que diferentes monedas puedan coincidir con diferentes índices y mejorar la relevancia.
La combinación de varios períodos de tiempo, por ejemplo, el indicador de la línea diurna con el indicador de la línea de 4 horas, puede mejorar la fiabilidad de la señal.
La adición de algoritmos de aprendizaje automático para determinar el umbral de los índices de fuerza y debilidad en lugar de usar parámetros fijos.
En combinación con otros indicadores, como el análisis emocional, el análisis fundamental, se forma un sistema de valoración más completo.
Esta estrategia de índices relativamente fuertes determina el valor relativo de las monedas digitales mediante la comparación de la relación de fuerza entre las monedas digitales y los índices de mercado. La ventaja de la estrategia consiste en aumentar la dimensión del análisis de mercado, que permite capturar el ritmo del mercado.
/*backtest
start: 2023-10-16 00:00:00
end: 2023-11-15 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy('RSI correlation with cryptoindices [strategy version]', overlay=false)
// Testing Start dates
testStartYear = input(2016, 'Backtest Start Year')
testStartMonth = input(1, 'Backtest Start Month')
testStartDay = input(1, 'Backtest Start Day')
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, 0, 0)
//Stop date if you want to use a specific range of dates
testStopYear = input(2030, 'Backtest Stop Year')
testStopMonth = input(12, 'Backtest Stop Month')
testStopDay = input(30, 'Backtest Stop Day')
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriod() =>
time >= testPeriodStart and time <= testPeriodStop ? true : false
len = input(4, title='length of rsi comparison')
correlationcrossover = input(1, title='correlation crossover')
IndexSwitch = input.string('CRYPTOCAP:TOTAL2', title='Index selection', options=['CRYPTOCAP:TOTAL2', 'CRYPTOCAP:TOTAL', 'CRYPTOCAP:OTHERS', 'CRYPTOCAP:USDT', 'CRYPTOINDEX:CIX100', 'CRYPTOCAP:BTC.D', 'CRYPTOCAP:BTC'])
IndexHTF = input.string('120', title='higher time frame reference index', options=['1', '2', '5', '10', '15', '30', '45', '60', '90', '120', '150', '240', '360', '720', 'D', '3D', 'W', 'M'])
switchColor = input(true, 'Color Hull according to trend?')
ref = request.security(IndexSwitch, IndexHTF, close[1], lookahead=barmerge.lookahead_on)
RSI_ref = ta.rsi(ref, len)
RSI_close = ta.rsi(close, len)
relative = RSI_ref / RSI_close
plot(relative, color=color.new(color.blue, 0))
long = ta.crossover(relative, correlationcrossover)
short = ta.crossunder(relative, correlationcrossover)
corr = plot(correlationcrossover, color=color.new(color.green, 0), linewidth=1)
hullColor = switchColor ? relative > correlationcrossover ? #00ff00 : #ff0000 : #ff9800
//PLOT
///< Frame
Fi1 = plot(relative, title='relative', color=hullColor, linewidth=1, transp=50)
fill(Fi1, corr, title='Band Filler', color=hullColor, transp=50)
if long and testPeriod()
strategy.entry("long", strategy.long)
if short and testPeriod()
strategy.entry("long", strategy.short)
// alertcondition(long, title='long', message='long')
// alertcondition(short, title='short', message='short')