Strasmore Research
Edukasi Matt ConnorOleh Matt Connor

Harga Kontrak Event sebagai Probabilitas

Kontrak event membayar $1 atau $0, sehingga harganya mencerminkan probabilitas. Pahami mengapa Yes plus No lebih dari $1 dan cara menghapus spread.

Harga kontrak event adalah probabilitas yang disertai spread. Kontrak membayar $1.00 jika hasil yang dinyatakan terjadi dan $0.00 jika tidak terjadi. Pembayaran tetap inilah yang membuat perhitungannya berlaku: harga 30 sen untuk kontrak yang membayar satu dolar berarti pasar memperkirakan peluang sekitar 30%. Untuk membaca angka tersebut secara tepat, lakukan satu penyesuaian terhadap spread dan satu penyesuaian terhadap mekanisme penyelesaian di balik settlement.

Apa yang Dikatakan Harga Kontrak Peristiwa tentang Probabilitas

Semuanya berasal dari pembayaran. Beli kontrak Yes pada harga p dan Anda menerima $1,00 jika hasilnya ditetapkan sebagai Yes, serta tidak menerima apa pun jika hasilnya ditetapkan sebagai No. Dalam banyak pengulangan, rata-rata pembayaran sama dengan probabilitas sebenarnya dari Yes. Jika Anda membayar tepat sebesar probabilitas tersebut, hasilnya impas. Harga yang dibayarkan adalah probabilitas impas. Karena itu, satu angka dapat berfungsi sebagai keduanya.

Empat istilah, masing-masing didefinisikan satu kali:

  • Kontrak Yes: membayar $1,00 jika peristiwa terjadi dan $0,00 jika tidak.
  • Kontrak No: membayar $1,00 jika peristiwa tidak terjadi. Yes dan No adalah dua sisi dari satu koin.
  • Settlement: saat kontrak ditetapkan hasilnya dan salah satu pihak menerima pembayaran.
  • Sumber resolusi: laporan atau feed yang disebutkan sebagai acuan settlement kontrak. Pembayaran ditentukan oleh apa yang dinyatakan sumber tersebut, bukan oleh apa yang sebenarnya terjadi.

Kuotasi kontrak peristiwa bukan bagian dari kumpulan data yang mendasari halaman ini. Setiap panel di bawah mengukur aritmetika yang sama jika dapat diukur secara langsung, yaitu pada listed US equity options. Delta call option berkisar dari 0 hingga 1 dan memperkirakan peluang pasar bahwa kontrak berakhir in the money. Ini adalah pertanyaan biner yang sama dengan yang diajukan kontrak peristiwa: berada di atas batas pada tanggal settlement atau tidak. Delta merupakan perkiraan probabilitas dan bersifat risk-neutral, bukan prakiraan. Kedua keterbatasan tersebut terlihat pada panel-panel ini. Panduan delta option membahas ukuran ini.

Mengapa Yes dan No jika dijumlahkan melebihi $1?

Yes dan No pasangannya mencakup seluruh ruang hasil, dan tepat salah satunya akan membayar. Dalam rantai opsi, pasangan yang sama adalah call dan put pada satu strike dan satu expiry: call berakhir in the money di atas strike, sedangkan put berakhir in the money di bawahnya. Probabilitas keduanya harus berjumlah 100%. Berikut pasangan tersebut dalam satu rantai SPY pada satu hari, dikelompokkan ke dalam band 2% di sekitar harga spot.

QueryProbabilitas Yes dan No pada satu SPY chain: sisi call, sisi put, dan total pasangan
SQL tepat di balik setiap angka
WITH chain AS (
    SELECT strike_price,
           toFloat64(any(underlying_close)) AS spot,
           avgIf(delta, delta > 0) AS call_delta,
           avgIf(-delta, delta < 0) AS put_delta_abs,
           countIf(delta > 0) AS calls,
           countIf(delta < 0) AS puts
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'SPY'
      AND date = toDate('2026-06-30')
      AND expiration_date = toDate('2026-07-31')
      AND iv_converged = 1
      AND volume > 0
    GROUP BY strike_price
    HAVING calls > 0 AND puts > 0
),
banded AS (
    SELECT toInt32(round(100 * (toFloat64(strike_price) / spot - 1) / 2) * 2) AS band,
           call_delta,
           put_delta_abs
    FROM chain
)
SELECT concat(if(band > 0, '+', ''), toString(band), '% vs spot') AS strike_vs_spot,
       round(100 * avg(call_delta), 1) AS yes_prob_pct,
       round(100 * avg(put_delta_abs), 1) AS no_prob_pct,
       round(100 * avg(call_delta + put_delta_abs), 1) AS pair_total_pct,
       count() AS strikes
FROM banded
WHERE abs(band) <= 8
GROUP BY band
ORDER BY band
Run this yourself

Pada -8% vs spot, sisi call menunjukkan 91.6% dan sisi put 7.8%, dengan total pasangan 99.5%. Di ujung tangga, +6% vs spot, keduanya menunjukkan 3.6% dan 82.5%, dengan total 86.2%. Seluruh 8 band berada dalam pembulatan 100%. Garis datar pada grafik tersebut merupakan batasan yang berlaku bagi setiap pasar biner. Positioning agregat pada kedua sisi dihitung oleh rasio put call.

Nilai model berperilaku sesuai teori. Kuotasi tidak selalu demikian. Misalnya, sebuah kontrak memiliki bid 62 dan ask 66, sedangkan sisi No memiliki bid 36 dan ask 40. Jika Anda membeli Yes pada 66 dan No pada 40, Anda membayar $1,06 untuk posisi yang dijamin menghasilkan $1,00. Jika Anda menjual keduanya pada bid masing-masing, Anda menerima 98 sen dengan kewajiban sebesar $1,00. Selisih 6 sen antara kedua ask tersebut disebut overround. Dalam istilah petaruh olahraga, ini disebut vig. Selisih inilah yang menjadi kompensasi bagi venue dan market maker karena menyediakan likuiditas. Halaman bid ask spread menjelaskan mengapa selisih tersebut ada.

Aritmetika de-vig, langkah demi langkah

Dua harga kuotasi menjadi input. Dua probabilitas wajar yang jumlahnya satu menjadi output.

  1. Ambil nilai tengah dari masing-masing sisi. Mid Yes adalah 64 sen, sedangkan mid No adalah 38 sen.
  2. Jumlahkan keduanya. Total book adalah 102 sen.
  3. Bagi masing-masing mid dengan total tersebut. 64 / 102 adalah 62,7%. 38 / 102 adalah 37,3%.
  4. Periksa jumlahnya. Pasangan tersebut kini berjumlah 100%.

Itulah seluruh makna de-vigging, dan prosesnya sama dengan normalisasi yang diterapkan bettor pada decimal odds.

Sekarang terapkan pada pasar dengan spread yang lebih sempit. Kuotasikan kontrak yang sama pada bid 63 dan ask 64, dengan No pada bid 36 dan ask 37. Mid-nya adalah 63,5 dan 36,5, total book tepat 100 sen, dan probabilitas yang telah melalui de-vig adalah 63,5%. Kedua hasil tersebut—62,7% dari pasar dengan spread lebar dan 63,5% dari pasar dengan spread sempit—berjarak kurang dari satu poin. Namun, rentang wajar di antara keduanya tidak demikian. Probabilitas berapa pun antara bid 62 sen dan ask 66 sen konsisten dengan kuotasi yang lebar. Artinya, pasar dengan spread 4 sen hanya menetapkan odds dalam kisaran sekitar 4 poin, tidak lebih. Menulis "62,7%" berdasarkan pasar dengan spread 4 sen berarti menyatakan tiga digit presisi yang tidak terkandung dalam pasar tersebut. Lebar spread menentukan tingkat presisi.

Apakah harga 30% berarti hal itu terjadi 30% dari waktu?

Kalibrasi adalah pengujiannya: kumpulkan semua kontrak call yang dihargai pasar mendekati 30%, lalu hitung seberapa sering peristiwa itu terjadi. Ini mencakup setiap kontrak call SPY yang tercatat sejak Januari 2022, diambil sekitar 30 hari sebelum jatuh tempo, lalu dikelompokkan ke dalam bucket probabilitas tersirat berdasarkan apakah SPY ditutup di atas strike tersebut pada tanggal kedaluwarsa.

QueryProbabilitas implied vs realisasi: SPY calls 30 hari sebelum expiry, 2022 hingga Juni 2026
SQL tepat di balik setiap angka
WITH px AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session,
           argMax(toFloat64(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('2022-01-01')
      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
),
snap AS (
    SELECT ticker AS contract,
           argMin(delta, abs(days_to_expiry - 30)) AS implied_prob,
           toFloat64(any(strike_price)) AS strike,
           any(expiration_date) AS expiry
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'SPY'
      AND date >= toDate('2022-01-01')
      AND expiration_date <= toDate('2026-06-30')
      AND days_to_expiry BETWEEN 25 AND 35
      AND iv_converged = 1
      AND volume > 0
      AND delta > 0.02
      AND delta < 0.98
    GROUP BY contract
)
SELECT multiIf(implied_prob < 0.10, '2-10%',
               implied_prob < 0.20, '10-20%',
               implied_prob < 0.30, '20-30%',
               implied_prob < 0.40, '30-40%',
               implied_prob < 0.50, '40-50%',
               implied_prob < 0.60, '50-60%',
               implied_prob < 0.70, '60-70%',
               implied_prob < 0.80, '70-80%',
               implied_prob < 0.90, '80-90%',
                                    '90-98%') AS implied_bucket,
       count() AS contracts,
       round(100 * avg(implied_prob), 1) AS implied_prob_pct,
       round(100 * avg(close_px > strike), 1) AS finished_above_pct
FROM snap
INNER JOIN px ON px.session = snap.expiry
GROUP BY implied_bucket
ORDER BY implied_prob_pct
Run this yourself

Kolom tersirat meningkat sepanjang jenjang berdasarkan konstruksinya. Kolom terealisasi adalah bagian yang tidak diketahui siapa pun sebelumnya. Pada bagian bawah, bucket 2-10% rata-rata memiliki probabilitas tersirat 4.7% di antara 4276 kontrak dan berakhir di atas strike-nya 4.9% dari waktu ke waktu. Pada bagian atas, 90-98% memiliki rata-rata 94.3% dan berakhir di atas strike 97.8%. Proporsi terealisasi di bagian bawah jenjang jauh lebih rendah daripada proporsi terealisasi di bagian atas. Inilah bentuk kalibrasi ketika hubungan tersebut kira-kira berlaku.

Ada dua catatan penting untuk setiap tabel seperti ini. Periode pengamatan berpengaruh: sampel yang sebagian besar mencakup kenaikan harga akan menaikkan kolom terealisasi pada setiap bucket call, sedangkan periode yang berbeda akan menghasilkan pengukuran yang berbeda. Selain itu, delta menunjukkan probabilitas yang membuat pricing konsisten secara internal, bukan probabilitas yang diyakini oleh peramal mana pun. Rangkaian opsi yang sama menetapkan harga untuk seluruh distribusi, bukan hanya satu ambang (pergerakan yang diharapkan).

Jika dipersempit ke kontrak yang oleh pasar dinilai seperti lemparan koin, dengan harga mendekati 50 sen per dolar, pada enam nama yang dikenal luas:

QueryKontrak dengan harga mendekati coin flip: hasil implied vs realized berdasarkan nama, 2023 hingga Juni 2026
SQL tepat di balik setiap angka
WITH px AS (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS session,
           argMax(toFloat64(close), window_start) AS close_px
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'KO', 'XOM')
      AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2023-01-01')
      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, session
),
snap AS (
    SELECT underlying_symbol AS symbol,
           ticker AS contract,
           argMin(delta, abs(days_to_expiry - 30)) AS implied_prob,
           toFloat64(any(strike_price)) AS strike,
           any(expiration_date) AS expiry
    FROM global_markets.options_greeks
    WHERE underlying_symbol IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'KO', 'XOM')
      AND date >= toDate('2023-01-01')
      AND expiration_date <= toDate('2026-06-30')
      AND days_to_expiry BETWEEN 25 AND 35
      AND iv_converged = 1
      AND volume > 0
      AND delta BETWEEN 0.40 AND 0.60
    GROUP BY symbol, contract
)
SELECT snap.symbol AS symbol,
       count() AS contracts,
       round(100 * avg(implied_prob), 1) AS implied_prob_pct,
       round(100 * avg(close_px > strike), 1) AS finished_above_pct
FROM snap
INNER JOIN px ON px.ticker = snap.symbol AND px.session = snap.expiry
GROUP BY symbol
ORDER BY finished_above_pct DESC
Run this yourself

Probabilitas tersirat berada di sekitar 50% pada setiap baris berdasarkan konstruksinya. Kolom terealisasi menyebar: SPY berakhir di atas strike-nya 68.4% dari waktu ke waktu di antara 4785 kontrak, dibandingkan dengan 49.9% untuk XOM. 6 nama, satu probabilitas tersirat yang sama, dan rentang hasil aktual yang lebar. Harga yang mendekati 50 sen menggambarkan peluang menurut pasar. Namun, setiap kontrak tetap berakhir pada $1,00 atau $0,00.

Berapa titik impas untuk kontrak seharga $0,70?

Kontrak yang dibeli seharga 70 sen membayar $1,00 jika Yes dan tidak membayar apa pun jika No. Keuntungannya 30 sen, kerugiannya 70 sen, dan probabilitas titik impas sama persis dengan harganya. Pada probabilitas sebenarnya 70%, posisi tersebut pada dasarnya seperti lemparan koin dengan langkah tambahan. Di atas 70%, perhitungannya menguntungkan pembeli; di bawahnya, merugikan pembeli, semuanya sebelum biaya diperhitungkan.

Biaya menggeser batas tersebut secara tidak merata. Jika biaya round trip sebesar satu sen ditambahkan pada kontrak seharga 70 sen, titik impas bergeser dari 70% menjadi sekitar 71%, yang hanya merupakan selisih pembulatan terhadap posisi tersebut. Biaya satu sen yang sama pada kontrak seharga 5 sen menggeser titik impas dari 5% menjadi 6%, sekaligus mengurangi seperlima keunggulan teoretis. Fixed fee paling merugikan long shot termurah karena fee tersebut menjadi porsi terbesar dari harga yang dibayarkan. Jenis order bekerja dengan cara yang sama: melintasi spread berarti membayar seluruh harga ask, sedangkan limit order yang dibiarkan menunggu berada pada harga yang Anda tentukan dan mungkin tidak pernah tereksekusi (market order vs limit order).

Mengapa hasil yang hampir pasti diperdagangkan pada harga $0,97?

Hasil yang tidak diperdebatkan pun jarang diperdagangkan pada harga $1,00. Ada empat hal yang tercermin dalam tiga sen terakhir tersebut:

  • Nilai waktu uang. Dolar tersebut diterima saat settlement. Membayar 97 sen hari ini untuk $1,00 dalam tiga bulan merupakan imbal hasil atas modal, dan dana tunai itu memiliki penggunaan lain (menempatkan dana tunai yang menganggur).
  • Risiko sumber settlement. Kontrak diselesaikan berdasarkan laporan sumber yang disebutkan, sesuai jadwal yang ditetapkan sumber tersebut. Revisi, penundaan, dan kata-kata yang ambigu tetap menjadi risiko, bahkan untuk hasil yang telah disepakati.
  • Spread itu sendiri. Pasar dengan bid 96 dan ask 98 memiliki mid sebesar 97 sen, tetapi tidak ada transaksi pada harga 97. Dalam persentase, spread biasanya paling lebar tepat di titik ekstrem.
  • Risiko ekor. Orang sering menggunakan kata “pasti” secara longgar. Kontrak diselesaikan berdasarkan definisi dalam rulebook.

Konvergensi ini dapat diukur. Ambil call option SPY yang dihargai mendekati peluang fifty-fifty satu bulan sebelum expiry, kelompokkan berdasarkan hasil akhirnya, lalu amati rata-rata implied probability pada enam titik pemeriksaan.

QueryBagaimana coin flip mendekati hasil akhir: rata-rata probabilitas implied berdasarkan checkpoint, dipisahkan menurut hasil
SQL tepat di balik setiap angka
WITH px AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session,
           argMax(toFloat64(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('2025-06-01')
      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
),
coin_flips AS (
    SELECT ticker AS contract
    FROM global_markets.options_greeks
    WHERE underlying_symbol = 'SPY'
      AND date >= toDate('2025-06-01')
      AND expiration_date <= toDate('2026-06-30')
      AND days_to_expiry BETWEEN 28 AND 32
      AND iv_converged = 1
      AND volume > 0
      AND delta > 0
    GROUP BY contract
    HAVING avg(delta) BETWEEN 0.35 AND 0.65
),
obs AS (
    SELECT g.days_to_expiry AS dte,
           g.delta AS implied_prob,
           if(px.close_px > toFloat64(g.strike_price), 1, 0) AS finished_above
    FROM global_markets.options_greeks AS g
    INNER JOIN coin_flips AS c ON g.ticker = c.contract
    INNER JOIN px ON px.session = g.expiration_date
    WHERE g.underlying_symbol = 'SPY'
      AND g.date >= toDate('2025-06-01')
      AND g.expiration_date <= toDate('2026-06-30')
      AND g.iv_converged = 1
      AND g.volume > 0
      AND g.delta > 0
      AND (g.days_to_expiry BETWEEN 28 AND 32
        OR g.days_to_expiry BETWEEN 19 AND 23
        OR g.days_to_expiry BETWEEN 12 AND 16
        OR g.days_to_expiry BETWEEN 6 AND 8
        OR g.days_to_expiry BETWEEN 3 AND 4
        OR g.days_to_expiry <= 1)
)
SELECT multiIf(dte >= 28, '30 days out',
               dte >= 19, '21 days out',
               dte >= 12, '14 days out',
               dte >= 6, '7 days out',
               dte >= 3, '3 days out',
                         '1 day out') AS checkpoint,
       round(100 * avgIf(implied_prob, finished_above = 1), 1) AS eventual_yes_pct,
       round(100 * avgIf(implied_prob, finished_above = 0), 1) AS eventual_no_pct,
       count() AS contract_days
FROM obs
GROUP BY checkpoint
HAVING countIf(finished_above = 1) > 0 AND countIf(finished_above = 0) > 0
ORDER BY avg(dte) DESC
Run this yourself

Pada 30 days out, kontrak yang akhirnya ditutup di atas strike memiliki rata-rata implied probability sebesar 52.6%, dibandingkan dengan 47.8% untuk kontrak yang tidak demikian. Pada 1 day out, kedua kelompok yang sama masing-masing menunjukkan 79.8% dan 14.4%. Pemisahan tersebut dibuat berdasarkan hindsight. Tidak ada pihak yang membaca option chain pada titik pemeriksaan pertama yang dapat membedakan kedua kelompok itu. Itulah kondisi yang selalu dihadapi event contract yang masih aktif. Kepastian baru tiba pada tanggal settlement, dan harga bergerak ke arah tersebut secara bertahap. Aturan settlement menentukan momen yang tepat: opsi dengan settlement AM vs PM menunjukkan seberapa besar detail waktu tersebut dapat berpengaruh, sedangkan implied volatility merupakan jawaban option chain yang sama untuk pertanyaan mengenai besarnya pergerakan, bukan arahnya.

Catatan data dan keterbatasan

Delta merupakan pengganti harga Yes, bukan objek yang sama. Delta mendekati peluang risk-neutral untuk berakhir in the money dan sedikit berbeda dari probabilitas model atas peristiwa yang sama. Hasil di sini membandingkan harga penutupan sesi reguler pada tanggal expiry dengan strike, yang mendekati settlement, bukan mereplikasi nilai settlement resmi. Setiap panel opsi hanya menyertakan kontrak dengan implied volatility yang telah konvergen dan volume non-zero pada tanggal tersebut, sehingga kontrak yang sepi tidak masuk dalam sampel. Setiap kontrak dimasukkan ke panel kalibrasi satu kali, pada snapshot yang paling dekat dengan 30 hari sebelum expiry.

FAQ penetapan harga kontrak event

Apakah harga kontrak event sama dengan probabilitas?

Harga tersebut merupakan probabilitas dengan dua penyesuaian. Kuotasi mencakup spread yang dibebankan oleh venue dan market maker. Kuotasi juga menilai satu dolar yang diterima saat settlement, bukan hari ini. Setelah kedua faktor tersebut dikeluarkan, yang tersisa adalah estimasi pasar mengenai peluang berdasarkan proses clearing.

Apa dampak de-vigging terhadap pasar dua sisi?

Proses ini menskalakan kembali mid untuk kedua sisi agar totalnya menjadi 100%. Jumlahkan mid Yes dan mid No, lalu bagi masing-masing dengan total tersebut. Harga Yes sebesar 64 sen dan harga No sebesar 38 sen berjumlah 102 sen. Setelah de-vigging, pasangan tersebut menjadi 62,7% dan 37,3%.

Mengapa harga Yes dan No berjumlah lebih dari satu dolar?

Salah satu dari keduanya pasti membayar $1.00. Karena itu, pasangan tanpa friksi seharusnya berharga tepat $1.00 secara gabungan. Sen tambahan pada sisi ask merupakan overround, yaitu pendapatan spread yang melekat pada pasar dua sisi. Jika menjual kedua sisi, hasilnya justru kurang dari satu dolar, dengan selisih yang mencerminkan kebalikan dari gap yang sama.

Apakah kontrak dengan harga 90 sen gagal satu kali dari setiap sepuluh kali?

Kurang lebih demikian, jika pasar terkalibrasi dengan baik pada banyak kontrak serupa. Dalam panel SPY di atas, bucket 90-98% memiliki probabilitas tersirat rata-rata sebesar 94.3% dan ditutup di atas strike 97.8% sepanjang waktu. Namun, satu kontrak tetap akan diselesaikan pada nilai satu dolar atau nol.

Seberapa besar spread yang lebar mengubah probabilitas tersirat?

Kira-kira sebesar lebar spread tersebut. Pasar dengan spread 1 sen menetapkan peluang dalam kisaran satu poin persentase. Pasar dengan spread 4 sen menyisakan kisaran 4 poin persentase. Setiap probabilitas di dalam kisaran tersebut konsisten dengan kuotasi.


Setiap angka di atas berasal dari stored query atas data kontrak yang tercatat. SQL di balik setiap panel dapat dibuka dengan satu klik. Jalankan perhitungan de-vig yang sama pada chain live di terminal Strasmore.

#prediction markets#event contracts#probability#market mechanics#options