← Kembali ke artikel
February 26, 2026
5 menit baca

Matriks, Tensor, dan Aljabar Tropis: Aljabar Linear untuk Deteksi Arbitrase

Matriks, Tensor, dan Aljabar Tropis: Aljabar Linear untuk Deteksi Arbitrase
#arbitrase
#aljabar linear
#aljabar tropis
#matriks
#tensor
#rust
#cryptocurrency
#optimasi
#PCA
#nilai eigen

Bagian 4 dari seri "Rantai Arbitrase Kompleks antara Futures dan Spot"

Bayangkan sebuah aula besar tempat ratusan pedagang menukar mata uang secara bersamaan. Masing-masing memiliki nilai tukar, biaya, dan kebiasaan tersendiri. Anda berdiri di tengah dengan sebuah buku catatan, berusaha menemukan rute pertukaran yang menghasilkan keuntungan: dolar ke euro, euro ke yen, yen kembali ke dolar—dan keluar dengan lebih banyak dari yang Anda mulai. Mudah tersesat. Namun jika Anda menuliskan semua nilai tukar dalam sebuah tabel—sebuah matriks—tiba-tiba kekacauan itu mendapatkan struktur. Nilai eigen dari matriks ini akan memberi tahu Anda apakah terdapat arbitrase. Aljabar tropis akan menemukan rute optimal. Dan dekomposisi tensor akan mengungkap pola yang tidak terlihat oleh mata telanjang.

Dalam artikel ini, kita akan melakukan perjalanan dari tabel nilai tukar sederhana ke metode analisis multidimensi tingkat lanjut—dan setiap langkah akan didukung oleh implementasi dalam Rust.

Matriks Nilai Tukar dan Siklus Arbitrase Visualisasi matriks nilai tukar antar kripto: tepi graf mewakili pasangan perdagangan, dan siklus yang disorot mewakili peluang arbitrase yang terdeteksi.

Matriks nilai tukar dengan dekomposisi spektral nilai eigen

1. Matriks Nilai Tukar: Fondasi

1.1 Dari Kekacauan ke Tabel

Misalkan kita memiliki n aset: BTC, ETH, USDT, SOL, dll. Setiap pasang dapat ditukar dengan nilai tukar tertentu. Matriks Nilai Tukar R adalah tabel n × n di mana elemen R[i][j] menunjukkan berapa unit aset j yang kita dapatkan untuk satu unit aset i.

Properti matriks yang terbentuk dengan baik:

  • Diagonal: R[i][i] = 1—menukar aset dengan dirinya sendiri tidak mengubah apa pun.
  • Positivitas: R[i][j] > 0 untuk semua pasang.
  • Resiprositas (di pasar ideal): R[i][j] * R[j][i] = 1.

Dalam Rust, kita dapat merepresentasikan ini menggunakan nalgebra:

use nalgebra::DMatrix;

/// Membangun matriks nilai tukar dari sekumpulan pasangan perdagangan
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);

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

    // Isi nilai tukar yang diketahui
    for &((i, j), rate) in rates {
        matrix[(i, j)] = rate;
        // Nilai tukar resiprokal (jika tidak ada yang langsung)
        if matrix[(j, i)] == 0.0 {
            matrix[(j, i)] = 1.0 / rate;
        }
    }

    matrix
}

1.2 Kondisi Bebas-Arbitrase

Berikut adalah teorema kunci yang menjadi dasar segalanya.

Teorema. Sebuah pasar bebas dari arbitrase jika dan hanya jika untuk setiap siklus aset (i₁, i₂, ..., iₖ, i₁), hasil kali nilai tukar sepanjang siklus sama dengan satu:

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

Formulasi setara: Matriks R bebas arbitrase jika dan hanya jika peringkatnya adalah 1 (dalam arti perkalian). Ini berarti terdapat vektor harga p = (p₁, p₂, ..., pₙ) sehingga:

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

Matriks R terdekomposisi sebagai perkalian luar R = (1/p) * pᵀ—dan ini adalah matriks peringkat-1. Jika matriks aktual menyimpang dari peringkat 1—ada peluang arbitrase yang tersembunyi di suatu tempat.

2. Metode Nilai Eigen: Arbitrase dalam O(n³)

2.1 Teorema Ming Ma

Salah satu pendekatan paling elegan untuk deteksi arbitrase diusulkan oleh Ming Ma pada tahun 2007. Idenya sangat sederhana namun brilian.

Teorema (Ming Ma). Misalkan R adalah matriks nilai tukar n × n. Jika pasar bebas arbitrase, maka:

  1. Nilai eigen terbesar λ_max = n.
  2. Semua nilai eigen lainnya sama dengan nol.
  3. Vektor eigen yang bersesuaian v mewakili harga keseimbangan.

Mengapa ini berhasil? Matriks bebas arbitrase memiliki peringkat 1, dan tracenya (jumlah elemen diagonal) sama dengan n (karena setiap R[i][i] = 1). Untuk matriks peringkat-1, satu-satunya nilai eigen tak nol sama dengan trace. Oleh karena itu, λ_max = n.

Kriteria arbitrase: Arbitrase ada jika dan hanya jika λ_max > n. Deviasi δ = λ_max - n secara kuantitatif memperkirakan skala peluang arbitrase.

Visualisasi aljabar tropis (max-plus)

3. Aljabar Tropis (Max-Plus): Metode Paling Elegan

3.1 Ketika Penjumlahan Menjadi Maksimum

Ini mungkin temuan paling indah dalam kajian kita. Aljabar tropis adalah sistem aljabar di mana operasi yang umum didefinisikan ulang:

  • "Penjumlahan": a ⊕ b = max(a, b)
  • "Perkalian": a ⊗ b = a + b

Perkalian matriks dalam aljabar ini secara otomatis mencari jalur dengan jumlah bobot maksimum. Inilah tepatnya yang diperlukan untuk menemukan siklus arbitrase paling menguntungkan.

3.2 Nilai Eigen Tropis dan Arbitrase

Ambil log-matriks dari nilai tukar L[i][j] = ln(R[i][j]). Hitung nilai eigen tropis λ dari matriks L.

Teorema. λ > 0 jika dan hanya jika arbitrase ada. Selain itu, exp(λ) adalah pengali keuntungan dari siklus terbaik.

/// Perkalian matriks tropis (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 {
                // Perkalian tropis: max alih-alih jumlah, + alih-alih *
                let val = a[(i, l)] + b[(l, j)];
                if val > result[(i, j)] {
                    result[(i, j)] = val;
                }
            }
        }
    }
    result
}

4. PCA dan Model Faktor: Arbitrase Statistik

Beralih dari arbitrase deterministik (perbedaan harga langsung) ke arbitrase statistik—menemukan deviasi sistematis dari model faktor.

Analisis Komponen Utama (PCA) menguraikan return aset menjadi faktor sistematis dan residu idiosinkratik:

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

di mana Fk(t) adalah faktor ke-k, βik adalah loading, dan εi(t) adalah residu—sinyal arbitrase.

4.1 Teori Matriks Acak (RMT)

Pertanyaan kunci: berapa banyak faktor yang harus dipertahankan? Distribusi Marchenko-Pastur mendeskripsikan spektrum nilai eigen untuk matriks kovarians acak. Nilai eigen di atas batas atas λ+λ_+ membawa sinyal nyata, sedangkan yang berada di dalam batas adalah derau.

Visualisasi tensor 3D untuk arbitrase multidimensi

5. Metode Tensor: Dimensi Ketiga Arbitrase

Arbitrase kripto melibatkan beberapa dimensi secara bersamaan. Matriks nilai tukar hanyalah irisan 2D. Gambaran sesungguhnya adalah sebuah Tensor:

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

Dimensi:

  • Mode 1 (Aset): BTC, ETH, SOL, ...
  • Mode 2 (Bursa): Binance, Kraken, Coinbase, ...
  • Mode 3 (Instrumen): Spot, Perpetual, Futures, ...

Dekomposisi CP (CANDECOMP/PARAFAC) memfaktorkan tensor menjadi jumlah tensor peringkat-1. Residu T - T_approx mengungkap anomali di mana kombinasi harga/bursa/instrumen tertentu salah harga relatif terhadap struktur faktor pasar secara keseluruhan.

Kesimpulan

Dari tabel sederhana hingga tensor multidimensi, aljabar linear menyediakan bahasa formal untuk pasar kripto. Rust memungkinkan kita menjalankan model kompleks ini dengan kecepatan yang diperlukan untuk HFT.

Pada bagian berikutnya, kita akan mengeksplorasi GNN, Transformer, dan RL untuk Arbitrase, melihat bagaimana jaringan saraf belajar untuk berdagang.


Mengolah sinyal berdimensi tinggi? Lihat Tensor-Based Trading Engine di GitHub kami.

Penafian: Informasi yang disediakan dalam artikel ini hanya untuk tujuan edukasi dan informasi serta tidak merupakan nasihat keuangan, investasi, atau trading. Trading mata uang kripto mengandung risiko kerugian yang signifikan.

Penulis

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

Selangkah Lebih Maju dari Pasar

Berlangganan newsletter kami untuk wawasan AI trading eksklusif, analisis pasar, dan pembaruan platform.

Kami menghormati privasi Anda. Berhenti berlangganan kapan saja.