Visión general: Esta estrategia utiliza datos de posición de futuros de bitcoins de BitMEX para guiar las operaciones. Va corto cuando las posiciones cortas aumentan y va largo cuando las posiciones cortas disminuyen. Adecuado para seguir el comportamiento de negociación de dinero inteligente.
Estrategia lógica:
1. Utilice las posiciones cortas de futuros de bitcoins de BitMEX como indicador.
2. Cuando las posiciones cortas aumentan, corta en el punto de BTC. Las instituciones están agregando a sus posiciones cortas.
3. Cuando las posiciones cortas disminuyen, vaya largo en BTC spot. Las instituciones están reduciendo los cortos, lo que indica un sentimiento alcista.
Utilice el indicador RSI para detectar picos y mínimos en posiciones cortas.
5. Introduzca posiciones largas/cortas en las señales de pico/bajo.
Análisis de ventajas:
Utiliza datos de posición de operadores profesionales de BitMEX, capturando la actividad institucional.
2. El RSI ayuda a determinar picos/bajos, controlando el riesgo comercial.
3. Monitoreo en tiempo real de los movimientos institucionales para ajustar la propia posición en consecuencia.
No hay necesidad de analizar los gráficos, seguir directamente el pensamiento de "dinero inteligente".
Los resultados de las pruebas de retroceso parecen decentes, respetables.
Análisis de riesgos:
1. No se puede saber si el aumento de los shorts es especulativo o de cobertura.
Los datos de BitMEX tienen retraso, pueden perder el mejor precio de entrada.
Las instituciones no son 100% correctas, los fracasos ocurren.
La mala sintonización de los parámetros del RSI conduce a señales falsas o faltantes.
5. Stop loss demasiado suelto, una sola pérdida podría ser enorme.
Direcciones de optimización:
Optimiza los parámetros del RSI, prueba diferentes períodos de espera.
2. Pruebe otros indicadores como KD, MACD para detectar picos/bajos.
3. Un stop loss más estrecho para limitar las pérdidas individuales.
Añadir condiciones de salida como la inversión de tendencia, los rotores, etc.
Prueba de aplicabilidad a otras monedas, por ejemplo, sigue los cortos de BTC para negociar ETH.
Resumen:
Esta estrategia aprovecha a los operadores profesionales de futuros de bitcoin de BitMEX para obtener señales oportunas. Ayuda a los inversores a medir el sentimiento del mercado y detectar altibajos. También advierte riesgos a la baja cuando las ballenas están muy cortas. En general, un enfoque interesante utilizando datos de posición de futuros, pero un mayor refinamiento en los parámetros y el control de riesgos necesarios antes de implementar en vivo.
/*backtest start: 2023-12-26 00:00:00 end: 2024-01-25 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bitfinex Shorts Strat", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10, precision=2, initial_capital=1000, pyramiding=2, commission_value=0.05) //Backtest date range StartDate = input(timestamp("01 Jan 2021"), title="Start Date") EndDate = input(timestamp("01 Jan 2024"), title="Start Date") inDateRange = true symbolInput = input(title="Bitfinex Short Symbol", defval="BTC_USDT:swap") Shorts = request.security(symbolInput, "", open) // RSI Input Settings length = input(title="Length", defval=7, group="RSI Settings" ) overSold = input(title="High Shorts Threshold", defval=75, group="RSI Settings" ) overBought = input(title="Low Shorts Threshold", defval=30, group="RSI Settings" ) // Calculating RSI vrsi = ta.rsi(Shorts, length) RSIunder = ta.crossover(vrsi, overSold) RSIover = ta.crossunder(vrsi, overBought) // Stop Loss Input Settings longLossPerc = input.float(title="Long Stop Loss (%)", defval=25, group="Stop Loss Settings") * 0.01 shortLossPerc = input.float(title="Short Stop Loss (%)", defval=25, group="Stop Loss Settings") * 0.01 // Calculating Stop Loss longStopPrice = strategy.position_avg_price * (1 - longLossPerc) shortStopPrice = strategy.position_avg_price * (1 + shortLossPerc) // Strategy Entry if (not na(vrsi)) if (inDateRange and RSIover) strategy.entry("LONG", strategy.long, comment="LONG") if (inDateRange and RSIunder) strategy.entry("SHORT", strategy.short, comment="SHORT") // Submit exit orders based on calculated stop loss price if (strategy.position_size > 0) strategy.exit(id="LONG STOP", stop=longStopPrice) if (strategy.position_size < 0) strategy.exit(id="SHORT STOP", stop=shortStopPrice)