18 Oktober 2026 · riset

Bagaimana cara melakukan backtest strategi yang berdagang berdasarkan sinyal harian?

Bagaimana cara melakukan backtest strategi yang berdagang berdasarkan sinyal harian?

Strategi harian yang menghitung sinyal dari harga penutupan hari Senin tidak dapat memasang order pada harga penutupan hari Senin. Strategi itu dapat mengirim order setelah harga tersebut diketahui, lalu berdagang pada harga berikutnya yang bisa dieksekusi. Pilihan waktu kecil ini dapat mengubah hasil lebih besar daripada indikator yang canggih.

Untuk backtest harian, catat urutannya sebelum menulis sinyal: kapan candle selesai, kapan strategi menghitung sinyal, kapan order mencapai pasar, dan pada harga berapa order mungkin dieksekusi. Jika semua peristiwa itu terjadi pada saat yang sama, backtest telah melewatkan bagian tersulitnya.

Bisakah saya menggunakan harga penutupan hari ini untuk berdagang pada penutupan hari ini?

Biasanya, tidak. Sinyal yang bergantung pada harga penutupan final baru tersedia setelah lelang penutupan atau transaksi terakhir terjadi. Eksekusi pada harga yang sama mengasumsikan strategi mengetahui hasilnya cukup awal untuk berpartisipasi pada harga yang turut menentukan hasil tersebut.

Ambil aturan sederhana: beli ketika harga penutupan berada di atas moving average 20 hari. Pada penutupan hari Senin, aturan itu menjadi benar. Backtest yang membeli pada harga penutupan hari Senin telah menggunakan harga final hari Senin untuk mengambil keputusan sekaligus mengeksekusi order. Untuk model candle harian dasar, pendekatan yang jujur adalah membuat order setelah candle hari Senin selesai dan mengeksekusinya paling cepat pada harga pembukaan hari Selasa, dengan biaya yang sesuai.

Ada strategi yang mengirim order dalam lelang penutupan dengan menggunakan informasi yang tersedia sebelum batas waktu lelang. Strategi seperti itu dapat di-backtest, tetapi sinyalnya hanya boleh menggunakan data sebelum batas waktu, dan eksekusinya perlu mencerminkan proses lelang. Sebutan “sinyal harian” saja tidak memastikan kedua hal tersebut.

Harga eksekusi apa yang tepat untuk backtest harian?

Tidak ada satu harga yang selalu tepat. Harga pembukaan sesi berikutnya merupakan asumsi awal yang jelas ketika sinyal dibentuk dari candle harian yang sudah selesai dan order dikirim setelahnya. Namun, itu bukan jaminan: gap semalam dapat menggerakkan pasar, dan market order akan terkena spread, biaya, dan kemungkinan dampak pasar.

Untuk sinyal hari Senin di atas, anggap harga penutupan hari Senin adalah $100 dan harga pembukaan hari Selasa $103. Backtest dari penutupan ke penutupan mungkin menunjukkan keuntungan kecil jika berpura-pura membeli pada harga $100. Entri pada harga pembukaan berikutnya dimulai dari $103. Selisih $3 itu bukan “slippage” yang bisa dihilangkan lewat penyesuaian; itu konsekuensi harga karena sinyal baru diketahui setelah penutupan hari Senin.

Sinyal mulai tersedia Kandidat waktu eksekusi Asumsi model
Setelah penutupan harian Pembukaan sesi berikutnya Order dapat mencapai pasar sebelum atau saat pembukaan
Sebelum batas waktu lelang penutupan Lelang penutupan Sinyal hanya menggunakan informasi sebelum batas waktu; eksekusi lelang dimodelkan
Setelah penutupan harian Harga intrahari yang lebih belakangan Strategi menunggu; eksekusi memerlukan data intrahari dan jadwal yang ditentukan

Di pasar kripto, “penutupan harian” merupakan konvensi karena perdagangan terus berlangsung melewati batas waktu. Strategi tetap dapat menggunakan candle harian UTC yang sudah selesai, tetapi harus menunggu hingga candle selesai dan datanya tiba. Jika pipeline data Anda baru memfinalisasi candle beberapa detik kemudian, order pada harga di batas waktu akan sangat sulit dipertahankan asumsi kewajarannya.

Bagaimana sebaiknya saya memodelkan order jika hanya memiliki candle harian?

Jelaskan dengan tegas apa yang dapat dan tidak dapat ditunjukkan oleh candle. OHLCV harian dapat mendukung pendekatan harga pembukaan berikutnya, tetapi tidak dapat menunjukkan spread saat order tiba, pergerakan harga sepanjang hari, atau apakah limit order masuk antrean sebelum harga menyentuhnya.

Untuk market order harian, mulailah dari harga pembukaan berikutnya, lalu kenakan biaya yang benar-benar akan ditanggung strategi: biaya bursa, estimasi spread, dan estimasi dampak pasar yang sesuai dengan ukuran order. Uji biaya tersebut dalam skenario tekanan. Jika hasilnya bergantung pada asumsi spread nol atau dampak yang dapat diabaikan, candle harian belum cukup untuk membenarkan keyakinan itu.

Untuk limit order, harga terendah harian yang menyentuh limit Anda tidak membuktikan bahwa order terisi. Pasar mungkin sudah diperdagangkan pada harga itu sebelum order Anda tiba, atau mungkin ada kuantitas yang lebih besar di antrean depan Anda daripada volume yang diperdagangkan. Candle harian sering kali terlalu kasar untuk mendukung model antrean yang meyakinkan. Gunakan data yang lebih terperinci jika klaim Anda bergantung pada eksekusi intrahari, atau gunakan asumsi eksekusi yang sengaja konservatif dan beri label yang jelas.

Pemeriksaan waktu apa yang dapat mendeteksi lookahead pada candle harian?

Saya suka beberapa pemeriksaan langsung karena cepat mengungkap asumsi:

Pergeseran 1 sesi adalah alat diagnostik, bukan model eksekusi universal. Rebalancing portofolio yang lambat, strategi lelang penutupan, dan sistem kripto yang berdagang terus-menerus memerlukan acuan waktu yang berbeda. Intinya adalah membuat acuan waktu itu terlihat jelas.

Apakah data harian membuat backtest kurang berguna?

Tidak. Data harian bisa sangat sesuai untuk strategi yang keputusan dan periode kepemilikannya diukur dalam hari atau minggu. Data ini berguna untuk menilai apakah suatu aturan umum layak diteliti lebih lanjut. Data harian menjadi menyesatkan ketika backtest mengklaim ketepatan harga eksekusi yang tidak dapat ditunjukkan oleh candle.

Saya pernah melihat beberapa strategi meningkat drastis setelah seseorang mengubah “sinyal saat penutupan, eksekusi saat penutupan” menjadi “sinyal saat penutupan, eksekusi pada pembukaan berikutnya.” Hasilnya mungkin mengecewakan, tetapi tetap berharga: hasil itu memberi tahu Anda apakah gagasan tersebut bertahan setelah bisa diperdagangkan. Simpan kesepakatan waktunya bersama kode strategi. Jika tidak, putaran optimasi berikutnya diam-diam dapat memasukkan kembali asumsi eksekusi yang mustahil itu.

sinyal harianwaktu eksekusibacktestingdata pasar
← Semua artikel