Saltar al contenido
Todas las estrategias

Estrategias

ETH USD-M Ruptura confirmada por interés abierto, long-short (BINANCE perpetuo, velas de 4H; operar solo rupturas cuando OPEN INTEREST esté aumentando: el nuevo capital apalancado confirma el movimiento; salir cuando OI retroceda; 3 parámetros)

Resultado: Abandonada

EthOpenInterestConfirmedBreakoutLS

Resumen de resultados

EthOpenInterestConfirmedBreakoutLS propuso una ventaja realmente novedosa e invisible para OHLCV: operar rupturas solo cuando el aumento del interés abierto confirmara la entrada de nuevo capital apalancado y salir cuando OI retrocediera. La estrategia era deliberadamente simétrica entre posiciones largas y cortas para cubrir la mayor brecha de cuota de la cartera, y afirmaba explícitamente que el historial de ETH OI se remontaba a 2020, a diferencia del flujo de liquidaciones de 90 días que había acabado con……Ver másVer menos

EthOpenInterestConfirmedBreakoutLS propuso una ventaja realmente novedosa e invisible para OHLCV: operar rupturas solo cuando el aumento del interés abierto confirmara la entrada de nuevo capital apalancado y salir cuando OI retrocediera. La estrategia era deliberadamente simétrica entre posiciones largas y cortas para cubrir la mayor brecha de cuota de la cartera, y afirmaba explícitamente que el historial de ETH OI se remontaba a 2020, a diferencia del flujo de liquidaciones de 90 días que había acabado con estrategias similares. El código estaba limpio (análisis robusto de OI, alineación del desfase de 8h, sin alternativa engañosa), pero en la práctica la afirmación sobre los datos resultó falsa: solo se activaron 7 entradas, todas dentro de una única ventana reciente de aproximadamente 2 meses de 2026, y las operaciones registraron pérdidas decisivas, con un factor de beneficios de 0.027 y una tasa de aciertos de 14.3%. El revisor la descartó antes de optimizar por ser un resultado no validable y bloqueado por la cobertura de datos, no por un defecto del código, y recomendó que el ingeniero de datos confirmara y completara el historial íntegro de interés abierto de ETH antes de volver a intentar cualquier estrategia basada en la señal de OI. La ventaja de confirmación nunca se pudo evaluar: la señal simplemente no existía durante la ventana de prueba, aunque se señala que merece la pena reconsiderar el mecanismo exacto con una muestra plurianual adecuada.

Hipótesis

Una estrategia swing de LONG-SHORT sobre un único instrumento, en ETHUSDT.BINANCE (USD-M perpetuo, velas de 4 horas), cuyo rasgo distintivo es la confirmación mediante OPEN-INTEREST: una señal suplementaria propia del mercado cripto, catalogada (open_interest), prácticamente inexplorada en la cartera actual y INVISIBLE en OHLCV puro. La idea central: una ruptura de precio acompañada de un interés abierto RISING significa que está entrando nuevo capital apalancado para impulsar el movimiento (continuación genuina……Ver másVer menos

Una estrategia swing de LONG-SHORT sobre un único instrumento, en ETHUSDT.BINANCE (USD-M perpetuo, velas de 4 horas), cuyo rasgo distintivo es la confirmación mediante OPEN-INTEREST: una señal suplementaria propia del mercado cripto, catalogada (open_interest), prácticamente inexplorada en la cartera actual y INVISIBLE en OHLCV puro. La idea central: una ruptura de precio acompañada de un interés abierto RISING significa que está entrando nuevo capital apalancado para impulsar el movimiento (continuación genuina de la tendencia), mientras que una ruptura con interés abierto FALLING refleja cobertura de posiciones cortas o agotamiento por cierre de posiciones, que suele fracasar. Al operar únicamente rupturas confirmadas por OI y salir en cuanto OI retrocede, la estrategia filtra las rupturas falsas que perjudican a los seguidores de tendencias basados solo en el precio (ETH TSMOM diario con objetivo de volatilidad acaba de morir con un Sharpe deflactado; la tendencia de OHLCV sobre un único instrumento es 0/210). Deliberadamente cubre la mayor brecha de cuota: DIRECTION (long_only 84.7% frente a un objetivo de ≤55%), con simetría total entre posiciones largas y cortas. Evita todos los fracasos recientes: NOT una estructura de opciones (L2), NOT una señal de tasa de financiación (L13: usa OI, no la financiación), NOT un flujo de liquidaciones (L3: el historial de OI para ETH se extiende hasta ~2020 mediante métricas de Binance, a diferencia del flujo de liquidaciones de 90 días), NOT Hyperliquid (L11), NOT una estrategia de carry entre plataformas (L1), NOT una cesta de N activos (L12). Deliberadamente usa pocos parámetros (3) para resistir el sobreajuste, el factor mortal n.º 1 (202x).

La iteración 2 realiza el cambio mínimo posible para resolver el fallo de la capa -2: los tres auxiliares de análisis de OI (_to_ns, _row_ts, _row_val) eran métodos @staticmethod, y el proxy de verificación vuelve a enlazar los métodos estáticos transferidos como métodos enlazados a instancia, por lo que self._row_ts(row) pasaba la instancia envolvente como argumento posicional adicional (TypeError: acepta 1 argumento(s) posicional(es), pero se proporcionaron 2). Al convertirlos en métodos de instancia ordinarios……Ver másVer menos

La iteración 2 realiza el cambio mínimo posible para resolver el fallo de la capa -2: los tres auxiliares de análisis de OI (_to_ns, _row_ts, _row_val) eran métodos @staticmethod, y el proxy de verificación vuelve a enlazar los métodos estáticos transferidos como métodos enlazados a instancia, por lo que self._row_ts(row) pasaba la instancia envolvente como argumento posicional adicional (TypeError: acepta 1 argumento(s) posicional(es), pero se proporcionaron 2). Al convertirlos en métodos de instancia ordinarios que reciben self y se invocan mediante self.*, el enlace funciona correctamente tanto en la estrategia real como en el proxy, con un comportamiento de análisis idéntico. No cambió nada más: la lógica de la ventaja (ruptura de Donchian confirmada por OI, salida al retroceder OI), la señal variable en cada vela, todos los parámetros, el enrutamiento de plataforma y apalancamiento, y el dimensionamiento son exactamente los mismos que en la versión que ya superó la capa 1. Esto conserva todas las capas aprobadas anteriormente y solo corrige el error comunicado en el escenario sintético.

La afirmación central sobre los datos de la hipótesis —«el historial de OI para ETH se extiende hasta ~2020 mediante métricas de Binance»— queda contradicha por el backtest: en 14,354 velas de 4H que abarcan 2019→2026, solo se activaron 7 entradas, todas agrupadas en una única ventana de ~2 meses (2026-03→05), porque el filtro de confirmación de OI solo puede activarse donde existen datos de OI. Por tanto, la cobertura de OI en esta ejecución se limita a unos pocos meses recientes, muy lejos de 2020……Ver másVer menos

La afirmación central sobre los datos de la hipótesis —«el historial de OI para ETH se extiende hasta ~2020 mediante métricas de Binance»— queda contradicha por el backtest: en 14,354 velas de 4H que abarcan 2019→2026, solo se activaron 7 entradas, todas agrupadas en una única ventana de ~2 meses (2026-03→05), porque el filtro de confirmación de OI solo puede activarse donde existen datos de OI. Por tanto, la cobertura de OI en esta ejecución se limita a unos pocos meses recientes, muy lejos de 2020 (openInterestHist de Binance API solo ofrece historial reciente limitado; no he NOT confirmado de forma independiente si las métricas de Binance Vision OI pueden recuperarse para períodos anteriores; esto debe verificarse, no darse por hecho). El resultado no se puede validar (7 operaciones, data_days 21; las ventanas walk-forward de la canalización de 3 fases y el período de prueba de 15 días contendrían cada uno ~0 operaciones) y arroja pérdidas contundentes en el período operado (profit_factor 0.027, win_rate 14.3%, expectativa de -$1352/operación, Sharpe -8.2, comisiones de 154% del bruto, long_win_rate 0%). Ningún cambio de parámetros o código por parte del desarrollador puede corregir la cobertura de datos de OI; el código ya es correcto. Se recomienda que el ingeniero de datos verifique y, si es posible, recupere el historial completo de interés abierto de ETHUSDT (métricas de Binance Vision) BEFORE de volver a intentar cualquier estrategia con señal de OI; hasta que se confirme una cobertura de OI que abarque todo el rango de velas, las estrategias condicionadas por OI seguirán generando un puñado de operaciones recientes, sin importar el instrumento ni los parámetros. Si más adelante se confirma que OI abarca varios años, vale la pena volver a probar este mecanismo exacto con una muestra adecuada.

Implementación

Estrategia swing long/short sobre ETHUSDT.BINANCE USD-M perp (velas de 4H) que opera rupturas de Donchian ONLY cuando el aumento del interés abierto las confirma. En cada vela, alinea la serie catalogada de open_interest (lista de diccionarios de filas, marcas de tiempo normalizadas a ns, muestra más reciente dentro de un desfase de 8h) con la vela y calcula el cambio porcentual de OI durante la ventana de ruptura. Un cierre por encima del máximo previo de 12 velas con OI al alza >= oi_rise_threshold abre una posición larga; un cierre por debajo del mínimo previo de 12 velas con OI al alza abre una posición corta. Sale en cuanto OI retrocede (el OI actual cae por debajo de oi_rollover_threshold de su máximo desde la entrada), además de un stop de 3%, una toma de beneficios de 8% y un límite temporal de 30 velas. Capital dimensionado en relación con el capital propio, con apalancamiento de per_leg_pct x (2x de apalancamiento integrado en el dimensionamiento). Simetría total entre posiciones largas y cortas.

Resultados de verificación

Verificación fallida (capa 2 — escenarios sintéticos): Parámetros utilizados: ['per_leg_pct', 'min_notional', 'stop_loss_pct', 'oi_lag_seconds', 'take_profit_pct', 'max_holding_bars', 'breakout_lookback', 'oi_rise_threshold', 'oi_rollover_threshold'] Comprueba que __init__ establezca todos los atributos a partir de self.parameters.get(). - steady_uptrend: TypeError: _row_ts() de EthOpenInterestConfirmedBreakoutLS acepta 1 argumento(s) posicional(es), pero se proporcionaron 2 (marca de tiempo de la vela:……Ver másVer menos

Verificación fallida (capa 2 — escenarios sintéticos): Parámetros utilizados: ['per_leg_pct', 'min_notional', 'stop_loss_pct', 'oi_lag_seconds', 'take_profit_pct', 'max_holding_bars', 'breakout_lookback', 'oi_rise_threshold', 'oi_rollover_threshold'] Comprueba que __init__ establezca todos los atributos a partir de self.parameters.get(). - steady_uptrend: TypeError: _row_ts() de EthOpenInterestConfirmedBreakoutLS acepta 1 argumento(s) posicional(es), pero se proporcionaron 2 (marca de tiempo de la vela: 1735690560000) - steady_downtrend: TypeError: _row_ts() de EthOpenInterestConfirmedBreakoutLS acepta 1 argumento(s) posicional(es), pero se proporcionaron 2 (marca de tiempo de la vela: 1735690560000) - flat_ranging: TypeError: _row_ts() de EthOpenInterestConfirmedBreakoutLS acepta 1 argumento(s) posicional(es), pero se proporcionaron 2 (marca de tiempo de la vela: 1735690560000) - volatility_spike: TypeError: _row_ts() de EthOpenInterestConfirmedBreakoutLS acepta 1 argumento(s) posicional(es), pero se proporcionaron 2 (marca de tiempo de la vela: 1735690560000) - zero_volume: TypeError: _row_ts() de EthOpenInterestConfirmedBreakoutLS acepta 1 argumento(s) posicional(es), pero se proporcionaron 2 (marca de tiempo de la vela: 1735690560000) - price_gap: TypeError: _row_ts() de EthOpenInterestConfirmedBreakoutLS acepta 1 argumento(s) posicional(es), pero se proporcionaron 2 (marca de tiempo de la vela: 1735690560000)

Optimiza oi_rollover_threshold dentro de un intervalo más amplio y/o exige que la caída de OI persista durante más de 1 vela.

La salida predeterminada oi_rollover_threshold 0.97 se activa cuando OI cae solo 3% por debajo de su máximo desde la entrada. El OI horario alineado con velas de 4H es ruidoso, así que una oscilación de 3% puede provocar una salida prematura, lo que podría explicar la baja tasa de aciertos. Coincide con la hipótesis STRUCTURE, así que no es una discrepancia lógica, pero es agresiva.

Evalúa la ventaja en BACKTEST_REVIEW con métricas fiables de todo el historial, no con el entorno de pruebas de 7 días.

El entorno de pruebas de la capa -3 es NON-DIAGNOSTIC pese a las métricas extremas (Sharpe -20.1, PF 0.025, win_rate 0.143): metrics_reliable=false, data_days=7, solo 7 operaciones. No presenta la firma inversa win_rate=0/PF=0 de un error. La polaridad, el dimensionamiento, los contadores, la ausencia de anticipación y la ventaja de OI se verificaron correctamente.

Revisión de backtest

Sharpe
-8,20
Rentabilidad total
-9,43%
Drawdown máximo
11,80%
Operaciones totales
7
Tasa de acierto
14,3%
Factor de beneficio
0,03

Señal realmente novedosa e invisible para OHLCV (interés abierto); la simetría long/short cubre la brecha de cuota direccional

Código correcto: análisis robusto de OI con varias claves y unidades, alineación del desfase de 8 h, sin recurso alternativo basado únicamente en precios y diseño con pocos parámetros (3)

La premisa de datos de la hipótesis es falsa en la práctica: pese a un intervalo de velas de 2019→2026 y 14,354 velas observadas, solo se activaron 7 entradas, ALL agrupadas entre 2026-03→05; la cobertura de OI en esta ejecución abarca una ventana reciente de aproximadamente 2-3 meses, no se remonta a 2020

7 operaciones / data_days 21: demasiado pocas para una validación walk-forward (3 ventanas) o para la muestra de reserva de 15 días; la optimización se ajustaría al ruido

La muestra probada arroja pérdidas contundentes: total_return -9.43%, profit_factor 0.027, win_rate 14.3%, expectativa de -$1352/operación, Sharpe de -8.2, comisiones equivalentes a 154% del bruto, long_win_rate 0%

Resumen de resultados

Verifica la cobertura histórica real de una señal suplementaria antes de basarte en una afirmación sobre ella: la hipótesis sostenía que el historial de ETH OI abarcaba varios años, pero el flujo solo proporcionó unos pocos meses recientes, por lo que la estrategia filtrada por OI solo podía generar unas pocas operaciones recientes; conviene volver a probar el mecanismo únicamente si se confirma y se completa la cobertura de OI para todo el intervalo de velas.

El revisor de la prueba retrospectiva recomendó «abandonar» en el filtro previo a la optimización: se contradijo la afirmación central de datos de la hipótesis —que el historial de interés abierto de ETH se remonta aproximadamente a 2020—, ya que la cobertura de OI en la ejecución abarcó solo unos pocos meses recientes, lo que produjo 7 operaciones y data_days de 21, demasiado pocas para una validación walk-forward o una muestra de reserva; ningún cambio de parámetros puede resolver la falta de cobertura de datos.

Una estrategia swing long-short sobre un único instrumento en ETHUSDT.BINANCE USD-M perp (velas de 4H) que operaba rupturas de Donchian solo cuando el interés abierto aumentaba —considerando el aumento de OI como confirmación de que nuevo capital apalancado impulsaba el movimiento— y salía en cuanto OI retrocedía desde su máximo, utilizando la señal suplementaria de interés abierto catalogada, invisible en OHLCV puro.

La prueba retrospectiva generó solo 7 entradas en 14,354 velas de 4H que abarcan 2019-2026; todas se agruparon en una única ventana de aproximadamente 2 meses (2026-03 a 2026-05), porque el filtro de confirmación de OI solo podía activarse donde había datos de OI. La muestra evaluada arrojó pérdidas decisivas: rentabilidad total -9.43%, factor de beneficios 0.027, tasa de aciertos 14.3% (long_win_rate 0%), esperanza de -$1,352/operación, Sharpe -8.2 y comisiones equivalentes a 154% del bruto. No se ejecutó ninguna fase de optimización.

Stratmill es una herramienta de investigación y paper trading, no asesoramiento financiero ni un bróker. Los resultados de backtest y paper trading son hipotéticos. Operar conlleva riesgo de pérdida.