← Kembali ke artikel
February 26, 2026
Bacaan 5 minit

Matriks, Tensor, dan Aljabar Tropika: Aljabar Linear untuk Pengesanan Arbitraj

Matriks, Tensor, dan Aljabar Tropika: Aljabar Linear untuk Pengesanan Arbitraj
#arbitraj
#aljabar linear
#aljabar tropika
#matriks
#tensor
#rust
#mata wang kripto
#pengoptimuman
#PCA
#nilai eigen

Bahagian 4 daripada siri "Rantaian Arbitraj Kompleks Antara Niaga Hadapan dan Spot"

Bayangkan sebuah dewan besar di mana ratusan pedagang menukar mata wang secara serentak. Setiap orang mempunyai kadar, yuran, dan keistimewaannya sendiri. Anda berdiri di tengah-tengah dengan buku nota, cuba mencari laluan pertukaran yang mendatangkan keuntungan: dolar kepada euro, euro kepada yen, yen kembali kepada dolar—dan keluar dengan lebih banyak daripada yang anda mulakan. Mudah untuk tersesat. Tetapi jika anda menuliskan semua kadar dalam jadual—sebuah matriks—tiba-tiba huru-hara itu mendapat struktur. Nilai eigen matriks ini akan memberitahu anda sama ada terdapat arbitraj. Aljabar tropika akan mencari laluan optimum. Dan penguraian tensor akan mendedahkan corak yang tidak kelihatan dengan mata kasar.

Dalam artikel ini, kita akan melakukan perjalanan dari jadual kadar pertukaran yang mudah kepada kaedah analisis berbilang dimensi yang canggih—dan setiap langkah akan disokong oleh pelaksanaan dalam Rust.

Matriks Kadar Pertukaran dan Kitaran Arbitraj Visualisasi matriks kadar pertukaran antara mata wang kripto: tepi graf mewakili pasangan dagangan, dan kitaran yang diserlahkan mewakili peluang arbitraj yang dikesan.

Matriks kadar pertukaran dengan penguraian spektrum nilai eigen

1. Matriks Kadar Pertukaran: Asasnya

1.1 Dari Huru-Hara kepada Jadual

Andaikan kita mempunyai n aset: BTC, ETH, USDT, SOL, dan sebagainya. Setiap pasangan boleh ditukar pada kadar tertentu. Matriks Kadar Pertukaran R ialah jadual n × n di mana elemen R[i][j] menunjukkan berapa banyak unit aset j yang kita dapat untuk satu unit aset i.

Sifat-sifat matriks yang dibentuk dengan betul:

  • Pepenjuru: R[i][i] = 1—menukar aset dengan dirinya sendiri tidak mengubah apa-apa.
  • Kepositifan: R[i][j] > 0 untuk semua pasangan.
  • Kebalikan (dalam pasaran ideal): R[i][j] * R[j][i] = 1.

Dalam Rust, kita boleh mewakili ini menggunakan nalgebra:

use nalgebra::DMatrix;

/// Membina matriks kadar pertukaran daripada set pasangan dagangan
fn build_exchange_rate_matrix(
    assets: &[&str],
    rates: &[((usize, usize), f64)],
) -> DMatrix<f64> {
    let n = assets.len();
    let mut matrix = DMatrix::from_element(n, n, 0.0);

    // Pepenjuru: pertukaran dengan diri sendiri = 1
    for i in 0..n {
        matrix[(i, i)] = 1.0;
    }

    // Isikan kadar yang diketahui
    for &((i, j), rate) in rates {
        matrix[(i, j)] = rate;
        // Kadar songsang (jika tiada yang langsung)
        if matrix[(j, i)] == 0.0 {
            matrix[(j, i)] = 1.0 / rate;
        }
    }

    matrix
}

1.2 Syarat Tiada Arbitraj

Berikut ialah teorem utama yang menjadi asas kepada segala-galanya.

Teorem. Pasaran bebas daripada arbitraj jika dan hanya jika untuk mana-mana kitaran aset (i₁, i₂, ..., iₖ, i₁), hasil darab kadar pertukaran sepanjang kitaran bersamaan satu:

R[i₁][i₂] * R[i₂][i₃] * ... * R[iₖ][i₁] = 1

Perumusan setara: Matriks R bebas arbitraj jika dan hanya jika pangkatnya ialah 1 (dalam erti kata perkalian). Ini bermakna terdapat vektor harga p = (p₁, p₂, ..., pₙ) sedemikian rupa sehingga:

R[i][j] = pj / pi   untuk semua i, j

Matriks R terurai sebagai hasil darab luar R = (1/p) * pᵀ—dan ini adalah matriks pangkat-1. Jika matriks sebenar menyimpang daripada pangkat 1—ada peluang arbitraj yang tersembunyi di suatu tempat.

2. Kaedah Nilai Eigen: Arbitraj dalam O(n³)

2.1 Teorem Ming Ma

Salah satu pendekatan paling elegan untuk pengesanan arbitraj telah dicadangkan oleh Ming Ma pada tahun 2007. Ideanya sangat ringkas.

Teorem (Ming Ma). Biar R ialah matriks kadar pertukaran n × n. Jika pasaran bebas arbitraj, maka:

  1. Nilai eigen terbesar λ_max = n.
  2. Semua nilai eigen lain bersamaan sifar.
  3. Vektor eigen yang sepadan v mewakili harga keseimbangan.

Mengapa ia berfungsi? Matriks bebas arbitraj mempunyai pangkat 1, dan kesannya (jumlah elemen pepenjuru) bersamaan n (kerana setiap R[i][i] = 1). Untuk matriks pangkat-1, satu-satunya nilai eigen bukan sifar bersamaan kesan. Oleh itu, λ_max = n.

Kriteria arbitraj: Arbitraj wujud jika dan hanya jika λ_max > n. Penyelewengan δ = λ_max - n menganggar skala peluang arbitraj secara kuantitatif.

Visualisasi aljabar tropika (max-plus)

3. Aljabar Tropika (Max-Plus): Kaedah Paling Elegan

3.1 Apabila Penambahan Menjadi Maksimum

Ini mungkin penemuan paling indah dalam kajian kita. Aljabar tropika ialah sistem algebra di mana operasi yang biasa ditakrif semula:

  • "Penambahan": a ⊕ b = max(a, b)
  • "Pendaraban": a ⊗ b = a + b

Pendaraban matriks dalam algebra ini secara automatik mencari laluan dengan jumlah berat maksimum. Inilah yang diperlukan untuk mencari kitaran arbitraj yang paling menguntungkan.

3.2 Nilai Eigen Tropika dan Arbitraj

Ambil log-matriks kadar L[i][j] = ln(R[i][j]). Kira nilai eigen tropika λ matriks L.

Teorem. λ > 0 jika dan hanya jika arbitraj wujud. Tambahan pula, exp(λ) ialah pengganda keuntungan kitaran terbaik.

/// Pendaraban matriks tropika (max-plus)
fn tropical_matmul(a: &DMatrix<f64>, b: &DMatrix<f64>) -> DMatrix<f64> {
    let n = a.nrows();
    let m = b.ncols();
    let k = a.ncols();
    let mut result = DMatrix::from_element(n, m, f64::NEG_INFINITY);

    for i in 0..n {
        for j in 0..m {
            for l in 0..k {
                // Pendaraban tropika: max menggantikan jumlah, + menggantikan *
                let val = a[(i, l)] + b[(l, j)];
                if val > result[(i, j)] {
                    result[(i, j)] = val;
                }
            }
        }
    }
    result
}

4. PCA dan Model Faktor: Arbitraj Statistik

Beralih daripada arbitraj deterministik (perbezaan harga langsung) kepada arbitraj statistik—mencari penyelewengan sistematik daripada model faktor.

Analisis Komponen Utama (PCA) menguraikan pulangan aset kepada faktor sistematik dan baki idiosinkratik:

ri(t) = αi + Σk βik * Fk(t) + εi(t)

di mana Fk(t) ialah faktor ke-k, βik ialah pembebanan, dan εi(t) ialah baki—isyarat arbitraj.

4.1 Teori Matriks Rawak (RMT)

Soalan utama: berapa banyak faktor yang perlu dikekalkan? Taburan Marchenko-Pastur menggambarkan spektrum nilai eigen untuk matriks kovarians rawak. Nilai eigen di atas sempadan atas λ+λ_+ membawa isyarat nyata, manakala yang berada di dalam sempadan adalah hingar.

Visualisasi tensor 3D untuk arbitraj berbilang dimensi

5. Kaedah Tensor: Dimensi Ketiga Arbitraj

Arbitraj mata wang kripto melibatkan pelbagai dimensi secara serentak. Matriks kadar hanyalah keratan 2D. Gambaran sebenar ialah sebuah Tensor:

T(a, e, i) = harga/kadar untuk aset a di bursa e untuk instrumen i

Dimensi:

  • Mod 1 (Aset): BTC, ETH, SOL, ...
  • Mod 2 (Bursa): Binance, Kraken, Coinbase, ...
  • Mod 3 (Instrumen): Spot, Kekal, Niaga Hadapan, ...

Penguraian CP (CANDECOMP/PARAFAC) memfaktorkan tensor kepada jumlah tensor pangkat-1. Baki T - T_approx mendedahkan anomali di mana kombinasi harga/bursa/instrumen tertentu salah harga berbanding struktur faktor pasaran keseluruhan.

Kesimpulan

Dari jadual mudah hingga tensor berbilang dimensi, aljabar linear menyediakan bahasa formal untuk pasaran mata wang kripto. Rust membolehkan kita melaksanakan model-model kompleks ini dengan kelajuan yang diperlukan untuk HFT.

Dalam bahagian seterusnya, kita akan meneroka GNN, Transformer, dan RL untuk Arbitraj, melihat bagaimana rangkaian neural belajar untuk berdagang.


Menghitung isyarat berdimensi tinggi? Semak Enjin Dagangan Berasaskan Tensor kami di GitHub.

Penafian: Maklumat yang disediakan dalam artikel ini adalah untuk tujuan pendidikan dan maklumat sahaja dan bukan merupakan nasihat kewangan, pelaburan, atau dagangan. Dagangan mata wang kripto melibatkan risiko kerugian yang ketara.

Pengarang

Eugen Soloviov
Eugen Soloviov

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.

Newsletter

Kekal Mendahului Pasaran

Langgan surat berita kami untuk pandangan dagangan AI eksklusif, analisis pasaran, dan kemas kini platform.

Kami menghormati privasi anda. Berhenti melanggan pada bila-bila masa.