Jaringan Neural Hamiltonian: Apakah Sistem Keuangan Menghemat Sesuatu?
Ada dua pertanyaan yang bisa Anda tanyakan tentang Hamiltonian Neural Networks, dan hanya satu yang menarik.
Pertanyaan yang membosankan adalah "apakah HNN stabil?" Jawabannya adalah ya, dan ini merupakan teorema, bukan eksperimen. Encode persamaan Hamilton ke dalam arsitektur, integrasikan dengan skema sederhana, dan analisis kesalahan mundur memberi Anda batasan kesalahan energi dalam jangka waktu yang panjang secara eksponensial. Tidak ada apa pun tentang keuangan yang terlibat. Anda tidak perlu melakukan backtest untuk mempercayainya.
Pertanyaan yang menarik adalah pertanyaan yang diam-diam diandaikan oleh hasil stabilitas: apakah vektor negara keuangan mengakui kuantitas yang dilestarikan? HNN tidak menemukan apakah ada. Ini mengasumsikan ada dan menemukan yang terbaik berdasarkan asumsi itu. Jika pasar tidak melakukan konservasi untuk koordinat pilihan Anda, jaringan akan tetap menyatu, tetap menghasilkan skalar yang mulus, tetap berintegrasi tanpa meledak — dan semuanya akan menjadi model ketiadaan yang sangat stabil.
Pos ini membangun mesin, lalu menghabiskan bagian belakangnya untuk mencoba memecahkannya. Klaim yang diuji bersifat sempit dan dapat dipalsukan: bahwa itu adalah pilihan pasangan — katakanlah harga log dan EMA pengembalian — adalah terkonjugasi secara kanonik, artinya sebenarnya berlaku untuk beberapa orang . Itu adalah klaim empiris, dan bagian teori rancangan itu sendiri tidak memberikan alasan untuk mempercayainya.
Mekanika Hamiltonian: Apa yang Sebenarnya Baru di Sini

Ruang fase, sistem dinamik, lintasan dan orbit sudah menjadi kosa kata di blog ini — lihat penarik dalam algotrading untuk definisi dan manifold yang kompleks untuk rekonstruksi ruang fase melalui penyematan Takens. Berikut ini asumsi mereka.
Bagian yang baru adalah struktur simplektis. Mekanika klasik memiliki dua formulasi yang setara. Newton memberi . Hamilton memberikan fungsi skalar dari mana semua dinamika mengikuti:
Ada tiga konsekuensi yang penting, dan tidak ada satupun yang tersedia untuk model dinamis umum:
- dilestarikan sepanjang lintasan. Sistem ini terbatas pada permukaan berenergi konstan — manifold berdimensi lebih rendah di dalam ruang fase. Hal ini merupakan kendala yang sulit untuk menentukan tujuan negara, bukan kecenderungannya.
- Bentuk 2 sederhana dipertahankan. Volume ruang fase benar-benar kekal (teorema Liouville). Lintasan tidak bisa menyatu menjadi penarik; alirannya tidak dapat dimampatkan.
- Dinamikanya dapat dibalik waktu. Jalankan aliran mundur dan Anda memulihkan keadaan awal dengan tepat.
Poin 2 patut untuk dihentikan sementara, karena ini adalah ketegangan paling tajam dibandingkan semua hal lainnya di blog ini. Teorema Liouville mengatakan sistem Hamiltonian tidak memiliki penarik. Aliran yang mempertahankan volume tidak dapat berkontraksi pada apa pun. Jika Anda yakin pasar memiliki struktur yang menarik – dan artikel penarik berpendapat demikian – maka Anda sudah berkomitmen terhadap pasar yang tidak bersifat Hamiltonian dalam arti sempit. Ini adalah konflik yang nyata, bukan masalah teknis, dan itulah alasan mengapa perluasan disipatif di bawah ini bukanlah sebuah renungan.
Mengapa Integrator Penting
Simulasikan sistem Hamilton dengan integrator naif (Euler, RK4) dan lintasan yang dihitung secara perlahan menyimpang dari permukaan energi konstan. Kesalahan pemotongan lokal kecil; kesalahan geometris bersifat sistematis. Dalam jangka waktu yang panjang, simulasi tersebut menjadi salah secara kualitatif: orbit yang seharusnya tertutup mulai berputar.
Jaringan saraf standar memiliki cacat yang sama karena alasan yang lebih dalam. Status pemetaan MLP ke turunannya tidak memiliki mekanisme untuk mempertahankan apa pun. Ia mempelajari dinamika lokal secara memadai dan mengakumulasi kesalahan yang bertambah.
Klaim Konservasi, Secara Singkat

Blog ini telah menyatakan bahwa pasar mematuhi prinsip-prinsip konservasi — Navier-Stokes untuk algotrading, bagian 2 menjelaskan permasalahan ini secara panjang lebar, mulai dari likuiditas secara massal hingga manajemen risiko hidrodinamik, dan menyusun kerangka ekonomi secara tepat. Pengoptimalan mean-variance juga sudah menjadi sistem Lagrangian di blog ini: lihat Teori portofolio Markowitz untuk bentuk kuadrat terbatas dan Eksekusi optimal Almgren-Chriss untuk anggaran risiko/ identifikasi, di mana memainkan peran yang tepat sebagai momentum konjugasi.
Tidak ada satupun yang diturunkan kembali di sini, karena langkah menariknya berbeda. Artikel-artikel tersebut menggunakan konservasi sebagai metafora yang memotivasi seorang model. HNN mengubah konservasi menjadi kendala arsitektur yang tidak dapat dilanggar oleh model meskipun data memintanya. Perbedaan tersebut - analogi lunak versus struktur keras - adalah keseluruhan isi dari apa yang berikut ini, dan ini memotong dua arah: batasan yang tidak dipenuhi oleh data bukanlah batasan sebelumnya, melainkan bug.
Arsitektur HNN: Konservasi Struktural vs. Terhukum

Mekanisme umum berdasarkan informasi fisika - mengambil turunan autograd dari keluaran jaringan sehubungan dengan masukannya, membentuk sisa fisika, meminimalkannya - telah didemonstrasikan di PINN Navier-Stokes, yang physics_loss membangun u_t, u_x, u_xx melalui autograd.grad dan mengkuadratkan sisanya. HNN menggunakan mekanisme yang sama dengan satu perubahan, dan perubahan itulah intinya.
PINN menghukum pelanggaran hukum fisik. Sisanya adalah istilah kerugian dengan bobot; pengoptimal memperdagangkannya dengan kesesuaian data. Turunkan bobotnya, atau serahkan data yang bertentangan, dan jaringan akan dengan senang hati melanggar hukum. Konservasi adalah sebuah pilihan.
HNN membuat konservasi menjadi struktural. Ia tidak mempelajari bidang vektor , yang tidak dibatasi dan tidak menghemat apa pun. Ia mempelajari skalar dan memperoleh kedua komponen bidang vektor dari satu gradien:
Karena kedua turunannya berasal dari satu potensi skalar, bidang yang dihasilkan bersifat gradien sederhana berdasarkan konstruksi. , sama halnya, untuk setiap pengaturan parameter — termasuk jaringan yang diinisialisasi secara acak dan tidak terlatih sama sekali. Tidak ada beban yang perlu diturunkan. Konservasi merupakan identitas aljabar dari parameterisasi, bukan istilah dalam tujuan.
Ini adalah jaminan yang jauh lebih kuat daripada yang ditawarkan PINN, dan memiliki mode kegagalan yang jauh lebih tajam. Kerugian tersebut membandingkan turunan yang diturunkan dengan data yang diamati:
Jika diamati bidang bukanlah gradien sederhana dari apa pun - jika bidang tersebut melengkung, parameterisasi tidak dapat mewakili - kerugian tidak dapat mencapai nol. Sisa lantai bukan merupakan kegagalan pengoptimalan. Ini adalah ukuran seberapa jauh data dapat diterimanya seorang Hamiltonian. Angka tersebut adalah keluaran paling berguna dari keseluruhan arsitektur ini, dan merupakan angka yang digunakan untuk menyusun sisa postingan ini.
Jaringannya sendiri biasa-biasa saja: sebuah MLP dari melalui dua lapisan tanh dengan lebar 200 ke keluaran skalar.
Koordinat
Untuk aplikasi keuangan, adalah posisi umum (harga log, bobot portofolio, eksposur faktor) dan momentum umum (laju perubahan, indikator momentum, variabel aliran). adalah invarian apa pun yang dapat ditemukan dalam jaringan — mungkin kapitalisasi pasar total, mungkin ukuran risiko, mungkin kuantitas abstrak tanpa pembacaan ekonomi, mungkin tidak ada apa pun.
Pilihan berpasangan bukanlah hal yang tidak bersalah, dan inilah celah dalam presentasi standar. Tidak ada apa-apa tentang " = harga log, = EMA pengembalian" menetapkan bahwa ini adalah konjugasi. Konjugasi adalah hubungan struktural yang spesifik — harus menjadi momentum yang dipasangkan secara kanonik , seperti yang berlaku untuk beberapa orang . Menegaskan dan mengujinya adalah aktivitas yang berbeda, dan literatur yang mengadaptasi HNN ke bidang keuangan sebagian besar melakukan hal yang pertama.
| (posisi) | (momen) |
|---|---|
| Harga log | EMA pengembalian |
| Bobot portofolio | Tingkat perubahan berat badan |
Integrator Sederhana

Sedang belajar adalah setengah dari masalahnya. Menghasilkan lintasan memerlukan pengintegrasian persamaan Hamilton, dan integrator dapat menghancurkan apa yang dijamin oleh arsitektur.
Integrator sederhana melestarikan tepat. Volume ruang fase dilestarikan, berosilasi di sekitar nilai sebenarnya dengan kesalahan terbatas daripada melayang secara sekuler, dan orbitnya tetap benar secara kualitatif. RK4 memberi Anda kesalahan per langkah yang lebih kecil dan tidak satu pun dari properti ini.
Skema sederhana yang paling sederhana adalah Stormer-Verlet (leapfrog):
Untuk dapat dipisahkan ini adalah pembaruan eksplisit. Financial Hamiltonians pada umumnya tidak dapat dipisahkan – dinamika momentum bergantung pada harga dan sebaliknya – sehingga kasus umum memerlukan langkah-langkah implisit, metode tingkat tinggi (Yoshida, Forest-Ruth), atau rute SympNets di bawah ini.
Tong dkk. (2020) menunjukkan bahwa menyusun langkah-langkah lompatan sebagai lapisan jaringan menghasilkan arsitektur yang konstruksinya sederhana: setiap lapisan adalah langkah integrasi, kedalaman sama dengan jumlah langkah, dan peta yang dipelajari mempertahankan struktur simplektis dengan tepat.
Jaminan Stabilitas: Nyata dan Tidak Penting

Sifat stabilitas mengikuti teorema, itulah sebabnya sifat stabilitas tersebut tidak membuktikan apa pun tentang pasar.
Analisis error mundur. Integrator simplektis diterapkan tepatnya memecahkan Hamiltonian terdekat . Lintasan yang dihitung adalah lintasan yang tepat dari sistem yang sedikit terganggu, dan teori KAM membatasi kesalahan energi dalam jangka waktu yang lama secara eksponensial.
Stabilitas Lyapunov. Jika mempunyai minimum pada kesetimbangan, merupakan fungsi Lyapunov yang membuktikan bahwa kesetimbangan stabil. Tidak diperlukan analisis terpisah.
Kedua hasil tersebut bersyarat menjadi objek yang tepat. Mereka memberi tahu Anda bahwa simulasi sistem yang dipelajari itu benar; mereka tidak mengatakan apa pun tentang apakah sistem yang dipelajari itu adalah pasar. Dilestarikan dengan sempurna dipasang pada lantai sisa 0,9 adalah simulasi artefak yang stabil.
| Milik | Standar NN + RK4 | HNN + sederhana |
|---|---|---|
| Energi melayang lebih dari 1000 langkah | sekuler, terakumulasi | terbatas, berosilasi |
| Pembalikan waktu | TIDAK | Ya |
| Volume ruang fase | tidak dilestarikan | dipertahankan dengan tepat |
| Penarik dapat diwakili | Ya | tidak (Liouville) |
| Invarian yang dapat ditafsirkan | tidak ada |
Pelaksanaan

Modul HNN Inti
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
Integrator Leapfrog Sederhana
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)
Koordinat Fase-Ruang
Harga log, pengembalian yang berbeda, momentum EMA, dan volatilitas bergulir adalah konstruksi standar di blog ini — the pipa model difusi Dan manifold yang kompleks keduanya mengirimkannya. Dua garis yang penting di sini adalah garis yang menentukan pasangan konjugasi:
q = np.log(prices)[w:-1] # generalised position
p = ewma(np.diff(np.log(prices), axis=0), w)[w-1:-1] # generalised momentum
Segala sesuatu di hilir - perbedaan yang terbatas , , penyelarasan panjang, loop pelatihan yang mencocokkan turunan turunan dengan turunan yang diamati dengan Adam — bersifat mekanis.
Pemeriksaan Konservasi
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]),
}
Perhatikan apa yang tidak diuji oleh fungsi ini. Ini mengukur apakah integrator mempertahankannya — yang mana, berdasarkan teorema, apakah akan terjadi atau tidak berarti apa pun. Konservasi dalam sampel dari seorang Hamiltonian yang terpelajar bukanlah bukti. Ujian yang penting berbeda.
Tes Pemalsuan

Eksperimen yang jujur memiliki tiga bagian, dan dirancang sedemikian rupa sehingga hasil negatif bersifat informatif dan tidak memalukan.
1. Lantai sisa. Cocok berdasarkan data nyata dan laporkan kerugian yang terkonvergensi, bukan konservasi. Parameterisasi gradien sederhana tidak dapat merepresentasikan bidang vektor dengan curl; lantai mengukur komponen non-Hamiltonian dari dinamika yang diamati. Pasangkan MLP yang tidak dibatasi pada data yang sama dengan referensi — MLP tidak memiliki batasan struktural, sehingga jarak antara dua lantai adalah biaya asumsi Hamiltonian, yang dinyatakan dalam unit kerugian dari permasalahan.
2. Konservasi di luar sampel. Muat di satu jendela, lalu evaluasi sepanjang lintasan di luar sampel yang diamati — jalur harga sebenarnya, bukan jalur yang terintegrasi. Jika benar-benar kanonik, tetap konstan sepanjang data yang tidak pernah dilihatnya. Jika keluar dari sampel, kuantitas yang dilestarikan adalah artefak dalam sampel dan jaminan arsitektur tidak berfungsi.
3. Ablasi koordinat. Ini adalah bagian yang dituntut oleh bagian teori dan tampaknya tidak ada presentasi HNN keuangan yang berjalan. Tidak ada yang menetapkan bahwa harga log dan pengembalian EMA adalah konjugasi; itu ditegaskan. Jadi uji pasangan tersebut satu sama lain — (harga log, pengembalian EMA), (harga log, pengembalian mentah), (bobot portofolio, tingkat perubahan bobot) — dan beri peringkat berdasarkan sampel di luar sampel. stabilitas. Terhadap pengganti pengembalian yang dikocok sebagai kontrol: hancurkan struktur temporal, pertahankan distribusi marjinal, perbaiki. Jika hasil pengganti sebanding stabilitas, "kuantitas yang dilestarikan" adalah properti parameterisasi dan bukan properti pasar.
Sebelumnya saya, dinyatakan sebelum fakta sehingga dapat diperiksa hasilnya: ini gagal. Alasannya ada pada poin utama di atas - teorema Liouville melarang adanya penarik, pasar tampaknya memiliki struktur yang menarik, dan kedua pintu keluar di bawah ini merupakan pengakuan yang tidak berlaku pada asumsi ketat Hamiltonian. Jika sisa lantai tinggi dan di luar sampel tidak stabil di setiap pasangan, yaitu negatif terukur bersih berdasarkan informasi fisika sebelumnya, dan blog ini telah menerbitkannya sebelumnya (yang jujur dan negatif, Sharpe kempes). Negatif terukur pada teori elegan lebih berharga daripada tutorial yang belum teruji.
Jika Konservasi Gagal: Perluasan Disipatif

Kebocoran pasar riil. Biaya transaksi, slippage, dan pembusukan informasi menghilangkan energi dari sistem, dan sangat dilestarikan tidak bisa mewakili hal itu. Ada dua prinsip pelonggaran, dan keduanya harus dibaca sebagai konsesi yang asumsinya terlalu kuat, bukan sebagai penyempurnaan:
- Hamiltonian Konformal: model dengan tingkat disipasi yang dipelajari . Besarnya yang dipasang itu sendiri merupakan sebuah pengukuran — seberapa jauh sistem tersebut berada dari posisi konservatif.
- Port-Hamiltonian: , dengan matriks simplektis, matriks disipasi, dan kekuatan eksternal (berita, arus). Di Sini relatif terhadap mengukur keberangkatan secara langsung.
Keduanya mengembalikan kemampuan untuk mewakili penarik, dengan mengorbankan jaminan kesalahan terbatas yang memotivasi arsitektur. Itulah perdagangannya, dinyatakan dengan jelas: Anda dapat memiliki Liouville atau Anda dapat melakukan disipasi, dan pasar tampaknya menginginkan yang kedua.
Masalah terbuka terkait: keuangan Hamiltonian tidak dapat dipisahkan (memerlukan langkah-langkah sederhana yang implisit atau tingkat tinggi, atau SympNets mempelajari peta simplektik secara langsung), dan pasar beroperasi pada beberapa skala waktu yang sama tidak mungkin dapat ditangkap - orang Hamilton hierarkis untuk dinamika cepat dan lambat, atau perlakuan adiabatik terhadap variabel lambat sebagai parameter skala cepat .
Kesimpulan

Mesinnya bekerja. Pelajari skalar , turunkan bidang vektor dari gradiennya, integrasikan secara sederhana, dan Anda mendapatkan konservasi sebagai identitas aljabar, kesalahan terbatas dalam ribuan langkah, reversibilitas waktu yang tepat, dan fungsi Lyapunov secara gratis. Setiap klaim tersebut adalah sebuah teorema dan tidak ada satupun yang memerlukan validasi.
Yang memerlukan validasi adalah premisnya. HNN tidak menguji apakah ada kuantitas yang dilestarikan — mereka mengasumsikannya dan mengoptimalkannya berdasarkan asumsi, sehingga menyatu menjadi model yang mulus, stabil, dan berperilaku baik. Lantai sisa dan sampel yang keluar stabilitas adalah satu-satunya dua angka yang membedakan "pasar melestarikan sesuatu" dari "parameterisasi selalu menghasilkan sesuatu."
Jadi pertanyaan pada postingan ini bukanlah apakah HNN stabil. Masalahnya adalah apakah keanggunannya dapat bertahan jika bersentuhan dengan BTCUSDT — dan hingga angka-angka tersebut muncul, sikap yang benar terhadap setiap klaim konservasi dalam pembelajaran mesin keuangan, termasuk yang ini, adalah bahwa klaim tersebut belum diuji.
Referensi
- Greydanus, S., Dzamba, M., & Sprague, J. (2019). Jaringan Syaraf Hamiltonian. NeuroIPS 2019.
- Tong, Y., Xiong, S., He, X., Pan, G., & Zhu, B. (2020). Jaringan Deep Hamiltonian Berdasarkan Integrator Simplectic. pracetak arXiv.
- Baaquie, BE (2000). Hamiltonian di Pasar Keuangan. pracetak arXiv.
- Cotler, J. & Rezchikov, S. (2023). Simulasi Hamiltonian yang Efisien untuk Memecahkan Dinamika Harga Opsi. Penelitian Tinjauan Fisik.
- Gonon, P. & Ortega, J.-P. (2009). Pasar Saham dan Dinamika Kuantum. pracetak arXiv.
- Greydanus, S. (2019). Jaringan Neural Hamiltonian - Entri Blog.
- Santos, C. dkk. (2022). Jaringan Syaraf Momentum Simplektis. PMLR.
Penulis
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.