Saltar al contenido
Todas las estrategias

Estrategias

Captura de diferencial de funding entre mercados y exchanges — SOL delta-neutral: vender en corto el perp con mayor funding / comprar en largo el perp con menor funding entre BINANCE y HYPERLIQUID, cobrar el SPREAD de funding (no carry direccional), con stop de base, mantenida durante días (2 patas, neutral al mercado, 3 parámetros)

Resultado: Abandonada

SolCrossVenueFundingSpreadNeutral4H

El mecanismo está implementado fielmente y es neutral al mercado por construcción (par de perps SOL de dos patas y nocional igual, señal de diferencial de funding, protección contra pata desnuda, stop de base).

Hipótesis

Una estrategia de valor relativo CROSS-VENUE, MARKET-NEUTRAL que captura el FUNDING-RATE SPREAD entre el perpetuo del activo SAME en dos exchanges diferentes: BINANCE USD-M SOLUSDT frente a HYPERLIQUID SOLUSD. Ambas patas son perpetuos sobre el mismo subyacente, por lo que la posición es delta-neutral por construcción: no estás NOT tomando una dirección de precio y tampoco estás NOT haciendo carry de funding de una sola pata (el mecanismo que perdió dinero en el «SOL Persistent-Funding Contrarian Swing»……Ver másVer menos

Una estrategia de valor relativo CROSS-VENUE, MARKET-NEUTRAL que captura el FUNDING-RATE SPREAD entre el perpetuo del activo SAME en dos exchanges diferentes: BINANCE USD-M SOLUSDT frente a HYPERLIQUID SOLUSD. Ambas patas son perpetuos sobre el mismo subyacente, por lo que la posición es delta-neutral por construcción: no estás NOT tomando una dirección de precio y tampoco estás NOT haciendo carry de funding de una sola pata (el mecanismo que perdió dinero en el «SOL Persistent-Funding Contrarian Swing» abandonado). La fuente de PnL ONLY es el diferencial de funding: SHORT el mercado que paga el funding más positivo (los cortos reciben funding allí) y simultáneamente te posicionas LONG con nocional igual en el mercado con funding menor/negativo (los largos reciben, o pagan menos). Como las dos patas siguen a un mismo subyacente, el PnL de precio direccional netea a ~0; la varianza residual es únicamente la BASIS pequeña y de reversión a la media (brecha de precio entre los dos mercados), limitada por un stop de base estricto. Esto es arbitraje de funding entre exchanges (patrón entre mercados n.º 3, híbrido con n.º 2), una ventaja estructuralmente poco explorada y tolerante a comisiones: captura un flujo de caja pagado mecánicamente en lugar de luchar contra la fricción. Se eligió porque la cartera carece de exposición entre mercados (7.4% frente al objetivo 15%) y long-short/neutral al mercado (14.2%), y porque los datos de funding de BOTH Binance y Hyperliquid SOL existen en el catálogo con historial de varios años a resolución diaria/4 h (HL diaria/4 h no está limitada por el historial). Se elige SOL por una dispersión de funding significativa entre mercados (altcoin de beta más alta), manteniendo liquidez de primer nivel en ambos mercados. Solo 3 parámetros libres (umbral de diferencial de entrada, umbral de diferencial de salida, stop de base) para resistir el sobreajuste que aquí destruye al n.º 1.

La iteración 2 corrige el QA hypothesis_mismatch (marco temporal): el reloj de muestreo ahora está fijado a barras de 4-HOUR en las patas BOTH, coincidiendo con la 'resolución diaria/4h' declarada por la hipótesis y los mantenimientos de varios días, el nombre propio de esta clase y el intervalo en el que se calibra cada parámetro denominado por barras (spread_smooth_bars 24 x 4H = 4 días); 4H también es un divisor exacto de la liquidación de funding de 8h de Binance, por lo que no se straddleda ninguna……Ver másVer menos

La iteración 2 corrige el QA hypothesis_mismatch (marco temporal): el reloj de muestreo ahora está fijado a barras de 4-HOUR en las patas BOTH, coincidiendo con la 'resolución diaria/4h' declarada por la hipótesis y los mantenimientos de varios días, el nombre propio de esta clase y el intervalo en el que se calibra cada parámetro denominado por barras (spread_smooth_bars 24 x 4H = 4 días); 4H también es un divisor exacto de la liquidación de funding de 8h de Binance, por lo que no se straddleda ninguna liquidación. Sin remuestreo unilateral a otro reloj. Se verificó que ambas patas existen en el catálogo a 4H (SOLUSDT.BINANCE-4-HOUR y SOLUSD.HYPERLIQUID-4-HOUR, historial HL desde 2024-01) para que la compuerta de datos multi-pata no pueda abandonar la ejecución. La lógica de señal/entrada/salida, las importaciones y la estructura no cambian desde previous_code (las capas anteriores se mantuvieron en verde); la única otra edición declara la clamp spread_smooth_bars [6, 48] en _param_bounds para que el optimizador nunca busque valores que el código reescribe silenciosamente. Nota para el registro: el texto de retroalimentación QA citaba un caso semanal-vs-diario ETHUSDT que no corresponde a este par entre venues SOL, por lo que apliqué el fallo general de alineación de marco temporal en lugar de los detalles literales ETH. Un nominal USD igual en ambas patas mantiene el delta neto ~0 por lección L59; el apalancamiento se mantiene en 1.0 y no se referencia en el dimensionamiento.

Captura del diferencial de funding con esperanza negativa en una muestra fiable de 20 operaciones. Los flujos de caja del funding ARE acreditados por el motor actual (según el cambio 2026-06-10), por lo que esta es una prueba justa del mecanismo; incluso con el funding incluido, el diferencial SOL entre Binance y Hyperliquid sigue sin superar el ida y vuelta de dos patas de ~0.19%: avg_trade_return_pct -0.03955% (negativo, por debajo del suelo de 0.15%), profit_factor 0.989, total_return -0.33%, Sharpe -0.035. El diferencial (~8.6% APR = 0.024%/día) es demasiado estrecho para superar los costes en las duraciones de mantenimiento observadas, y impact_cost_pct 259.9% / capacity_usd ~$14.8K hacen que la ventaja solo sea de escala de juguete. La optimización no puede elevar una ventaja por operación situada por debajo de los costes de negociación; esta es la firma clásica de fee_edge / esperanza negativa, e iterar los umbrales nunca la ha rescatado.

Implementación

Par de perp SOL delta-neutral entre venues en barras de 4-HOUR: convierte el funding de Binance USD-M (por-8h) e Hyperliquid (por-1h) a porcentaje anualizado, calcula la diferencia, suaviza con EMA sobre 24 barras (4 días), y cuando |spread| >= 8% APR abre corto en el venue con funding más rico mientras abre largo con un nominal igual USD en el más barato. La única fuente de PnL es el diferencial de funding; el PnL direccional de precios se anula. El libro se mantiene a través de la decadencia del spread (desarmar cuesta un round trip completo de 0.19% y no genera nada en plano) y se rota solo cuando el spread suavizado se invierte más allá de la banda de cambio 5% APR, o en un stop de base 2.5% / tope de mantenimiento calendario de 45 días. Se aplana si falta la serie de funding de cualquier venue -- sin respaldo solo de precio.

Resultados de verificación

[archivado 2026-09-05] El feedback de la Capa-4 almacenado anteriormente aquí era una revisión QA de una estrategia DIFFERENT (revisión de tendencia semanal frente a diaria (ETHUSDT.BINANCE; la ejecución es SOL de captura de funding entre mercados), entregada a esta ejecución por el error de sesión compartida/bandeja de salida compartida corregido en fbae0041 (aislamiento por llamada + vinculación de call_id). Se trasladó a metadata.foreign_feedback_archive y debe ignorarse; la próxima revisión de QA de esta ejecución es la autorizada.

Analista: confirma que los flujos de caja del funding se aplican a ambas patas en el motor de backtest y vuelve a comprobar el carry neto de comisiones por operación en los umbrales de entrada/salida optimizados.

avg_trade_return_pct en el sandbox (0.1135%) se sitúa justo por debajo del suelo de comisiones de futuros de 0.15% y PF es 1.01: el diferencial de funding es un flujo de caja fino y lento, y la viabilidad depende por completo de que el funding se acredite en el PnL y de que las posiciones de varios días acumulen suficiente carry para superar el ida y vuelta de 0.19%. Informativo; el backtest completo y el optimizador determinan la viabilidad.

Sandbox está esencialmente en punto de equilibrio: total_return +0.167% durante 2181 días, avg_trade_return_pct 0.1135% (por debajo del suelo de futuros 0.15%), profit_factor 1.013, win_rate 0.50 en solo 22 operaciones. Esta es una prueba de humo no optimizada, por lo que no bloquea, pero hay dos cosas que el analista debería verificar con números de historial completo: (1) que el backtest de NautilusTrader realmente acredite los flujos de caja FUNDING del perp en ambas piernas — el funding es la fuente de PnL……Ver másVer menos

Sandbox está esencialmente en punto de equilibrio: total_return +0.167% durante 2181 días, avg_trade_return_pct 0.1135% (por debajo del suelo de futuros 0.15%), profit_factor 1.013, win_rate 0.50 en solo 22 operaciones. Esta es una prueba de humo no optimizada, por lo que no bloquea, pero hay dos cosas que el analista debería verificar con números de historial completo: (1) que el backtest de NautilusTrader realmente acredite los flujos de caja FUNDING del perp en ambas piernas — el funding es la fuente de PnL ENTIRE de esta estrategia, y si el funding no se aplica el retorno medido es solo ruido de base menos comisiones; (2) viabilidad de comisiones/carry en los umbrales reales — el diferencial (~8.6% APR ≈ 0.024%/día) necesita ~8 días correctamente posicionados para cubrir la operación round trip de dos piernas de 0.19%, por lo que el edge por operación es delgado y depende de la duración de la posición (hold promedio observado ~29d). También nótese impact_cost_pct 44.9% / capacidad ~$495K a per_leg_pct 0.50 (150% exposición bruta) — un techo de capacidad real, aunque de una sola vez en la entrada/salida de baja rotación de un libro de ~22 operaciones.

Revisión de backtest

Sharpe
-0,03
Rentabilidad total
-0,33%
Drawdown máximo
2,27%
Operaciones totales
20
Tasa de acierto
50,0%
Factor de beneficio
0,99

El mecanismo está implementado fielmente y es neutral al mercado por construcción (par de perps SOL de dos patas y nocional igual, señal de diferencial de funding, protección contra pata desnuda, stop de base).

Los flujos de caja del funding ARE acreditados por el motor actual, por lo que esta es una prueba justa de la ventaja del diferencial de funding, no un bloqueo estructural por imposibilidad de backtest.

Solo 3 parámetros centrales; pocos grados de libertad para el investigador.

Esperanza negativa en una muestra fiable: total_return -0.33%, avg_trade_return_pct -0.03955% (negativo, por debajo del suelo de futuros de 0.15%), profit_factor 0.989, Sharpe -0.035 en 20 operaciones. El funding se acredita, por lo que el diferencial simplemente no supera el ida y vuelta de dos patas de ~0.19%.

La ventaja es estructuralmente estrecha y depende de la duración: un diferencial de ~8.6% APR (0.024%/día) necesita ~8 días correctamente posicionados solo para alcanzar el punto de equilibrio; el resultado realizado confirma que no lo consigue.

El techo de capacidad es de escala de juguete: impact_cost_pct 259.9% y ~$14.8 de capacity_usd significan que la ventaja fantasma solo existe a un tamaño trivial.

La pata de Hyperliquid solo existe desde 2024-01-25, por lo que la ventana de prueba efectiva es de ~1.6 años / 20 operaciones, independientemente del intervalo primario de 6 años.

Historial de iteraciones

Verificación fallida (Capa 2 — escenarios sintéticos): Parámetros utilizados: ['per_leg_pct', 'min_notional', '_param_bounds', 'max_hold_days', 'min_hold_hours', 'exit_spread_apr', 'enter_spread_apr', 'max_basis_stop_pct', 'spread_smooth_bars'] Comprueba que __init__ establezca todos los atributos a partir de self.parameters.get(). - steady_uptrend: TypeError: SolCrossVenueFundingSpreadNeutral4H._lookup() acepta 4 argumentos posicionales, pero se proporcionaron 5 (marca temporal de la barra: 1735690740000) -……Ver másVer menos

Verificación fallida (Capa 2 — escenarios sintéticos): Parámetros utilizados: ['per_leg_pct', 'min_notional', '_param_bounds', 'max_hold_days', 'min_hold_hours', 'exit_spread_apr', 'enter_spread_apr', 'max_basis_stop_pct', 'spread_smooth_bars'] Comprueba que __init__ establezca todos los atributos a partir de self.parameters.get(). - steady_uptrend: TypeError: SolCrossVenueFundingSpreadNeutral4H._lookup() acepta 4 argumentos posicionales, pero se proporcionaron 5 (marca temporal de la barra: 1735690740000) - steady_downtrend: TypeError: SolCrossVenueFundingSpreadNeutral4H._lookup() acepta 4 argumentos posicionales, pero se proporcionaron 5 (marca temporal de la barra: 1735690740000) - flat_ranging: TypeError: SolCrossVenueFundingSpreadNeutral4H._lookup() acepta 4 argumentos posicionales, pero se proporcionaron 5 (marca temporal de la barra: 1735690740000) - volatility_spike: TypeError: SolCrossVenueFundingSpreadNeutral4H._lookup() acepta 4 argumentos posicionales, pero se proporcionaron 5 (marca temporal de la barra: 1735690740000) - zero_volume: TypeError: SolCrossVenueFundingSpreadNeutral4H._lookup() acepta 4 argumentos posicionales, pero se proporcionaron 5 (marca temporal de la barra: 1735690740000) - price_gap: TypeError: SolCrossVenueFundingSpreadNeutral4H._lookup() acepta 4 argumentos posicionales, pero se proporcionaron 5 (marca temporal de la barra: 1735690740000)

Verificación fallida (Capa 4 — revisión QA): - La viabilidad de comisiones/edge falla de manera decisiva en el resultado del motor ACTUAL (lista de verificación #7, L6/L26). El sandbox es un libro perdedor: total_return -2.17%, profit_factor 0.957 (<1.0), Sharpe -0.35, esperanza -$45/operación, y avg_trade_return_pct -0.0033% — NEGATIVE y ~45x por debajo del suelo de futuros 0.15%. Sobre una muestra medible (82 operaciones, metrics_reliable: true), por lo que un resultado genuino de ausencia de edge. Funding WAS……Ver másVer menos

Verificación fallida (Capa 4 — revisión QA): - La viabilidad de comisiones/edge falla de manera decisiva en el resultado del motor ACTUAL (lista de verificación #7, L6/L26). El sandbox es un libro perdedor: total_return -2.17%, profit_factor 0.957 (<1.0), Sharpe -0.35, esperanza -$45/operación, y avg_trade_return_pct -0.0033% — NEGATIVE y ~45x por debajo del suelo de futuros 0.15%. Sobre una muestra medible (82 operaciones, metrics_reliable: true), por lo que un resultado genuino de ausencia de edge. Funding WAS acreditado (2580 eventos), así que incluso con el diferencial pagado en su totalidad, la estrategia no cubre el costo round-trip de ~0.19%. - La hipótesis central — 'el PnL direccional de precios neto es ~0; la varianza residual es solo la base pequeña y de reversión a la media' — es NOT lo que produjo el motor. El PnL por operación está dominado por enormes oscilaciones simétricas: avg_win $2,009 ~= avg_loss $2,099, mayor ±$9,600-9,959, win_rate 0.50. Una cosecha de spread de funding genuinamente delta-neutral debería mostrar un PnL un orden de magnitud menor y sesgado positivamente por el carry; en su lugar, el diferencial (neto -$45/operación) es empequeñecido ~45:1 por el ruido de base/precio. Firma idéntica a EthCrossVenueCashAndCarry abandonado y variantes previas de captura de funding entre venues.

Verificación fallida (Capa 4 — revisión de QA) [clase=hypothesis_mismatch]: - [edge_concern] No es la razón del veredicto, se registra para el analista por si la hipótesis se vuelve a registrar: en la frecuencia diaria el sandbox es honesto y saludable (metrics_reliable=TRUE, 92 operaciones, Sharpe 0.79 CI [0.10,1.51], avg_trade_return_pct 3.61%, PF 1.48), pero regime_performance muestra ALL del rendimiento positivo concentrado en el tercil de volatilidad «normal» (+489%, Sharpe 2.64), mientras que los terciles……Ver másVer menos

Verificación fallida (Capa 4 — revisión de QA) [clase=hypothesis_mismatch]: - [edge_concern] No es la razón del veredicto, se registra para el analista por si la hipótesis se vuelve a registrar: en la frecuencia diaria el sandbox es honesto y saludable (metrics_reliable=TRUE, 92 operaciones, Sharpe 0.79 CI [0.10,1.51], avg_trade_return_pct 3.61%, PF 1.48), pero regime_performance muestra ALL del rendimiento positivo concentrado en el tercil de volatilidad «normal» (+489%, Sharpe 2.64), mientras que los terciles «calmo» (-18.8%) y «estresado» (-21.8%, 56.7% DD) son ambos negativos, y only_one_regime=true. El drawdown máximo es de 36%, con una duración bajo el agua de 1038 días. La ventaja es real, pero está concentrada en un régimen y tiene drawdowns elevados; el tamaño y la robustez merecen un análisis minucioso en el backtest completo. - TIMEFRAME MISMATCH frente a la hipótesis preregistrada. La hipótesis registrada (título y descripción en este informe) especifica inequívoca y repetidamente barras de WEEKLY («en barras de WEEKLY, manteniendo posiciones durante semanas o meses»), pero config.bar_type es ETHUSDT.BINANCE-1-DAY-LAST-EXTERNAL. Esto no es un remuestreo cosmético: cambia el número de operaciones (28 semanal -> 92 diario), la duración media de mantenimiento (10.4 semanas -> 3 semanas) y toda la prueba estadística. El propio docstring del módulo del desarrollador admite que la iteración 3 hizo este cambio diario idéntico y que QA «tenía razón al rechazarlo: fue una reformulación de la hipótesis realizada unilateralmente en el código». La situación no ha cambiado materialmente: la hipótesis registrada sigue diciendo semanal, por lo que esto vuelve a ser una reformulación unilateral de la frecuencia temporal dentro del código. La Capa 1.5 solo valida el instrumento y el mercado, no la frecuencia temporal, así que esta comprobación corresponde a QA, y una frecuencia temporal indicada por la hipótesis que difiere de config.bar_type es un desajuste crítico. Este es exactamente el grado de libertad del investigador que el sistema de preregistro de la fábrica existe para impedir: la forma semanal resultó no medible y luego se cambió el reloj de muestreo para fabricar la medibilidad.

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.