12 Algoritma Optimasi Portofolio, Dibandingkan: HRP, Black-Litterman, NCO dan Selebihnya
Setiap optimizer portofolio menjawab pertanyaan yang sama: diberikan riwayat harga sejumlah aset, berapa fraksi modal yang harus ditempatkan di masing-masing aset? Persoalannya adalah tidak ada jawaban tunggal yang benar — hanya ada sekumpulan jawaban, masing-masing merupakan hasil dari asumsi yang berbeda tentang bagaimana pasar berperilaku dan seberapa besar kepercayaan Anda terhadap estimasi Anda sendiri.
Jadi alih-alih bertaruh pada satu metode, kami membangun alat yang menjalankan dua belas metode secara berdampingan, semuanya di balik satu antarmuka, dan memungkinkan Anda menyaksikan perbedaan pendapat mereka pada data nyata. Ini open source, ditulis dalam Rust, dan tersedia di portfolio-optimizer.marketmaker.cc. Artikel ini adalah petanya: apa yang diyakini setiap algoritma, dari mana datangnya matematika tersebut, dan apa yang terjadi ketika Anda mengarahkan semua dua belas pada keranjang kripto yang sama.
Satu antarmuka, dua belas pendapat
Setiap algoritma dalam proyek ini mengekspos tanda tangan fungsi yang persis sama:
pub fn optimize(prices: &[Vec<f64>]) -> Vec<f64>
Harga masuk, bobot keluar. Bobot bersifat long-only, non-negatif, dan berjumlah 1,0. Keseragaman itulah yang menjadi inti poinnya — artinya Anda dapat menukar Hierarchical Risk Parity dengan Mean-Variance Optimization tanpa menyentuh satu baris pun kode pemanggil, dan Anda dapat membandingkan semua algoritma pada input yang identik. Setiap algoritma berada di crate-nya sendiri (portfolio-hrp, portfolio-mvo, portfolio-nco, …) sehingga Anda bisa bergantung hanya pada yang Anda butuhkan.
Di balik layar, perbedaannya tidak bisa lebih besar lagi. Mari kita telusuri masing-masing keluarga.
Yang klasik: Mean-Variance Optimization (MVO)
Di sinilah teori portofolio modern dimulai — Harry Markowitz, 1952. MVO memperlakukan alokasi sebagai optimasi berkendala: memaksimalkan imbal hasil yang diharapkan untuk tingkat risiko tertentu. Secara formal, Anda menyelesaikan
di mana adalah vektor imbal hasil yang diharapkan, adalah matriks kovarians, dan adalah aversi risiko Anda. Ketika inputnya bagus, MVO tak tertandingi: secara konstruksi, ia adalah efficient frontier.
Masalahnya adalah inputnya tidak pernah bagus. Imbal hasil yang diharapkan diestimasi dari riwayat yang penuh noise, dan MVO sangat sensitif terhadapnya — perubahan kecil pada suatu estimasi dapat menggeser alokasi dari 80% di satu aset ke 80% di aset lain. Para praktisi menyebutnya "error maximization": optimizer dengan senang hati menuangkan modal ke aset mana pun yang imbal hasilnya paling dilebih-estimasi. MVO adalah tolok ukur yang digunakan semua orang sebagai patokan dan kisah peringatan yang dikutip semua orang.
Keluarga hierarkis: HRP, HERC, GHRP, MHRP
Pada tahun 2016 Marcos López de Prado mengusulkan ide berbeda: jangan membalik matriks kovarians sama sekali. Hierarchical Risk Parity (HRP) menghindari ketidakstabilan MVO dengan tidak pernah menyelesaikan masalah optimasi secara langsung. Metode ini bekerja dalam tiga tahap:
- Tree clustering — mengubah matriks korelasi menjadi metrik jarak, , dan membangun hierarki aset sehingga aset-aset yang serupa berada di cabang yang sama.
- Quasi-diagonalization — mengurutkan ulang matriks kovarians sehingga aset-aset yang berkorelasi berdekatan, memusatkan nilai-nilai besar di sepanjang diagonal.
- Recursive bisection — membagi pohon dari atas ke bawah, mengalokasikan modal antara dua bagian secara berbanding terbalik dengan varians mereka.
Hasilnya adalah portofolio yang menghormati struktur pasar — aset-aset yang berkorelasi bersaing satu sama lain untuk mendapatkan bobot, bukan dengan semuanya sekaligus. HRP jauh lebih stabil di luar sampel dibandingkan MVO justru karena ia tidak pernah membalik matriks yang poorly-conditioned.
Proyek ini menyertakan empat anggota keluarga ini:
- HRP — algoritma asli López de Prado.
- HERC (Hierarchical Equal Risk Contribution) — menggantikan pembagian inverse-variance dengan aturan equal-risk-contribution di setiap node, sehingga setiap kluster berkontribusi sama terhadap total risiko.
- GHRP (Generalized HRP) — generalisasi terparameterisasi yang memungkinkan Anda menyetel langkah clustering dan alokasi.
- MHRP (Modified HRP) — varian yang menyesuaikan pembobotan biseksi untuk distribusi imbal hasil yang lebih heavy-tailed.
Mereka adalah saudara dekat, tetapi pada data nyata mereka berbeda secara bermakna — itulah mengapa memiliki keempat-empatnya sangat berguna.
Menyuntikkan pandangan: Black-Litterman
Model Black-Litterman (Goldman Sachs, tahun 1990-an) dibangun untuk memperbaiki kelemahan praktis MVO yang paling mendasar: ia memaksa Anda menyediakan imbal hasil yang diharapkan untuk setiap aset, bahkan yang tidak Anda miliki opini tentangnya. Black-Litterman sebaliknya dimulai dari keseimbangan yang terimplikasi pasar yang netral dan membiarkan Anda memadukan pandangan Anda sendiri, dibobot oleh seberapa yakin Anda.
Di sini adalah imbal hasil keseimbangan, dan mengkodekan pandangan Anda ("aset A akan mengungguli aset B sebesar 2%"), dan adalah ketidakpastian dari pandangan-pandangan tersebut. Ketika Anda tidak memiliki pandangan, ia kembali ke portofolio pasar; ketika Anda yakin, ia memiringkan taruhan Anda dengan kuat. Ini adalah yang paling peka-opini di antara dua belas algoritma.
Yang hibrida: Nested Clustered Optimization (NCO)
NCO, juga dari López de Prado, adalah perkawinan cerdas antara dua dunia di atas. Ia mengelompokkan aset seperti HRP, kemudian menjalankan Mean-Variance Optimization kecil yang well-conditioned di dalam setiap kluster dan lagi di seluruh kluster. Dengan hanya membalik sub-matriks kecil yang stabil, NCO menangkap optimalitas MVO di mana aman digunakan, sambil menghindari ketidakstabilan pembalikan satu matriks kovarians yang sangat besar. Ini sering menjadi yang terbaik dari kedua perilaku tersebut.
Sisa jajaran algoritma
- Entropy Pooling (Meucci) — kerangka probabilistik yang menemukan distribusi yang paling mendekati prior Anda (berdasarkan entropi relatif) sambil memenuhi sekumpulan pandangan sebagai kendala. Elegan ketika Anda ingin mengekspresikan ketidakpastian daripada perkiraan titik.
- OLPS (Online Portfolio Selection) — sekumpulan strategi sekuensial (universal portfolios, follow-the-winner, mean-reversion) yang menyeimbangkan ulang seiring datangnya harga baru, dengan batasan penyesalan yang dapat dibuktikan. Satu-satunya metode yang benar-benar online dalam kumpulan ini.
- RBA (Robust Bayesian Allocation) — membungkus alokasi dalam lapisan penyusutan Bayesian, menarik estimasi yang berisik ke arah prior yang masuk akal sehingga satu bulan yang aneh tidak dapat mendominasi bobot.
- TIC (Theory-Implied Correlation) — menggantikan matriks korelasi sampel mentah dengan yang telah di-denoise terhadap struktur teoritis (sering berupa taksonomi ekonomi), yang dapat secara tajam meningkatkan metode hierarkis yang bergantung pada korelasi.
- Pipeline — algoritma "house" komposit kami: tulang punggung HRP dengan overlay long/short opsional dan kendala CVaR (risiko ekor). Melalui titik masuk long-only
optimize()yang seragam, ia berperilaku seperti HRP; mesin long/short dan pengelolaan risiko ekornya aktif saat Anda menjalankannya dengan sinyal eksplisit. Kami menguraikannya secara lengkap dalam deep dive khusus: Di Dalam Algoritma House Kami: HRP + Long/Short + CVaR dengan Hull-White.
Apa yang terjadi ketika Anda membalap semua dua belas
Inilah bagian yang menarik. Kami mengarahkan semua dua belas pada keranjang campuran yang sengaja dirancang — tiga pemenang kuat (ZEC, Tether Gold, 1000RATS) dan tiga pecundang berat (FLOW, KAVA, LINEA) — selama periode September 2025 hingga Februari 2026, dan membiarkan masing-masing melakukan alokasi.
| Algoritma | Imbal hasil tahunan | Sharpe |
|---|---|---|
| RBA | +149% | — |
| MVO | +74% | 2.52 |
| Entropy Pooling | +57% | 1.93 |
| NCO | +44% | — |
| HERC | +30% | — |
| Black-Litterman | +7% | — |
| OLPS | −74% | — |
| MHRP | −78% | — |
| GHRP | −95% | — |
| HRP / Pipeline | −103% | −2.45 |
| TIC | −131% | — |
Peringatan keras sebelum Anda menarik kesimpulan apa pun dari ini: angka-angka ini berasal dari satu keranjang selama satu periode waktu, dan keranjang tersebut sengaja dibuat untuk mengandung pemenang dan pecundang yang ekstrem. Ini bukan klaim kinerja dan sama sekali bukan saran — ini adalah demonstrasi divergensi perilaku. Jalankan pada aset Anda sendiri dan peringkat akan berubah total.
Namun bentuk hasilnya adalah pelajarannya. Metode yang mencari imbal hasil — MVO, RBA, Entropy Pooling, NCO — memusatkan modal ke pemenang dan mencetak imbal hasil positif yang kuat. Metode risk-parity murni — HRP, TIC, MHRP, GHRP — menyebarkan bobot secara merata demi diversifikasi, yang berarti juga memegang aset yang merugi, dan menghasilkan nilai negatif. Tidak ada perilaku yang "salah." Risk parity dibangun untuk bertahan ketika Anda tidak bisa membedakan pemenang dari pecundang di muka; pada keranjang di mana masa depan sengaja dibuat dapat diketahui, ia membayar harga atas kerendahan hatinya. Ketegangan itu — konsentrasi versus diversifikasi, keyakinan versus ketahanan — adalah seluruh bidang dalam satu tabel.
Open source dan langsung pakai
Semuanya terbuka: dua belas crate algoritma Rust sebagai git submodule, backend HTTP Axum yang mendistribusikan semuanya, dan frontend Next.js dengan grafik efficient frontier interaktif dan tabel perbandingan berdampingan. Anda bisa:
- mencoba langsung di portfolio-optimizer.marketmaker.cc — pilih aset, rentang tanggal, dan algoritma, lalu saksikan bobot dan frontier diperbarui;
- buka tab Compare Methods untuk menjalankan semua dua belas pada harga yang identik sekaligus;
- bergantung pada satu crate saja (
portfolio-hrp,portfolio-nco, …) di proyek Rust Anda sendiri.
Kesimpulan
- Tidak ada optimizer universal terbaik. Pilihan yang tepat bergantung pada seberapa besar kepercayaan Anda terhadap estimasi imbal hasil Anda. Percaya → MVO/Black-Litterman. Tidak percaya → HRP dan kawan-kawan.
- MVO adalah optimal sekaligus rapuh. Ia mendefinisikan efficient frontier tetapi memaksimalkan kesalahan estimasi. Perlakukan bobotnya dengan kecurigaan kecuali input Anda benar-benar dapat diandalkan.
- Metode hierarkis menukar puncak kinerja untuk stabilitas. Mereka jarang memuncaki satu backtest tetapi juga jarang meledak — itulah yang sebenarnya penting ketika masa depan tidak diketahui.
- Antarmuka yang seragam adalah kekuatan super. Begitu setiap algoritma adalah
prices -> weights, membandingkannya secara jujur tidak memerlukan biaya apa pun, dan penggantian tidak diperlukan biaya sama sekali.
Cara terbaik untuk memahami dua belas algoritma adalah dengan menyaksikan mereka berdebat. Pergi jalankan perbandingan pada aset yang benar-benar Anda pedulikan.
Referensi
- Markowitz, H. (1952). Portfolio Selection. The Journal of Finance.
- López de Prado, M. (2016). Building Diversified Portfolios that Outperform Out of Sample. The Journal of Portfolio Management.
- López de Prado, M. (2020). Machine Learning for Asset Managers. Cambridge University Press.
- Black, F., & Litterman, R. (1992). Global Portfolio Optimization. Financial Analysts Journal.
- Meucci, A. (2008). Fully Flexible Views: Theory and Practice. Risk.
- Marketmaker.cc: marketmaker.cc
Sitasi
@article{soloviov2026portfoliooptimization,
author = {Soloviov, Eugen and Zhuravleva, Marina and Kiselev, Kirill},
title = {12 Portfolio Optimization Algorithms, Compared: HRP, Black-Litterman, NCO and Beyond},
year = {2026},
url = {https://marketmaker.cc/id/blog/post/portfolio-optimization-algorithms-compared},
description = {Tinjauan dua belas algoritma alokasi portofolio — MVO, keluarga hierarkis (HRP, HERC, GHRP, MHRP), Black-Litterman, NCO, Entropy Pooling, OLPS, RBA, TIC, dan sebuah pipeline komposit — di balik satu antarmuka Rust, dengan perbandingan berdampingan yang jujur pada keranjang kripto campuran.}
}
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.
Financial mathematics
Fifth-year student at Bauman Moscow State Technical University (Automatic Control Systems), specializing in financial mathematics. Background in calibrating stochastic-volatility (Heston) and local-volatility (Dupire) models, fair pricing of options including exotics via both Monte-Carlo and analytic formulas, hedging-error reduction, and exposure to LSV models.
Portfolio optimization
Fourth-year student at the Faculty of Mechanics and Mathematics, Novosibirsk State University (NSU); thesis on Heston-model calibration and delta-hedging within the same model. Works on portfolio optimization.