← All Collections
4 parts

High-Performance Backtest Engines

How to build a backtest engine that runs hundreds of times faster without changing a single PnL number — data layout, caching, adaptive resolution, and architecture, from first speedups to production internals.

  1. 01
    Tangga Kecepatan Engine Backtest: 298x pada CPU Laptop, PnL Identik hingga Transaksi Terakhir
    Jul 1, 2026 #algotrading

    Tangga Kecepatan Engine Backtest: 298x pada CPU Laptop, PnL Identik hingga Transaksi Terakhir

    Lima implementasi dari sweep parameter 80-kombinasi yang sama, semuanya diverifikasi menghasilkan PnL identik: pandas rolling.apply membutuhkan 69.9 detik, numpy 3.1, numba 2.0, numba paralel 0.23 — percepatan terukur 298x pada Apple M2 Max tanpa perubahan hardware sama sekali, dan tetap ~13x lebih cepat dibanding baseline vektorisasi yang kompeten. Apa yang didapat dari setiap anak tangga, mengapa GPU bukan bagian yang hilang, dan di mana bottleneck sebenarnya dalam pencarian parameter skala besar berada.

  2. 02
    Cache Parquet Teragregasi: Cara Mempercepat Backtest Multi-Timeframe Ratusan Kali Lipat
    Mar 16, 2026 #algotrading

    Cache Parquet Teragregasi: Cara Mempercepat Backtest Multi-Timeframe Ratusan Kali Lipat

    Cara pra-komputasi timeframe dan indikator dari candle per menit, menyimpannya ke parquet, dan menggunakannya untuk pengujian strategi massal tanpa perhitungan ulang yang tidak perlu.

  3. 03
    Drill-Down Adaptif: Backtest dengan Granularitas Bervariasi dari Menit hingga Trade Mentah
    Mar 17, 2026 #algotrading

    Drill-Down Adaptif: Backtest dengan Granularitas Bervariasi dari Menit hingga Trade Mentah

    Bagaimana granularitas data adaptif mempercepat backtest dan menghemat penyimpanan: drill-down dari 1m ke 1s, 100ms, dan trade mentah hanya di tempat harga bergerak signifikan atau volume melonjak, bukan di sepanjang seluruh deret historis.

  4. 04
    Pajak IPC: Taruh Engine Backtest di Balik Socket dan Rugi 13% — Nyaris Tak Ada yang Disebabkan oleh Socket-nya
    Jul 2, 2026 #algotrading

    Pajak IPC: Taruh Engine Backtest di Balik Socket dan Rugi 13% — Nyaris Tak Ada yang Disebabkan oleh Socket-nya

    Kami mem-port kernel backtest numba baris demi baris ke Rust dan memanggilnya lintas batas proses dengan empat cara, dengan gerbang ekuivalensi yang mengonfirmasi PnL identik hingga transaksi terakhir. Mengirim seluruh seri harga 1.2 MB melalui Unix socket berbiaya ~2 ms — sekitar 0.1% dari total pekerjaan. Meng-encode payload yang sama sebagai JSON berbiaya 1348x lebih mahal daripada raw bytes, panggilan chatty per-kombo mengirim ulang data 80 kali, dan pola panggilan per-bar akan membayar 2.1 s IPC murni pada pekerjaan 2.0 s. Batasnya murah; pajaknya ada pada cara Anda menyeberanginya.