Cara Papan Pemuka GEX Sumber Terbuka Berfungsi
Ketahui cara papan pemuka GEX sumber terbuka mengira pendedahan gamma, formula bagi setiap strike, andaian posisi dealer, serta batasan data yang sering disalah tafsir oleh pelabur.
-653.1
Cara papan pemuka GEX berfungsi
Papan pemuka GEX sumber terbuka menukar satu syot kilat rantaian opsyen kepada profil pendedahan gamma: satu angka dolar pada setiap strike yang menganggarkan jumlah permintaan lindung nilai opsyen berubah bagi setiap pergerakan satu peratus dalam aset asas. Aritmetik di sebaliknya hanyalah satu baris kod. Andaian yang mendasari perkara ini, iaitu dealer memegang setiap call sebagai posisi long dan setiap put sebagai posisi short, tidak pernah diukur di mana-mana pada rantaian tersebut, dan jurang itulah punca kebanyakan salah tafsir terhadap angka berkenaan. Jika anda telah membaca apa yang diukur oleh pendedahan gamma, soalan seterusnya ialah bagaimana angka tersebut dihasilkan.
Bagaimanakah pendedahan gamma dikira?
Mulakan dengan satu kontrak. Gamma ialah kadar perubahan delta opsyen bagi setiap pergerakan satu dolar dalam aset asas, yang disebut harga bagi setiap saham. Opsyen ekuiti AS standard meliputi seratus saham, jadi gamma kontrak dalam terma saham ialah gamma yang disebut harga didarab dengan pengganda tersebut.
Papan pemuka menukarkan nilai itu kepada dolar dan peratusan pergerakan. Lima terma dimasukkan ke dalam angka bagi setiap strike:
gamma: gamma bagi setiap saham untuk kontrak tersebut, dibaca daripada syot kilat rantaian atau dikira secara setempat daripada volatiliti tersiratopen_interest: kontrak yang masih belum selesai pada strike dan tarikh luput tersebut100: pengganda kontrakspot * spot: menukarkan perubahan delta kepada perubahan nosional dolar pada harga aset asas semasa0.01: menentukur semula jawapan daripada pergerakan satu dolar kepada pergerakan satu peratus
Angka bagi setiap strike ialah gex = gamma * open_interest * 100 * spot * spot * 0.01. Jumlahkan angka tersebut merentasi setiap strike pada rantaian, dengan memasukkan call sebagai nilai positif dan put sebagai nilai negatif, dan jumlah tersebut merupakan angka utama. Segala paparan lain pada papan pemuka, seperti bar bagi setiap strike, profil kumulatif, tahap flip, dan pecahan mengikut tarikh luput, hanyalah penyusunan semula daripada jumlah tersebut.
Apakah rupa profil GEX bagi setiap strike?
Panel di bawah membina profil untuk SPY merentasi setiap strike dalam lingkungan 1.5% daripada harga penutup aset asas, bagi kontrak yang tamat tempoh dalam masa 30 hari.
SQL tepat di sebalik setiap nombor
SELECT
concat('$', toString(round(k))) AS strike,
round(sumIf(gex, side = 'call') / 1e6, 1) AS call_gex_musd,
round(-sumIf(gex, side = 'put') / 1e6, 1) AS put_gex_musd,
round((sumIf(gex, side = 'call') - sumIf(gex, side = 'put')) / 1e6, 1) AS net_gex_musd,
any(snapshot_label) AS snapshot_label
FROM
(
SELECT
toFloat64(strike_price) AS k,
if(lower(option_type) LIKE 'c%', 'call', 'put') AS side,
toFloat64(gamma) * toFloat64(volume) * 100
* pow(toFloat64(underlying_close), 2) * 0.01 AS gex,
formatDateTime(date, '%b %e, %Y') AS snapshot_label
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND date = (SELECT max(date) FROM global_markets.options_greeks WHERE underlying_symbol = 'SPY')
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 0 AND 30
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.015
)
GROUP BY k
ORDER BY kSatu penggantian penting di sini, dan ia merupakan penggantian sama yang dilakukan oleh banyak papan pemuka percuma tanpa dinyatakan. Data di sebalik panel ini membawa greeks setiap kontrak dan volum dagangan, bukan open interest, jadi setiap strike ditimbang mengikut volum kontrak yang didagangkan dalam sesi tersebut. Kedua-duanya mengira perkara yang berbeza: volum mengira dagangan hari tersebut, manakala open interest mengira posisi yang masih belum selesai pada waktu penutup. Bentuk keluk tersebut adalah pengajarannya, dan tahapnya akan berubah dengan lajur open interest yang sebenar. Perbezaan ini wajar dibaca sepenuhnya dalam volum opsyen berbanding open interest.
Jalur ini memegang 23 strike, bermula daripada $758 sehingga $780, kesemuanya diukur pada Aug 6, 2026. Pada strike terendah yang dipaparkan, bersih bertanda berjumlah -653.1 juta dolar bagi setiap pergerakan 1%. Pada tahap tertinggi, jumlahnya mencecah 849.4 juta. Perhatikan betapa tidak sekata bar tersebut dari satu strike ke strike yang lain. Nombor bulat dan tarikh tamat tempoh yang didagangkan secara aktif terkumpul, manakala strike di antaranya hampir tidak mencatatkan sebarang nilai.
Adakah konvensyen tanda dealer diukur atau diandaikan?
Tiada apa-apa dalam rantaian opsyen merekodkan pihak mana yang berada di sebelah mana bagi sesuatu kontrak. Rantaian tersebut melaporkan harga strike, tarikh luput, greeks, dan jumlah kontrak yang belum selesai. Ia tidak menyatakan sama ada market maker yang memetik harga tersebut berakhir pada hari itu dengan posisi long atau short, dan tiada suapan awam yang melengkapkan maklumat tersebut.
Pembinaan standard menutup jurang tersebut dengan satu konvensyen: dealer diandaikan long bagi setiap call dan short bagi setiap put. Call kemudian dimasukkan ke dalam jumlah sebagai positif dan put dimasukkan sebagai negatif. Pilihan tunggal itu menetapkan tanda bagi angka utama, dan setiap bacaan yang dibina berdasarkan tanda tersebut mewarisinya. Jika konvensyen itu diterbalikkan, bacaan gamma positif akan menjadi negatif walaupun menggunakan data yang sama.
Konvensyen ini mempunyai rasionalnya. Aliran runcit cenderung ke arah penjualan covered call dan cash-secured put, serta ke arah pembelian put sebagai perlindungan, yang meletakkan dealer di pihak yang satu lagi dalam arah yang diandaikan secara kasar. Ia kekal sebagai andaian mengenai pemilikan yang digunakan secara seragam pada harga strike di mana ia sering kali salah, termasuk harga strike yang baru sahaja diisi oleh pembeli call institusi yang besar. Papan pemuka yang memaparkan angka tersebut tanpa menyatakan konvensyen yang digunakan telah menyembunyikan inputnya yang paling penting.
Di manakah kedudukan gamma merentas tarikh luput?
Angka GEX tanpa penapis tarikh luput menggabungkan kontrak yang tamat tempoh pada petang ini dengan kontrak yang tamat tempoh pada suku hadapan dan menganggap jumlah tersebut sebagai satu kuantiti. Gamma tertumpu pada bahagian hadapan, dan bahagian hadapan tersebut berubah setiap sesi.
SQL tepat di sebalik setiap nombor
SELECT
formatDateTime(expiry_date, '%b %e') AS expiry,
round(sumIf(gex, side = 'call') / 1e9, 2) AS call_gex_bn,
round(-sumIf(gex, side = 'put') / 1e9, 2) AS put_gex_bn,
round((sumIf(gex, side = 'call') - sumIf(gex, side = 'put')) / 1e9, 2) AS net_gex_bn
FROM
(
SELECT
expiration_date AS expiry_date,
if(lower(option_type) LIKE 'c%', 'call', 'put') AS side,
toFloat64(gamma) * toFloat64(volume) * 100
* pow(toFloat64(underlying_close), 2) * 0.01 AS gex
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND date = (SELECT max(date) FROM global_markets.options_greeks WHERE underlying_symbol = 'SPY')
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 0 AND 21
)
GROUP BY expiry_date
ORDER BY expiry_dateMerentas 11 tarikh luput dalam tempoh tiga minggu, yang terdekat, Aug 7, membawa bahagian call sebanyak $20.57 bilion bagi setiap pergerakan 1% dan bersih bertanda sebanyak -5.1 bilion. Bahagian hujung panel adalah sebahagian kecil daripada jumlah tersebut. Carta papan pemuka yang wajar dibaca menyatakan penapis tarikh luputnya pada carta itu sendiri.
Tahap gamma sifar, yang sering dipanggil flip, ialah harga asas di mana profil yang dijumlahkan melintasi sifar. Menghasilkannya dengan betul bermakna menetapkan semula harga rantaian pada grid harga spot hipotesis dan mengira semula gamma setiap kontrak pada setiap satu, memandangkan gamma itu sendiri bergerak apabila spot bergerak. Banyak projek melangkau penetapan semula harga dan melakukan interpolasi lintasan terus daripada profil strike semasa. Jalan pintas itu lebih murah dan ia mendarat pada harga yang berbeza. Semak yang mana satu dilaksanakan oleh sesuatu projek sebelum memetik tahap flipnya.
Sejauh manakah profil berubah dari hari ke hari?
Open interest bukanlah stok yang statik. Kontrak tamat tempoh, strike price baharu disenaraikan, dan posisi dibuka serta ditutup sepanjang setiap sesi dagangan.
SQL tepat di sebalik setiap nombor
SELECT
toString(d) AS session_date,
formatDateTime(d, '%b %e') AS session_label,
round(sumIf(gex, side = 'call') / 1e9, 2) AS call_gex_bn,
round(-sumIf(gex, side = 'put') / 1e9, 2) AS put_gex_bn,
round((sumIf(gex, side = 'call') - sumIf(gex, side = 'put')) / 1e9, 2) AS net_gex_bn
FROM
(
SELECT
date AS d,
if(lower(option_type) LIKE 'c%', 'call', 'put') AS side,
toFloat64(gamma) * toFloat64(volume) * 100
* pow(toFloat64(underlying_close), 2) * 0.01 AS gex
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND date >= today() - 60
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 0 AND 45
)
GROUP BY d
ORDER BY dDua perkara menonjol sepanjang 41 sesi yang dipaparkan. Jumlah kasar bagi kedua-dua pihak adalah besar dan nilai bersih merupakan perbezaan antara keduanya: pada Aug 6, sesi terakhir dalam panel tersebut, bahagian call bernilai $29.2 bilion berbanding bahagian put sebanyak -34.53 bilion, menghasilkan nilai bersih sebanyak -5.32 bilion. Perubahan kecil pada mana-mana bahagian kasar akan mengubah nilai bersih dengan ketara. Garis tersebut juga tidak sekata. Nilai bersih mencatatkan -4.9 bilion pada Jun 9, dan panel tersebut menunjukkan sejauh mana pergerakannya antara sesi. Carta GEX tanpa cap masa hanyalah hiasan.
Bagaimanakah GEX berbeza daripada max pain?
Kedua-dua angka membaca rantaian yang sama dan mengemukakan soalan yang berbeza. GEX menimbang setiap strike mengikut gamma dan bertanya berapa banyak permintaan lindung nilai yang akan dicipta oleh pergerakan satu peratus. Max pain mengabaikan gamma sepenuhnya dan mengemukakan soalan penyelesaian: pada harga manakah nilai agregat in the money yang terhutang kepada pemegang opsyen adalah paling kecil pada tarikh luput. Panel di bawah membina keluk tersebut daripada snapshot yang sama, merangkumi kontrak yang luput dalam tempoh seminggu.
SQL tepat di sebalik setiap nombor
WITH chain AS
(
SELECT
toFloat64(strike_price) AS k,
if(lower(option_type) LIKE 'c%', 'call', 'put') AS side,
sum(toFloat64(volume)) AS contracts,
min(abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1)) AS moneyness
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND date = (SELECT max(date) FROM global_markets.options_greeks WHERE underlying_symbol = 'SPY')
AND volume > 0
AND days_to_expiry BETWEEN 0 AND 7
GROUP BY k, side
)
SELECT
concat('$', toString(round(sk))) AS settle_price,
round(sum(multiIf(
side = 'call' AND sk > k, (sk - k) * contracts * 100,
side = 'put' AND sk < k, (k - sk) * contracts * 100,
0)) / 1e9, 2) AS itm_value_bn
FROM (SELECT DISTINCT k AS sk FROM chain WHERE moneyness <= 0.015) AS grid
CROSS JOIN chain
GROUP BY sk
ORDER BY skKeluk tersebut meliputi 23 harga penyelesaian calon. Pada $758, nilai agregat in the money berjumlah $0.86 bilion, dan pada $780, ia berjumlah $0.7 bilion. Titik terendah keluk tersebut ialah strike max pain. Ia boleh berada beberapa dolar jauhnya daripada strike yang membawa pendedahan gamma terbesar pada snapshot yang sama, dan kedua-dua titik tersebut bukanlah ramalan tentang di mana aset asas akan diselesaikan.
Apakah keperluan untuk menjalankan papan pemuka GEX sumber terbuka?
Kebanyakan projek ini merupakan pakej Python kecil dengan lapisan pemetaan di atasnya. Keperluan mereka daripada anda adalah ringkas:
- syot kilat rantaian (chain snapshot) dengan harga strike, tarikh luput, jenis opsyen, open interest, dan sama ada gamma vendor atau volatiliti tersirat (implied volatility) untuk mengira salah satu daripadanya
- harga spot aset asas yang direkodkan pada saat yang sama dengan rantaian tersebut
- cap masa, yang disimpan bersama output dan bukannya diandaikan
- penapis tarikh luput yang anda pilih secara sengaja
- kunci data pasaran
Pasang daripada keluaran bertanda (tagged release) dan bukannya cawangan lalai. git clone --branch <tag> --depth 1 <repo-url> memberikan anda binaan yang telah disahkan oleh seseorang, manakala main memberikan anda apa sahaja yang ditolak (pushed) pagi ini. Bekerja di dalam persekitaran maya: python3 -m venv .venv, aktifkannya, kemudian pip install -r requirements.txt. Baca baris requires-python dalam pyproject.toml projek tersebut terlebih dahulu. Pakej yang dipinkan kepada penterjemah (interpreter) yang lebih lama akan gagal dengan cara yang mengelirukan pada penterjemah yang lebih baharu.
Data pasaran adalah bahagian yang jarang percuma. Syot kilat yang membawa kedua-dua open interest dan greeks bagi setiap kontrak pada rantaian merupakan hak berbayar di kebanyakan vendor setakat Ogos 2026. Titik akhir (endpoints) percuma cenderung memberikan sebut harga tanpa open interest, atau open interest yang diterbitkan pada pagi berikutnya. Profil yang dibina berdasarkan open interest semalam adalah lapuk tepat pada bahagian yang paling sensitif bagi pengiraan tersebut.
Perkara yang tidak dapat diketahui oleh papan pemuka GEX
Inventori sebenar market maker tidak diterbitkan. Firma melaporkan kedudukan secara agregat dan dengan kelewatan, manakala perincian pada tahap strike tidak pernah muncul dalam suapan awam. Papan pemuka GEX memodelkan permintaan lindung nilai di bawah andaian pemilikan, dan ia kekal sebagai model walau betapa tepat pun pengiraan aritmetiknya.
Empat perkara berada di luar jangkauan apa yang boleh dilihat oleh binaan berasaskan rantaian:
- siapa yang sebenarnya memegang setiap sisi bagi setiap strike
- kedudukan yang dibuka di luar pasaran tersenarai
- polisi lindung nilai setiap trading desk, termasuk desk yang melakukan lindung nilai mengikut jadual dan bukannya secara berterusan
- sama ada sesuatu print open interest datang daripada dagangan pembukaan atau penutupan
Ini tidak menjadikan angka tersebut tidak berguna. Ia bermakna angka itu membawa andaian yang dinyatakan, dan andaian tersebut perlu diletakkan bersebelahan dengan carta. Disiplin yang sama ditunjukkan dalam kerja greek pada tahap portfolio, di mana pemberatan beta delta portfolio menjadikan andaian di sebalik agregat itu jelas dan bukannya menyembunyikannya.
Cara panel ini dikira
Setiap panel membaca greek harian bagi setiap kontrak untuk SPY pada sesi terkini yang tersedia, ditapis mengikut kesesuaian implied volatility yang menumpu dan kontrak yang telah didagangkan. Setiap strike diberatkan mengikut volum kontrak sesi tersebut sebagai ganti kepada open interest, yang tidak dibawa oleh set data ini. Gamma dollars menggunakan formula yang diberikan di atas, dengan harga penutup aset asas sebagai spot. Panel max pain menggugurkan greek sepenuhnya dan hanya menggunakan strike, sisi, dan jumlah kontrak.
Soalan Lazim
Apakah GEX dalam dagangan opsyen?
GEX, atau pendedahan gamma (gamma exposure), menganggarkan sejauh mana permintaan lindung nilai opsyen berubah bagi setiap pergerakan satu peratus dalam aset asas. Ia mendarabkan gamma setiap kontrak dengan open interest, pengganda seratus saham, dan kuasa dua harga spot, kemudian menjumlahkannya merentasi harga strike dengan tanda yang diandaikan untuk call dan put.
Adakah anda memerlukan open interest untuk mengira GEX?
Pembinaan standard menggunakan open interest, yang mengira posisi yang masih belum selesai. Sesetengah papan pemuka menggantikannya dengan jumlah dagangan (traded volume) apabila open interest tidak tersedia atau tertangguh, dan pertukaran antara satu sama lain akan mengubah tahap profil tersebut.
Apakah tahap zero gamma atau gamma flip?
Ia merupakan harga aset asas di mana profil pendedahan gamma yang dijumlahkan melintasi sifar. Pelaksanaan yang teliti akan mengira semula gamma setiap kontrak pada setiap harga spot calon dan bukannya melakukan interpolasi daripada profil harga strike semasa, memandangkan gamma berubah apabila harga spot berubah.
Adakah bacaan GEX positif bermaksud bullish?
Tanda tersebut menggambarkan postur lindung nilai yang diandaikan, bukan hasil, dan ia bergantung sepenuhnya pada konvensyen yang dipilih mengenai siapa yang memegang call dan put. Menukar konvensyen tersebut akan menukar tanda pada data yang sama, jadi bacaan tersebut menggambarkan posisi yang dimodelkan dan bukannya arah pasaran.
Bolehkah saya membina papan pemuka GEX tanpa suapan data berbayar?
Anda boleh membina dan menguji pengiraan tersebut pada mana-mana syot kilat rantaian (chain snapshot), termasuk yang tertangguh atau separa. Menghasilkan profil semasa biasanya memerlukan suapan yang membawa open interest dan greeks bersama-sama untuk keseluruhan rantaian, yang mana kebanyakan vendor mengenakan bayaran bermula Ogos 2026.
Setiap panel di sini disertakan dengan SQL tepat di bawahnya. Buka satu, tukar ticker atau tetingkap tamat tempoh, dan jalankan pengiraan yang sama sendiri pada terminal Strasmore.