Hamiltonian Neural Networks: Does a Financial System Conserve Anything?
Hay dos preguntas que puedes hacer sobre las redes neuronales hamiltonianas, y sólo una de ellas es interesante.
La pregunta aburrida es "¿son estables los HNN?" La respuesta es sí y es un teorema, no un experimento. Codifique las ecuaciones de Hamilton en la arquitectura, intégrelas con un esquema simpléctico y el análisis de errores hacia atrás le entregará un error de energía limitado en horizontes exponencialmente largos. No hay nada relacionado con las finanzas. No necesitas un backtest para creerlo.
La pregunta interesante es la que el resultado de estabilidad presupone silenciosamente: ¿un vector de estado financiero admite alguna cantidad conservada? Un HNN no descubre si existe. Se supone existe y encuentra el mejor bajo ese supuesto. Si los mercados no se han conservado para las coordenadas elegidas, la red seguirá convergendo, seguirá produciendo un escalar suave, seguirá integrándose sin explotar, y todo será un modelo muy estable de la nada.
Esta publicación construye la maquinaria y luego dedica la mitad trasera a intentar romperla. La afirmación bajo prueba es estrecha y falsificable: que un elegido par (digamos precio logarítmico y EMA de rendimientos) es canónicamente conjugado, lo que significa en realidad es válido para algunos . Se trata de una afirmación empírica, y la propia sección teórica del borrador no da ninguna razón para creerla.
Mecánica hamiltoniana: lo que realmente es nuevo aquí

El espacio de fases, los sistemas dinámicos, las trayectorias y las órbitas ya son vocabulario en este blog; consulte atractores en algotrading para las definiciones y colectores complejos para la reconstrucción del espacio de fases mediante la incrustación de Takens. Lo que sigue los asume.
La parte nueva es la estructura simpléctica. La mecánica clásica tiene dos formulaciones equivalentes. Newton da . Hamilton da una función escalar. de donde se sigue toda la dinámica:
Tres consecuencias importan y ninguna de ellas está disponible para un modelo dinámico genérico:
- se conserva a lo largo de las trayectorias. El sistema está confinado a una superficie de energía constante: una variedad de dimensiones inferiores dentro del espacio de fase. Se trata de una fuerte limitación sobre hacia dónde puede llegar el Estado, no de una tendencia.
- La forma 2 simpléctica se conserva. El volumen del espacio de fase se conserva exactamente (teorema de Liouville). Las trayectorias no pueden converger hacia un atractor; el flujo es incompresible.
- La dinámica es reversible en el tiempo. Ejecute el flujo hacia atrás y recuperará exactamente el estado inicial.
Vale la pena detenerse en el punto 2, porque es la tensión más aguda con todo lo demás en este blog. El teorema de Liouville dice que un sistema hamiltoniano no tiene atractores. Los flujos que preservan el volumen no pueden contraerse sobre nada. Si usted cree que los mercados tienen una estructura de atracción (y el artículo sobre atractores sostiene que así es) entonces ya está comprometido a que los mercados no sean hamiltonianos en sentido estricto. Se trata de un conflicto real, no de un tecnicismo, y es la razón por la que las extensiones disipativas que aparecen a continuación no son una ocurrencia tardía.
Por qué es importante el integrador
Simule un sistema hamiltoniano con un integrador ingenuo (Euler, RK4) y la trayectoria calculada se aleja lentamente de la superficie de energía constante. El error de truncamiento local es pequeño; el error geométrico es sistemático. En horizontes largos, la simulación se vuelve cualitativamente errónea: las órbitas que deberían cerrarse comienzan a girar en espiral.
Las redes neuronales estándar tienen el mismo defecto por una razón más profunda. Un estado de mapeo de MLP a derivados no tiene ningún mecanismo para preservar nada. Aprende adecuadamente la dinámica local y acumula errores que se agravan.
El reclamo de conservación, brevemente

Este blog ya ha argumentado que los mercados obedecen a principios similares a los de la conservación: Navier-Stokes para algotrading, parte 2 expone los argumentos en detalle, desde la liquidez como masa hasta la gestión de riesgos hidrodinámicos, y proporciona el marco econofísico adecuado. La optimización de la varianza media también es un sistema lagrangiano en este blog: consulte Teoría de la cartera de Markowitz para la forma cuadrática restringida y Ejecución óptima de Almgren-Chriss para el presupuesto de riesgo/ identificación, donde juega exactamente el papel de un momento conjugado.
Nada de eso se vuelve a derivar aquí, porque el movimiento interesante es diferente. Esos artículos utilizan la conservación como una metáfora que motiva un modelo. Una HNN convierte la conservación en una restricción arquitectónica que el modelo no puede violar incluso si los datos así lo piden. Esa diferencia (analogía suave versus estructura dura) es el contenido completo de lo que sigue, y es transversal en ambos sentidos: una restricción que los datos no satisfacen no es un a priori, es un error.
Arquitectura HNN: Conservación estructural versus penalizada

El mecanismo general basado en la física (tomar derivadas autograduadas de la salida de la red con respecto a sus entradas, formar un residuo de física, minimizarlo) ya está demostrado en el PINN de Navier-Stokes, cuyo physics_loss construye u_t, u_x, u_xx a través de autograd.grad y eleva al cuadrado el residual. La HNN utiliza el mismo mecanismo con un cambio, y el cambio es el objetivo.
Un PINN penaliza las violaciones de una ley física. El residual es un término de pérdida con un peso; el optimizador lo compensa con el ajuste de datos. Baje el peso o entregue datos contradictorios y la red violará felizmente la ley. La conservación es una preferencia.
Una HNN hace que la conservación sea estructural. No aprende el campo vectorial. , que no tiene restricciones y no conserva nada. Aprende un escalar y deriva ambos componentes del campo vectorial a partir de un único gradiente:
Debido a que ambas derivadas provienen de un potencial escalar, el campo resultante es de gradiente simpléctico por construcción. , de manera idéntica, para cada configuración de parámetros - incluida una red inicializada aleatoriamente y completamente desentrenada. No hay peso que bajar. La conservación es una identidad algebraica de la parametrización, no un término del objetivo.
Esta es una garantía mucho más sólida que la que ofrece un PINN y viene con un modo de falla mucho más agudo. La pérdida compara las derivadas derivadas con los datos observados:
Si lo observado El campo no es un gradiente simpléctico de nada; si tiene rizo, la parametrización no puede representarlo, la pérdida simplemente no puede llegar a cero. El suelo residual no es un fallo de optimización. Es una medida de qué tan lejos están los datos de admitir un hamiltoniano. Ese número es el resultado más útil de toda esta arquitectura, y es el número en torno al cual se organiza el resto de esta publicación.
La red en sí no tiene nada de especial: un MLP de a través de dos capas tanh de ancho 200 a una salida escalar.
Coordenadas
Para aplicaciones financieras, es una posición generalizada (precios logarítmicos, ponderaciones de cartera, exposición a factores) y un impulso generalizado (tasas de cambio, indicadores de impulso, variables de flujo). es entonces cualquier invariante que la red pueda encontrar: posiblemente la capitalización total del mercado, posiblemente una medida de riesgo, posiblemente una cantidad abstracta sin lectura económica, posiblemente nada.
La elección del maridaje no es inocente, y este es el hueco en la presentación estándar. Nada sobre " = precio del tronco, = EMA de rendimientos" establece que estos son conjugados. La conjugación es una relación estructural específica - debe ser el impulso canónicamente emparejado con , tal que se mantiene para algunos . Afirmarlo y probarlo son actividades diferentes, y la literatura que adapta las HNN a las finanzas hace principalmente lo primero.
| (posiciones) | (momentos) |
|---|---|
| Precios de troncos | EMA de rentabilidad |
| Ponderaciones de cartera | Tasas de cambio de peso |
Integradores simplécticos

Aprendizaje es la mitad del problema. Generar trayectorias requiere integrar las ecuaciones de Hamilton, y el integrador puede destruir lo que garantiza la arquitectura.
Integradores simplécticos preservar exactamente. El volumen del espacio de fase se conserva, oscila alrededor de su valor real con un error acotado en lugar de derivar secularmente, y las órbitas permanecen cualitativamente correctas. RK4 le ofrece un error por paso más pequeño y ninguna de estas propiedades.
El esquema simpléctico más simple es Stormer-Verlet (salto):
para separables Estas son actualizaciones explícitas. Los hamiltonianos financieros generalmente no son separables (la dinámica del impulso depende de los precios y viceversa), por lo que el caso general necesita pasos implícitos, métodos de orden superior (Yoshida, Forest-Ruth) o la ruta SympNets a continuación.
Tong et al. (2020) demostró que la composición de pasos de salto como capas de red produce arquitecturas que son simplécticas por construcción: cada capa es un paso de integración, la profundidad es igual al número de pasos y el mapa aprendido conserva la estructura simpléctica exactamente.
Garantías de estabilidad: reales y fuera de lugar

Las propiedades de estabilidad se derivan de teoremas, y precisamente por eso no prueban nada sobre los mercados.
Análisis de errores hacia atrás. Un integrador simpléctico aplicado a resuelve exactamente un hamiltoniano cercano . La trayectoria calculada es la trayectoria exacta de un sistema ligeramente perturbado, y la teoría KAM limita el error de energía en tiempos exponencialmente largos.
Estabilidad de Lyapunov. Si tiene un mínimo en equilibrio, es en sí misma una función de Lyapunov que demuestra que el equilibrio es estable. No se requiere análisis por separado.
Ambos resultados están condicionados a siendo el objeto correcto. Te dicen que la simulación del sistema aprendido es fiel; no dicen nada sobre si el sistema aprendido es el mercado. Un perfectamente conservado instalado en un piso residual de 0,9 es una simulación estable de un artefacto.
| Propiedad | Estándar NN + RK4 | HNN + simpléctica |
|---|---|---|
| Deriva de energía en 1000 pasos | secular, acumula | acotado, oscilatorio |
| Reversibilidad temporal | no | si |
| Volumen del espacio de fases | no conservado | exactamente conservado |
| Atractores representables | si | no (Liouville) |
| Invariante interpretable | ninguno |
Implementación

Módulo central HNN
import torch
import torch.nn as nn
class HamiltonianNN(nn.Module):
"""Learns a scalar H(q, p); derives dynamics via Hamilton's equations."""
def __init__(self, input_dim: int, hidden_dim: int = 200):
super().__init__()
self.net = nn.Sequential(
nn.Linear(input_dim, hidden_dim), nn.Tanh(),
nn.Linear(hidden_dim, hidden_dim), nn.Tanh(),
nn.Linear(hidden_dim, 1),
)
def hamiltonian(self, q: torch.Tensor, p: torch.Tensor) -> torch.Tensor:
return self.net(torch.cat([q, p], dim=-1))
def time_derivative(self, q: torch.Tensor, p: torch.Tensor):
q = q.requires_grad_(True)
p = p.requires_grad_(True)
H = self.hamiltonian(q, p)
dH_dq, dH_dp = torch.autograd.grad(H.sum(), [q, p], create_graph=True)
return dH_dp, -dH_dq # dq/dt, dp/dt
Integrador simpléctico de Leapfrog
class LeapfrogIntegrator:
"""Stormer-Verlet integrator. Preserves the symplectic structure."""
def __init__(self, hnn: HamiltonianNN, dt: float = 0.01):
self.hnn, self.dt = hnn, dt
def step(self, q: torch.Tensor, p: torch.Tensor):
_, dp_dt = self.hnn.time_derivative(q, p)
p_half = p + 0.5 * self.dt * dp_dt
dq_dt, _ = self.hnn.time_derivative(q, p_half)
q_new = q + self.dt * dq_dt
_, dp_dt = self.hnn.time_derivative(q_new, p_half)
return q_new, p_half + 0.5 * self.dt * dp_dt
def integrate(self, q0, p0, n_steps: int):
traj_q, traj_p, q, p = [q0], [p0], q0, p0
for _ in range(n_steps):
q, p = self.step(q, p)
traj_q.append(q); traj_p.append(p)
return torch.stack(traj_q), torch.stack(traj_p)
Coordenadas fase-espacio
Los precios logarítmicos, los rendimientos diferenciados, el impulso de la EMA y la volatilidad móvil son construcciones estándar en este blog: el canal de modelo de difusión y colectores complejos ambos lo envían. Las únicas dos líneas que importan aquí son las que definen el par conjugado:
q = np.log(prices)[w:-1] # generalised position
p = ewma(np.diff(np.log(prices), axis=0), w)[w-1:-1] # generalised momentum
Todo aguas abajo: diferencia finita , , la alineación de longitud, el bucle de entrenamiento que compara los derivados derivados con los observados con Adam, es mecánico.
Control de conservación
def measure_conservation(hnn, integrator, q0, p0, n_steps=1000):
"""Energy drift along an integrated trajectory."""
with torch.no_grad():
traj_q, traj_p = integrator.integrate(q0, p0, n_steps)
energies = torch.stack([
hnn.hamiltonian(traj_q[i], traj_p[i]) for i in range(n_steps + 1)
]).squeeze().numpy()
return {
"H_initial": energies[0],
"H_final": energies[-1],
"drift": energies[-1] - energies[0],
"oscillation": energies.std(),
"relative_error": abs(energies[-1] - energies[0]) / abs(energies[0]),
}
Tenga en cuenta lo que esta función no prueba. Mide si el integrador preserva - que será, por teorema, si o no significa cualquier cosa. La conservación en muestra de un hamiltoniano aprendido no es una prueba. La prueba que importa es diferente.
La prueba de falsificación

El experimento honesto consta de tres partes y está diseñado de manera que un resultado negativo sea informativo y no embarazoso.
1. Suelo residual. Apto sobre datos reales e informar la pérdida convergente, no la conservación. Una parametrización de gradiente simpléctico no puede representar un campo vectorial con curl; el piso mide el componente no hamiltoniano de la dinámica observada. Ajuste un MLP sin restricciones sobre los mismos datos que la referencia; no tiene restricción estructural, por lo que la brecha entre los dos pisos es el costo del supuesto hamiltoniano, expresado en las unidades de pérdida del problema.
2. Conservación fuera de muestra. Ajustar en una ventana, luego evaluar a lo largo de la trayectoria observada fuera de la muestra: la trayectoria del precio real, no una trayectoria integrada. Si es genuinamente canónico, permanece más o menos constante a lo largo de los datos que nunca vio. Si se sale de la muestra, la cantidad conservada era un artefacto de la muestra y la garantía de la arquitectura no funciona.
3. Ablación coordinada. Esta es la parte que exige la sección teórica y ninguna presentación de HNN financieros parece funcionar. Nada establece que el precio logarítmico y la EMA de rendimiento sean conjugados; se afirma. Por lo tanto, pruebe los emparejamientos entre sí (precio logarítmico, rendimientos de EMA), (precio logarítmico, rendimientos brutos), (ponderaciones de cartera, tasas de cambio de ponderación) y clasifíquelos por fuera de muestra. estabilidad. Contra un sustituto de rendimientos mezclados como control: destruir la estructura temporal, mantener la distribución marginal, reinstalar. Si la madre sustituta produce resultados comparables estabilidad, la "cantidad conservada" es una propiedad de la parametrización más que del mercado.
Mi anterior, declarado antes del hecho para que pueda compararse con el resultado: esto falla. El razonamiento se encuentra en el manual anterior: el teorema de Liouville prohíbe los atractores, los mercados parecen tener una estructura atractiva y las dos trampillas de escape que aparecen a continuación son admisiones de que el estricto supuesto hamiltoniano no se cumple. Si el piso residual es alto y está fuera de muestra es inestable en cada emparejamiento, es decir, un negativo medido limpio en un previo informado por la física, y este blog los ha publicado antes (el negativo honesto, Sharpe deflactado). Una negativa mesurada sobre una teoría elegante vale más que un tutorial no probado.
Si la conservación falla: extensiones disipativas

Los mercados reales se filtran. Los costos de transacción, los desvíos y el deterioro de la información eliminan energía del sistema, y un sistema estrictamente conservado No puedo representar eso. Existen dos relajaciones de principios, y ambas deben leerse como concesiones de que el supuesto era demasiado fuerte, no como refinamientos:
- Hamiltoniano conforme: modelo con una tasa de disipación aprendida . La magnitud del ajuste es en sí mismo una medida: qué tan lejos está el sistema de ser conservador.
- Port-Hamiltoniano: , con la matriz simpléctica, la matriz de disipación, y Forzamiento externo (noticias, flujos). Aquí relativo a cuantifica la salida directamente.
Ambos restauran la capacidad de representar atractores, a costa de la garantía de error acotado que motivó la arquitectura. Ése es el negocio, dicho claramente: puedes tener Liouville o puedes tener disipación, y los mercados parecen querer lo segundo.
Problemas abiertos relacionados: los hamiltonianos financieros no son separables (requieren pasos simplécticos implícitos o de orden superior, o SympNets aprender mapas simplécticos directamente), y los mercados operan en múltiples escalas de tiempo que un solo es poco probable que capture: hamiltonianos jerárquicos para dinámicas rápidas y lentas, o un tratamiento adiabático de variables lentas como parámetros de una escala rápida .
Conclusión

La maquinaria funciona. aprender un escalar , derive el campo vectorial a partir de su gradiente, integre simpléticamente y obtendrá la conservación como una identidad algebraica, un error acotado en miles de pasos, una reversibilidad temporal exacta y una función de Lyapunov de forma gratuita. Cada una de esas afirmaciones es un teorema y ninguna requiere validación.
Lo que requiere validación es la premisa. Los HNN no prueban si existe una cantidad conservada; la asumen y la optimizan bajo el supuesto, convergiendo a un modelo fluido, estable y de buen comportamiento independientemente. El piso residual y la falta de muestra La estabilidad son los dos únicos números que distinguen "el mercado conserva algo" de "la parametrización siempre produce algo".
Entonces, la pregunta con la que termina esta publicación no es si los HNN son estables. Se trata de si la elegancia sobrevive al contacto con BTCUSDT, y hasta que esos números estén en la página, la postura correcta hacia cada afirmación de conservación en el aprendizaje automático financiero, incluida ésta, es que no ha sido probada.
Referencias
- Greydanus, S., Dzamba, M. y Sprague, J. (2019). Redes neuronales hamiltonianas. NeuroIPS 2019.
- Tong, Y., Xiong, S., He, X., Pan, G. y Zhu, B. (2020). Redes hamiltonianas profundas basadas en integradores simplécticos. preimpresión de arXiv.
- Baaquie, BE (2000). Hamiltoniano en los mercados financieros. preimpresión de arXiv.
- Cotler, J. y Rezchikov, S. (2023). Simulación hamiltoniana eficiente para resolver la dinámica de precios de opciones. Investigación de revisión física.
- Gonon, P. & Ortega, J.-P. (2009). Mercados de valores y dinámica cuántica. preimpresión de arXiv.
- Greydanus, S. (2019). Redes neuronales hamiltonianas - Publicación de blog.
- Santos, C. et al. (2022). Redes neuronales de impulso simpléctico. PMLR.
Authors
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.