Cara mengesahkan rekod dagangan AI yang boleh dipercayai
Ketahui enam bukti penting untuk mengesahkan rekod dagangan AI secara objektif. Satu suku tahun hasil dagangan tidak membuktikan apa-apa tanpa data pasaran yang telus.
Rekod dagangan AI boleh disahkan apabila orang asing boleh membina semula rekod tersebut daripada data yang wujud sebelum hasil dagangan diketahui. Sangat sedikit rekod yang diterbitkan dalam talian memenuhi kriteria ini. Berikut adalah senarai semak yang boleh digunakan oleh pembaca dalam masa kira-kira dua minit, dengan data pasaran yang menyokong empat daripada item tersebut: penanda aras (benchmark), cap masa (timestamps), kos dagangan, dan tempoh sampel.
Apakah yang menjadikan rekod dagangan AI boleh disahkan?
Enam sifat. Setiap satu adalah perkara yang boleh anda periksa dan bukannya sekadar penilaian subjektif.
- Entri diterbitkan sebelum hasil diketahui. Cap masa mestilah berada di tempat yang tidak boleh diubah oleh penulis, seperti commit yang dihantar pada masa itu atau penyata broker. Fail yang menyenaraikan dagangan lepas hanyalah tuntutan mengenai masa lalu, bukannya rekod sebenar.
- Satu penanda aras, dinamakan pada permulaan dan tidak pernah diubah. "Mengalahkan pasaran" tidak bermakna apa-apa sehingga perbandingan dipautkan kepada dana tertentu dalam tempoh masa tertentu.
- Kos dimasukkan dalam angka yang dilaporkan. Komisen, yuran kawal selia, kos pinjaman bagi posisi short, dan spread yang dibayar pada entri serta keluar.
- Runbook yang mempunyai versi dan bukannya disunting. Apabila repositori awam menyokong rekod tersebut, pautan yang berguna harus menghala kepada tagged release atau commit hash. Pautan kepada cawangan lalai (default branch) menunjukkan strategi hari ini, yang mungkin bukan strategi yang didagangkan pada bulan Mac.
- Setiap posisi dan setiap akaun, termasuk yang rugi. Menerbitkan satu akaun daripada lima akaun yang berjalan adalah satu bentuk pemilihan (selection bias).
- **Modal permulaan yang cukup besar untuk menjadikan pengisian pesanan (fills) munasabah.** Modal beberapa ratus dolar tidak boleh "memegang" posisi yang tidak akan diisi oleh pesanan sebenar pada harga yang dicetak.
Rekod yang kehilangan salah satu daripada perkara ini tidak semestinya tidak jujur. Ia tidak boleh disahkan, yang lebih kerap berlaku dan sama tidak gunanya kepada pembaca.
Mengapa penanda aras perlu dinamakan lebih awal
Penanda aras yang dipilih selepas keputusan diketahui adalah kelebihan paling murah dalam kewangan. Enam dana indeks AS yang luas, enam bulan yang sama pada tahun 2026, perubahan harga sahaja:
SQL tepat di sebalik setiap nombor
WITH rets AS (
SELECT ticker,
round(100 * (toFloat64(argMax(close, window_start))
/ toFloat64(argMin(close, window_start)) - 1), 2) AS return_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'IWM', 'DIA', 'RSP', 'MDY')
AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-02')
AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30')
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY ticker
)
SELECT ticker,
return_pct,
round(return_pct - min(return_pct) OVER (), 2) AS points_above_worst
FROM rets
ORDER BY return_pct DESCIWM mencatatkan pulangan 21.12% dan DIA mencatatkan 8.42%, meninggalkan 12.7 mata antara yang tertinggi dan terendah dalam 6 sepanjang tempoh yang sama. Memilih dana mana untuk diukur selepas tempoh tersebut berakhir memberikan kelebihan sebanyak jurang tersebut, dan tiada strategi yang perlu dilakukan untuk mendapatkannya. Ini adalah pulangan harga sebelum dividen, peraturan pengukuran kedua yang perlu dinyatakan di awal (cara pulangan bulanan diukur merangkumi aritmetik jumlah pulangan).
Mengapa cap masa entri adalah segala-galanya
Entri yang muncul selepas pergerakan harga adalah sekadar penerangan tentang carta. Jarak yang dilalui pasaran dalam satu sesi adalah cukup luas sehingga perbezaan antara "dihantar pada 09:35" dan "dihantar pada 15:55" mengatasi kebanyakan kelebihan yang didakwa. Berikut adalah jarak tersebut, diukur daripada cetakan pertama setiap sesi, sepanjang separuh pertama tahun 2026:
SQL tepat di sebalik setiap nombor
WITH minute_px AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
toTimeZone(window_start, 'America/New_York') AS et,
toFloat64(close) AS px
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-02')
AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30')
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
),
opens AS (
SELECT session_date, argMin(px, et) AS open_px
FROM minute_px
GROUP BY session_date
),
buckets AS (
SELECT session_date,
toStartOfInterval(et, INTERVAL 30 MINUTE) AS bucket,
argMax(px, et) AS bucket_px
FROM minute_px
GROUP BY session_date, bucket
)
SELECT formatDateTime(b.bucket, '%H:%i') AS et_time,
count() AS session_count,
round(quantileDeterministic(0.5)(abs(100 * (b.bucket_px / o.open_px - 1)),
cityHash64(b.session_date)), 3) AS median_abs_move_pct
FROM buckets AS b
INNER JOIN opens AS o ON b.session_date = o.session_date
GROUP BY et_time
ORDER BY et_timeDalam baldi 09:30 ET, sesi median berakhir 0.216% daripada cetakan pembukaannya. Dalam baldi 15:30, jarak median adalah 0.415%. Apa sahaja yang diketahui oleh ejen pada waktu pembukaan tidak merangkumi hampir semua pergerakan tersebut. Sejarah commit atau suapan awam bertarikh membawa bukti urutan (laporan pasaran harian AI bergantung pada sifat yang sama). Tangkapan skrin lengkung ekuiti tidak membawa bukti tersebut.
Apa yang perlu ada dalam angka tersebut
Pulangan kasar menggambarkan portfolio yang tidak mungkin dimiliki oleh sesiapa pun. Setiap entri dan keluar merentasi bid-ask spread, iaitu jurang antara harga terbaik untuk membeli dan harga terbaik untuk menjual, dan jurang itu tidak sama pada setiap aset:
SQL tepat di sebalik setiap nombor
SELECT ticker,
round(quantileDeterministic(0.5)(20000 * (toFloat64(ask_price) - toFloat64(bid_price))
/ (toFloat64(ask_price) + toFloat64(bid_price)),
cityHash64(sip_timestamp)), 2) AS median_spread_bps,
round(25000 * quantileDeterministic(0.5)(2 * (toFloat64(ask_price) - toFloat64(bid_price))
/ (toFloat64(ask_price) + toFloat64(bid_price)),
cityHash64(sip_timestamp)), 2) AS round_trip_cost_per_25k_usd
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'KO', 'MSTR')
AND sip_timestamp >= toDateTime('2026-07-15 15:00:00')
AND sip_timestamp < toDateTime('2026-07-15 16:00:00')
AND bid_price > 1
AND ask_price > bid_price
GROUP BY ticker
ORDER BY median_spread_bps DESCSepanjang satu jam tengah hari itu, spread sebut harga median adalah 10.08 mata asas pada MSTR berbanding 0.27 pada SPY. Satu mata asas adalah satu peratus daripada satu peratus. Pada posisi $25,000, merentasi spread itu sekali bagi setiap arah menelan kos $25.2 pada hujung senarai yang luas dan $0.66 pada hujung yang ketat, sebelum komisen. Buku yang berpusing sepenuhnya sekali seminggu membayar tol itu kira-kira lima puluh kali setahun, dan rekod yang mengabaikannya secara senyap telah mengkreditkan dolar tersebut kepada dirinya sendiri (kos dagangan saham memperincikan baki bil tersebut).
Berapa lama sebelum keputusan dagangan langsung bermakna?
Suku tahun dagangan langsung adalah satu cabutan daripada taburan yang luas, dan lebarnya boleh diukur. Setiap tempoh bertindih dengan panjang tertentu sejak Januari 2015 untuk SPY, dana penjejak S&P 500 yang terbesar, disusun mengikut persentil:
SQL tepat di sebalik setiap nombor
WITH daily AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
toFloat64(argMax(close, window_start)) AS close_px
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2015-01-02')
AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30')
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY session_date
),
series AS (
SELECT groupArray(close_px) AS px
FROM (SELECT close_px FROM daily ORDER BY session_date)
),
horizons AS (
SELECT arrayJoin([21, 63, 126, 252]) AS sessions, px
FROM series
),
windows AS (
SELECT sessions,
arrayJoin(arrayMap(i -> (i, 100 * (px[i + sessions] / px[i] - 1)),
range(1, length(px) - sessions + 1))) AS w
FROM horizons
),
measured AS (
SELECT sessions,
w.1 AS window_index,
w.2 AS window_return_pct
FROM windows
)
SELECT multiIf(sessions = 21, '1 month',
sessions = 63, '3 months',
sessions = 126, '6 months',
'12 months') AS holding_period,
count() AS window_count,
round(quantileDeterministic(0.05)(window_return_pct,
cityHash64(window_index * 1000 + sessions)), 1) AS p05_return_pct,
round(quantileDeterministic(0.50)(window_return_pct,
cityHash64(window_index * 1000 + sessions)), 1) AS median_return_pct,
round(quantileDeterministic(0.95)(window_return_pct,
cityHash64(window_index * 1000 + sessions)), 1) AS p95_return_pct,
round(quantileDeterministic(0.95)(window_return_pct,
cityHash64(window_index * 1000 + sessions))
- quantileDeterministic(0.05)(window_return_pct,
cityHash64(window_index * 1000 + sessions)), 1) AS spread_pct,
round(stddevSamp(window_return_pct), 1) AS stdev_pct
FROM measured
GROUP BY sessions
ORDER BY sessionsMerentasi 2826 tempoh tiga bulan yang bertindih, hasil median daripada memegang dan tidak melakukan apa-apa adalah 3.9%, dengan persentil ke-5 pada -8.8% dan ke-95 pada 12.2%, satu jalur selebar 21.1 mata. Sebarang keputusan suku tahunan tunggal dalam jalur itu adalah konsisten dengan memiliki indeks dan bercuti. Lancarkan dua puluh ejen, jalankan selama satu suku tahun, terbitkan yang terbaik, dan angka yang dipaparkan datang daripada bahagian atas jalur seperti itu secara reka bentuk.
Aritmetik mengenai panjang sampel adalah kejam. Hasil dua belas bulan dalam siri yang sama membawa sisihan piawai sebanyak 13.6 mata. Membezakan kelebihan sebenar daripada hingar (noise) memerlukan kira-kira (2 × variasi ÷ kelebihan)² tahun keputusan langsung. Pada tahap variasi itu, kelebihan hipotesis 3 mata setahun memerlukan banyak dekad, malah kelebihan 10 mata pun memerlukan tahun dan bukannya bulan. Tempoh di atas bertindih, jadi 2826 mengira tempoh, bukan sampel bebas.
Adakah wang sebenar sebanyak $25,000 menyelesaikannya?
Wang sebenar meningkatkan bukti dalam satu cara khusus. Paper trading diisi pada harga yang tidak dipersetujui oleh pihak lawan dan tidak pernah mempunyai pesanan yang ditolak. Akaun $25,000 yang dibiayai diisi berdasarkan sebut harga langsung dan membayar komisen sebenar, pada penyata yang boleh diaudit oleh pihak ketiga, dan saiz posisi adalah cukup besar sehingga pengisian adalah biasa dan bukannya imaginasi.
Ia tidak menyentuh masalah sampel. Dua puluh lima ribu dolar yang didagangkan selama empat bulan masih merupakan satu cabutan daripada taburan di atas, dan akaun langsung boleh ditutup selepas penurunan (drawdown) dan dibuka semula dengan rekod bermula dari awal. Saiz menjadikan pengisian jujur. Hanya masa menjadikan keputusan bermaklumat.
Empat mod kegagalan untuk dikenali
- Backtest yang menyamar sebagai rekod dagangan. Keputusan simulasi ke atas data lepas adalah hipotesis tentang masa lalu. Look-ahead bias menunjukkan bagaimana simulasi menyerap maklumat yang tidak mungkin diketahui oleh strategi pada masa itu, dan petanda paling jelas ialah lengkung ekuiti yang bermula bertahun-tahun sebelum kod tersebut wujud.
- Hanya yang terselamat di pentas. Sepuluh ejen dilancarkan, satu diterbitkan. Sistem dagangan AI berbilang ejen memudahkan perkara ini berlaku secara tidak sengaja, kerana rangka kerja yang menjalankan sepuluh varian juga memilih yang mana satu untuk ditulis.
- Permulaan semula. Penurunan, jeda, akaun baharu, lengkung yang bermula pada tarikh permulaan semula. Soalan yang menyelesaikannya: tunjukkan lengkung ekuiti daripada dolar pertama akaun pertama.
- Runbook yang ditulis semula. Prompt dan had posisi disunting antara dagangan dan penulisan. Faktor alfa yang dijana LLM boleh dihasilkan beribu-ribu, jadi peraturan pemilihan perlu diterbitkan sebelum pemilihan, atau rekod tersebut menjadi cerita tentang faktor mana yang kebetulan berjaya.
Soalan Lazim
Bolehkah rekod dagangan AI disahkan?
Ya, apabila entri diterbitkan sebelum hasilnya diketahui, penanda aras ditetapkan lebih awal, kos dimasukkan dalam angka, dan setiap akaun ditunjukkan. Pemeriksaan ini bersifat mekanikal dan mengambil masa beberapa minit. Kebanyakan rekod yang diterbitkan gagal pada item pertama.
Berapa lama rekod dagangan AI langsung perlu berjalan?
Lebih lama daripada hampir mana-mana rekod yang diterbitkan. Hasil dua belas bulan untuk indeks membawa sisihan piawai sebanyak 13.6 mata sepanjang tempoh yang diukur di sini, jadi memisahkan kelebihan sederhana daripada nasib pada tahap keyakinan konvensional memerlukan masa bertahun-tahun sekurang-kurangnya dan berdekad-dekad untuk kelebihan yang kecil.
Adakah $25,000 cukup untuk menjadikan keputusan portfolio AI bermakna?
Ia cukup untuk menjadikan pengisian sebenar: sebut harga langsung, komisen sebenar, penyata yang boleh diaudit. Ia tidak cukup untuk menjadikan keputusan beberapa bulan bermakna secara statistik, yang merupakan persoalan masa yang berlalu dan bukannya saiz akaun.
Apakah perbezaan antara backtest dan rekod dagangan?
Backtest menggunakan peraturan pada data yang sudah wujud. Rekod dagangan adalah siri keputusan yang diterbitkan sebelum hasilnya. Hanya yang kedua boleh dipalsukan oleh apa yang berlaku seterusnya, itulah yang menjadikannya bukti.
Mengapa pemilihan penanda aras sangat penting?
Sepanjang separuh pertama tahun 2026, enam dana indeks di atas berakhir dengan perbezaan 12.7 mata berdasarkan harga sahaja. Penanda aras yang dipilih selepas tempoh berakhir boleh memberikan margin tersebut tanpa melibatkan sebarang strategi.
Setiap angka pada halaman ini adalah pertanyaan tersimpan ke atas data pasaran, dan SQL terletak di bawah setiap panel. Halakan tempoh yang sama pada tarikh anda sendiri di terminal Strasmore.