Langsung ke konten
Semua strategi

Strategi

BTC COIN-M US-Sesi Momentum-Kelanjutan Musiman, Long-Short (Satu Instrumen BTCUSD_PERP.BINANCE_CM, Candle 1 jam Hanya OHLCV, Masuk Mengikuti Arah Impulse Sesi Awal-US yang Signifikan dan Ikuti Kelanjutan Intrahari hingga Penutupan Sesi, 3-Parameter)

Hasil: Ditinggalkan

BtcCmInverseUsSessionMomentumContinuationLS

Gerbang backtest: - metrik tidak andal: 648 perdagangan / 1409 hari data terlalu sedikit sebagai bukti (diperlukan >=5 perdagangan selama >=10 hari) — tingkatkan frekuensi sinyal atau lebarkan window

Hipotesis

Strategi LONG-SHORT satu instrumen berbasis kalender/musiman pada perpetual inverse Binance COIN-M BTCUSD_PERP.BINANCE_CM (bermargin BTC, taker pulang-pergi ~0.06%, hanya OHLCV — satu leg, sehingga menghindari jebakan multi-leg/pendanaan COIN-M data_unavailable di L20/L34; candle perpetual BTC CM memiliki riwayat katalog lengkap). Keunggulannya adalah NOT mean-reversion, NOT breakout rentang, NOT pendanaan, NOT likuidasi, dan NOT lintas aset — ini anomali intraday TIME-OF-DAY: dorongan arah yang terbentuk saat……Tampilkan lebih banyakTampilkan lebih sedikit

Strategi LONG-SHORT satu instrumen berbasis kalender/musiman pada perpetual inverse Binance COIN-M BTCUSD_PERP.BINANCE_CM (bermargin BTC, taker pulang-pergi ~0.06%, hanya OHLCV — satu leg, sehingga menghindari jebakan multi-leg/pendanaan COIN-M data_unavailable di L20/L34; candle perpetual BTC CM memiliki riwayat katalog lengkap). Keunggulannya adalah NOT mean-reversion, NOT breakout rentang, NOT pendanaan, NOT likuidasi, dan NOT lintas aset — ini anomali intraday TIME-OF-DAY: dorongan arah yang terbentuk saat pembukaan desk US cenderung PERSIST sepanjang sesi US. Mekanisme: setiap hari, ukur imbal hasil BTC selama jendela sinyal tetap pada awal sesi US (13:00->15:00 UTC). Jika |imbal hasil jendela| melampaui ambang masuk (dorongan arah baru yang signifikan, bukan derau), masuk pada penutupan candle 15:00 UTC ke arah SAME, lalu tahan posisi mengikuti kelanjutan hingga jam keluar saat penutupan sesi (21:00 UTC), maksimal satu posisi per hari. Strategi ini sengaja diarahkan ke COIN-M karena dua alasan: (1) batas bawah biaya 0.10% ~CM lebih rendah daripada batas bawah 0.15% USD-M, sehingga kelanjutan intraday yang moderat memiliki ruang lebih besar untuk menutup biaya; (2) BINANCE_CM kurang terwakili (3.4% dibanding target >=5%) dan ini adalah penggunaan BTC-OHLCV CM satu leg yang diizinkan per L20. Hanya 3 parameter (panjang jendela sinyal, ambang masuk, kelipatan ATR-stop) untuk menghindari kegagalan akibat overfit yang menggugurkan hipotesis sebelumnya 248.

Mulai ulang iterasi. Umpan balik menyatakan bahwa penghentian sebelumnya merupakan akibat pipeline (kesalahan pengikatan staticmethod Layer-2, verdict kinerja QA berdasarkan uji singkat yang belum dioptimalkan, kelangkaan slot backtest), sehingga mekanismenya sengaja tidak diubah: acuan -13:00-UTC yang sama-sama dicatat, entri dengan arah kelanjutan yang sama, keluar berdasarkan kalender yang sama, ukuran kontrak penuh COIN-M yang sama, serta tiga parameter yang dapat diatur dan batas yang sama. Karena pengiriman……Tampilkan lebih banyakTampilkan lebih sedikit

Mulai ulang iterasi. Umpan balik menyatakan bahwa penghentian sebelumnya merupakan akibat pipeline (kesalahan pengikatan staticmethod Layer-2, verdict kinerja QA berdasarkan uji singkat yang belum dioptimalkan, kelangkaan slot backtest), sehingga mekanismenya sengaja tidak diubah: acuan -13:00-UTC yang sama-sama dicatat, entri dengan arah kelanjutan yang sama, keluar berdasarkan kalender yang sama, ukuran kontrak penuh COIN-M yang sama, serta tiga parameter yang dapat diatur dan batas yang sama. Karena pengiriman ulang kode yang identik byte demi byte gagal dalam pemeriksaan hash yang tidak berubah, saya membuat satu perubahan substantif pada bagian kode yang memang paling lemah: stop protektif ATR kini diuji terhadap LOW/HIGH candle, bukan hanya CLOSE. Pada candle 1 jam, stop yang hanya diperiksa saat penutupan tidak pernah terpicu pada candle yang menembus level lalu ditutup kembali di dalamnya, sehingga sesi yang merugi dapat mengalami pergerakan ekstrem tanpa batas sampai keluar kalender 21:00 — stop adalah satu-satunya hal yang membatasi risiko tersebut, dan meremehkannya persis merupakan kegagalan stop pada penutupan candle yang diperingatkan oleh aturan pengodean. Pemicu terjadi secara intrabar; keluar tetap dieksekusi saat penutupan candle melalui perintah keluar pasar pada templat dasar, sehingga tidak ada asumsi harga eksekusi intrabar. Saya juga mendeklarasikan _param_bounds untuk tiga parameter berbatas (signal_window_hours [1,5], entry_threshold [0.002,0.02], atr_stop_mult [1.0,4.0]) agar optimizer tidak mencari nilai yang diam-diam diubah oleh kode — docstring sebelumnya sudah menyatakan batas-batas ini akan dicerminkan. Pemeriksaan terhadap katalog untuk jendela sandbox (BTCUSD_PERP.BINANCE_CM candle berdurasi 1 jam, sekitar 830 hari terakhir): impulse 13:00->15:00 UTC melewati ambang 0.6% pada 296 dari 726 hari, jadi entri cukup sering dan proses tidak akan kekurangan perdagangan; median impulse absolut adalah 0.46%, jauh di atas biaya pulang-pergi ~0.10% CM yang harus ditutup oleh kelanjutan.

Ekspektasi negatif pada sampel 748 perdagangan / 6.1 tahun yang andal: avg_trade_return_pct adalah -0.109% (di bawah nol, bahkan sebelum biaya pulang-pergi ~0.10% CM berlaku), profit_factor 0.84, Sharpe -0.81, akun terlikuidasi hingga -100%. Build menerapkan hipotesis dengan setia dan pipeline entri berfungsi baik, jadi ini adalah verdict pasar: impulse pada sesi awal-US menentukan arah, tetapi kelanjutan intrahari yang terealisasi bernilai neto negatif dalam setiap rezim volatilitas dan hampir setiap tahun. Optimisasi tidak dapat meningkatkan edge yang sudah di bawah nol sebelum biaya; ketiga parameter (window, ambang, stop ATR) tidak memiliki rentang yang mengubah premi kelanjutan negatif menjadi positif. Kekhawatiran QA mengenai edge terbukti pada riwayat penuh. abandon_class=negative_expectancy.

Implementasi

Strategi musiman intrahari long-short berdasarkan waktu dalam sehari pada perpetual inverse BTC COIN-M (BTCUSD_PERP.BINANCE_CM, candle 1 jam, hanya OHLCV). Setiap hari UTC, harga penutupan candle yang berakhir pada 13:00 UTC dicatat sebagai acuan sesi-US; dua jam kemudian (candle yang berakhir pada 15:00 UTC), impulse sesi awal-US diukur sebagai penutupan/acuan - 1. Jika besarannya melewati entry_threshold (default 0.6%), strategi masuk mengikuti arah SAME — long pada impulse naik, short pada impulse turun —……Tampilkan lebih banyakTampilkan lebih sedikit

Strategi musiman intrahari long-short berdasarkan waktu dalam sehari pada perpetual inverse BTC COIN-M (BTCUSD_PERP.BINANCE_CM, candle 1 jam, hanya OHLCV). Setiap hari UTC, harga penutupan candle yang berakhir pada 13:00 UTC dicatat sebagai acuan sesi-US; dua jam kemudian (candle yang berakhir pada 15:00 UTC), impulse sesi awal-US diukur sebagai penutupan/acuan - 1. Jika besarannya melewati entry_threshold (default 0.6%), strategi masuk mengikuti arah SAME — long pada impulse naik, short pada impulse turun — untuk mengikuti kelanjutan intrahari, paling banyak satu entri per hari UTC. Keluar pada penutupan sesi US (candle yang berakhir pada 21:00 UTC), stop tetap atr_stop_mult x ATR dari harga entri yang kini diuji secara intrabar terhadap low/high candle, atau batas pengaman max_hold_bars jika candle 21:00 tidak tersedia. Ukuran posisi sesuai untuk kontrak inverse: risk_pct ekuitas dibagi fraksi stop menghasilkan nilai nosional USD, dibatasi hingga max_gross_frac ekuitas, dikonversi menjadi WHOLE kontrak $100 melalui contracts_for_notional (tidak pernah menggunakan rumus linear ekuitas/harga). Tiga parameter yang dapat diatur: signal_window_hours, entry_threshold, atr_stop_mult.

Hasil Verifikasi

CLEAN RESTART 2026-09-04 — riwayat putusan dan catatan pembelajaran untuk proses ini telah dihapus, lalu proses dimulai ulang dari tahap verifikasi. Penghentian sebelumnya disebabkan oleh pipeline, bukan pasar: harness Layer-2 salah mengikat helper @staticmethod (telah diperbaiki), QA mengeluarkan putusan kinerja final berdasarkan uji asap yang belum dioptimalkan (dihapus — QA kini hanya menilai kebenaran), dan batas waktu sandbox terjadi akibat kelangkaan slot backtest (telah diperbaiki). Hipotesis dan kode strategi tidak berubah. Verifikasi kode berdasarkan kelayakannya; kinerja akan diputuskan kemudian melalui backtest penuh dan optimizer.

Tidak perlu perubahan kode; catat inkonsistensi field metrik untuk analis.

avg_holding_bars dilaporkan sebagai 0.0, sedangkan avg_holding_period adalah '5h 13m' — ini kejanggalan pelaporan metrik, bukan kesalahan kode. Logika penahanan itu sendiri (masuk pada candle penutupan 15:00, keluar pada candle penutupan 21:00 atau saat stop ATR intrabar, horizon ~6 candle) benar dan konsisten dengan rata-rata 5h13m.

Sebagai opsi, tambahkan pemeriksaan posisi kosong secara eksplisit di should_enter() untuk berjaga-jaga; perilaku saat ini sudah benar karena templat dasar menekan entri.

should_enter() tidak secara langsung memeriksa apakah posisi sedang kosong; fungsi ini mengandalkan templat dasar untuk menekan entri saat posisi masih terbuka. Karena candle entri (jam ts 14) terjadi sekali per hari UTC dan penahanan berlangsung hingga keluar 21:00 pada hari yang sama, hanya ada satu peluang entri per hari, sehingga dalam praktiknya ketentuan 'maksimal satu posisi per hari' terpenuhi — tetapi jaminannya tersirat dalam templat dasar, bukan dinyatakan secara eksplisit di sini.

Sandbox yang belum dioptimalkan bernilai negatif: total_return -22%, Sharpe -0.55, avg_trade_return_pct -0.139% (di bawah nol, bukan sekadar di bawah batas minimum biaya), profit_factor 0.79, dan komisi sebesar 19.16% dari bruto pada 296 perdagangan intrahari. Ini pola klasik 'edge kelanjutan intrahari tidak menutup biaya pulang-pergi' — impulse sinyal 0.6% menyaring entri, tetapi tidak menjelaskan pergerakan kelanjutan yang terealisasi, dan di sini imbal hasil kelanjutan per perdagangan bernilai neto negatif……Tampilkan lebih banyakTampilkan lebih sedikit

Sandbox yang belum dioptimalkan bernilai negatif: total_return -22%, Sharpe -0.55, avg_trade_return_pct -0.139% (di bawah nol, bukan sekadar di bawah batas minimum biaya), profit_factor 0.79, dan komisi sebesar 19.16% dari bruto pada 296 perdagangan intrahari. Ini pola klasik 'edge kelanjutan intrahari tidak menutup biaya pulang-pergi' — impulse sinyal 0.6% menyaring entri, tetapi tidak menjelaskan pergerakan kelanjutan yang terealisasi, dan di sini imbal hasil kelanjutan per perdagangan bernilai neto negatif setelah biaya ~0.06-0.10% CM ditambah turnover tinggi. Ini NOT cacat kode (win_rate 0.43, PF 0.79, Sharpe -0.55 adalah angka biasa, bukan pola kesalahan polaritas/ukuran posisi inverse). regime_performance menunjukkan edge hanya muncul pada tercile volatilitas 'normal' (+7.1%, Sharpe 0.54) dan sangat negatif pada kondisi tenang/tertekan. Analis harus memverifikasi dengan riwayat penuh apakah ada rentang parameter (entry_threshold, signal_window_hours) yang menghasilkan imbal hasil kelanjutan per perdagangan yang jelas menutup biaya pulang-pergi CM; jika tidak, premis kelanjutan berdasarkan waktu dalam sehari tidak didukung. Ini bersifat saran dan tidak menghambat.

Tinjauan Backtest

Sharpe
-0.81
Total Return
-100.00%
Max Drawdown
100.00%
Total Trade
748
Rasio Menang
42.2%
Faktor Profit
0.84

Implementasi setia: perdagangan sesuai dengan mekanisme kelanjutan sesi-US long-short yang dihipotesiskan (748 perdagangan, ~373 long / 375 short, satu entri/hari, window sinyal 13:00->15:00 / keluar 21:00 yang benar).

Sampel besar yang andal selama 6.1 tahun (50,537 candle) — hasilnya bermakna secara statistik, bukan noise.

Pipeline entri berfungsi baik (875 sinyal = 875 pengajuan, tanpa posisi berukuran nol / nilai nosional minimum / penolakan kas), jadi ini verdict pasar, bukan cacat kode.

Ekspektasi negatif: avg_trade_return_pct -0.109% adalah BELOW ZERO, bukan sekadar di bawah batas minimum biaya 0.10% CM — pergerakan kelanjutan intrahari bernilai neto negatif bahkan sebelum biaya diperhitungkan.

profit_factor 0.84 (<1), win_rate 0.42, ekspektasi -$42.64/perdagangan, Sharpe -0.81, Sortino -0.74.

Akun terlikuidasi (total_return -100%, max_drawdown 100%) pada 2025-05-18.

Merugi pada setiap rezim volatilitas (tenang -53%, normal -100%, tertekan -16%) dan setiap tahun kalender kecuali 2022 — tidak ada rentang parameter yang menunjukkan edge persisten.

Komisi 16.66% dari bruto mengonfirmasi pola klasik 'edge tidak menutup biaya pulang-pergi' yang ditandai QA; ambang impulse menyaring entri, tetapi tidak menjelaskan kelanjutan yang terealisasi, yang bernilai neto negatif.

Analisis

Gerbang backtest: - metrik tidak andal: 648 perdagangan / 1409 hari data terlalu sedikit sebagai bukti (diperlukan >=5 perdagangan selama >=10 hari) — tingkatkan frekuensi sinyal atau lebarkan window

Riwayat Iterasi

Verifikasi gagal (Tinjauan Layer 4 — QA) [kelas=premise_falsified]: - Premis momentum-kelanjutan sesi-US terbantahkan: masuk mengikuti arah impulse 13:00-15:00 UTC dan menahan posisi hingga penutupan 21:00 menghasilkan nilai neto LOSER. profit_factor 0.757 (<1), total_return -43.11%, avg_trade_return_pct -0.169% (negatif), ekspektasi -$105, Sharpe -0.145, alpha -0.107, pada 296 perdagangan yang terukur dengan baik. win_rate 0.432 dengan imbal hasil simetris (avg_win $760 ~= avg_loss $765) — impulse awal-US hanya……Tampilkan lebih banyakTampilkan lebih sedikit

Verifikasi gagal (Tinjauan Layer 4 — QA) [kelas=premise_falsified]: - Premis momentum-kelanjutan sesi-US terbantahkan: masuk mengikuti arah impulse 13:00-15:00 UTC dan menahan posisi hingga penutupan 21:00 menghasilkan nilai neto LOSER. profit_factor 0.757 (<1), total_return -43.11%, avg_trade_return_pct -0.169% (negatif), ekspektasi -$105, Sharpe -0.145, alpha -0.107, pada 296 perdagangan yang terukur dengan baik. win_rate 0.432 dengan imbal hasil simetris (avg_win $760 ~= avg_loss $765) — impulse awal-US hanya berlanjut sekitar 43% sepanjang waktu, jadi efek yang berusaha dimanfaatkan strategi tidak muncul (sedikit berbalik arah), dan setelah biaya pulang-pergi ~0.10% CM pada penahanan ~6 jam, strategi merugi. Leverage 2.0 memperbesar dampaknya hingga penurunan 61.7% (CI menjadi 90%). Arah diimplementasikan dengan benar (kelanjutan sesuai spesifikasi; tidak ada kesalahan polaritas/urutan), jadi implementasi ini setia, tetapi premis musimannya terbantahkan oleh data. - Leverage 2.0 dengan ~87% avg_position mengubah taruhan sesi tanpa edge menjadi penurunan 61.7% (CI menjadi 90.2%) dan end_unrealized -11.9% — menambah risiko dengan ekspektasi negatif.

Stratmill adalah alat riset dan paper trading, bukan nasihat keuangan atau broker. Hasil backtest dan paper trading bersifat hipotetis. Trading mengandung risiko kerugian.