Edges
ปริมาณเทียบกับ Open Interest: พลังขับเคลื่อนเครื่องสแกนแจ้งเตือนตัวเลือก
ปริมาณเทียบกับ open interest คือสิ่งแรกที่นักเก็งกำไรออปชั่นที่จริงจังตรวจสอบ เพราะเมื่อรวมกันแล้วจะตอบคำถามเดียว: การเคลื่อนไหว ณ สตริคนี้เป็นเงินสดใหม่หรือไม่ หรือเป็นเพียงเสียงรบกวน? ปริมาณคือจำนวนสัญญาที่ซื้อขายในวันนี้; open interest คือจำนวนสัญญาที่ยังคงเปิดและมีอยู่ คู่มือนี้จะอธิบายความแตกต่าง แสดงให้เห็นว่าอัตราส่วนของทั้งสองนี้คือสัญญาณความผิดปกติที่แท้จริง และจากนั้นจะสร้างเครื่องยนต์การให้คะแนนที่สมบูรณ์—ซึ่งเป็นแบบที่ขับเคลื่อนสแกนเนอร์สไตล์ "ปลาหมึกผิดปกติ" —ที่จัดอันดับสัญญาใดๆ เป็นระดับเตือนที่แข็งแกร่ง, ต้องจับตาดู, หรือน่าสนใจ
ปริมาณเทียบกับ open interest: ความแตกต่างหลัก
ตัวเลขทั้งสองนี้จะอยู่ข้างๆ กันในทุกๆ แผนผัง และผู้เริ่มต้นมักสับสนกับตัวเลขเหล่านี้ ความแตกต่างนั้นเรียบง่ายเมื่อคุณยึดติดกับมัน:
| ปริมาตร | Open Interest | |
|---|---|---|
| การวัด | สัญญาที่ซื้อขายวันนี้ | สัญญาที่ยังเปิดอยู่ |
| การรีเซ็ต | ทุกวัน ณ เวลาเปิดตลาด | ไม่มี—เป็นแบบสะสม |
| บอกคุณ | กิจกรรม/ความสนใจในวันนี้ | สิทธิโดยรวมที่มีอยู่ทั้งหมด |
| ทิศทาง | อาจสูงขึ้นตลอดทั้งวัน | อัปเดตเพียงครั้งเดียวหลังเที่ยงคืน |
ปริมาณเป็นเหมือนสปีดอ Metern์—อ่านจังหวะในวันนี้และรีเซ็ตในวันพรุ่งนี้; Open interest (OI) เป็นเหมือนโอโดมิเตอร์—สะสมตำแหน่งที่เปิดและยังไม่ปิด ยังคงมีอยู่ สตริคอาจมี open interest (จำนวนตำแหน่งที่เปิดค้าง) จำนวนมาก แต่ปริมาณในวันนี้มีน้อยมาก (ไม่มีใครซื้อขาย) หรือในทางกลับกัน
อัตราส่วนปริมาณต่อ OI คือสัญญาณที่แท้จริง
ตัวเลขใดตัวเลขหนึ่งก็ไม่ได้หมายความอะไรมากเพียงอย่างเดียว สัญญาณคือ อัตราส่วน:
ตัวเลขนี้บอกคุณว่าการซื้อขายในวันนี้เป็นธรรมเนียมปฏิบัติหรือไม่ หรือมีบางอย่างใหม่ๆ กำลังมาถึง:
เมื่อปริมาณ เกิน open interest (อัตราส่วน > 1) มีสัญญาที่เปลี่ยนมือมากกว่าจำนวนสัญญาที่เปิดตลาด—เป็นไปไม่ได้เว้นแต่จะมีการสร้างตำแหน่งใหม่ๆ เมื่ออัตราส่วนข้าม 3 จะเป็นสัญญาณที่ดัง: ราวๆ สามเท่าของฐานที่ตั้งที่เปิดค้างซื้อขายในหนึ่งช่วงเวลา นั่นคือร่องรอยของการซื้อจำนวนมากที่มีทิศทางและตั้งใจอย่างชัดเจน ใส่ตัวเลขจริงด้านล่างและดูว่าคำตัดสินเปลี่ยนไปเมื่อข้ามเกณฑ์
การจัดตำแหน่งใหม่สดเทียบกับการตัดขาดทุน
อัตราส่วนที่สูงบอกใบ้ว่า มีบางอย่าง เกิดขึ้น — แต่ไม่ได้บอกว่า อะไร เกิดขึ้น นี่คือความแตกต่างที่คู่มือส่วนใหญ่พลาดไป การเพิ่มขึ้นของปริมาณการซื้อขายเมื่อเทียบกับ OI อาจหมายถึงสองสิ่งตรงกันข้าม:
- การเข้ามาใหม่ — นักซื้อรายใหม่เปิดสัญญา อุณหภูมิการซื้อขายในวันพรุ่งนี้จะ เพิ่มขึ้น เพื่อดูดซับปริมาณการซื้อขายในวันนี้ นี่คือสัญญาณที่เครื่องสแกนตามหา ซึ่งเป็นสัญญาณแบบ "ซื้อเมื่อมีโอกาส" / "ขายเมื่อมีโอกาส"
- การล้างขาดทุน — ผู้ถือครองเดิมปิดการซื้อขาย อุณหภูมิการซื้อขายในวันพรุ่งนี้จะ ลดลง ปริมาณการเพิ่มขึ้นเหมือนกัน แต่มีความหมายตรงกันข้าม
คุณไม่สามารถแยกแยะพวกมันออกจากอัตราส่วนเพียงอย่างเดียวแบบเรียลไทม์ได้ นั่นคือเหตุผลที่เครื่องสแกนที่ดีไม่เคยเทรดอัตราส่วนเพียงอย่างเดียว — มันสร้างอัตราส่วนขึ้นกับ ทิศทางราคา และ การเคลื่อนไหวของพรีเมียม เพื่อยืนยันว่ามีเงินใหม่ไหลเข้ามาในทิศทางเดียวกัน ปริมาณการซื้อขายที่ผิดปกติซึ่งสอดคล้องกับการเพิ่มขึ้นของราคาหุ้นและพรีเมียมที่เพิ่มขึ้นคือ เงินทุนแห่งชาตินิยม flow signal ที่คุ้มค่าแก่การดำเนินการ
อัตราส่วนปริมาณการซื้อขาย/ OI ที่สูงเป็นสิ่งจำเป็น แต่ไม่เพียงพอเสมอไป ตรวจสอบให้แน่ใจด้วยทิศทาง (ราคาหุ้นกำลังเคลื่อนที่ไปในทิศทางที่ถูกต้องหรือไม่?) และการเปลี่ยนแปลงของพรีเมียม (ตัวเลือกกำลังเพิ่มมูลค่าหรือไม่?) ก่อนที่จะพิจารณาว่าเป็นสัญญาณที่แท้จริง
จากสัญญาณสู่คะแนน: เครื่องตรวจจับสัญญาณเตือน
ดังนั้น ผู้เชี่ยวชาญจึงแปลงข้อมูลกระจัดกระจายเหล่านี้เป็นหนึ่งในการตัดสินใจได้อย่างไร พวกเขา ให้คะแนน สัญญาแต่ละฉบับ แทนที่จะมีกฎที่ตัดสินใจครั้งเดียว กฎเกณฑ์ที่เป็นบวกแต่ละข้อจะเพิ่มคะแนน และธงแดงแต่ละอันจะลดคะแนน สัญญาที่รวมการยืนยันจำนวนมากจะขึ้นสู่ส่วนหัว สัญญาที่มีคุณสมบัติที่ดีเพียงอย่างเดียวแต่มีข้อบกพร่องร้ายแรง (สเปรดที่กว้างและสภาพคล่องต่ำ) จะถูกกรองออก
เครื่องยนต์ทำงานในห้าขั้นตอน: ดึงข้อมูลสัญญาดิบ, คำนวณเมตริกที่ได้มา (อัตราส่วน, การเปลี่ยนแปลงเป็นเปอร์เซ็นต์, ความเร็ว), ให้คะแนนแต่ละปัจจัย, ยืนยันทิศทาง และจับคู่ผลรวมไปยังระดับสัญญาณเตือน นี่คือเครื่องยนต์ทั้งหมดที่ได้รับการแสดงความคิดเห็นอย่างครบถ้วน
# =====================================================================
# EXPERT OPTION ALERT DETECTOR
# Scores every contract in a chain for unusual activity and assigns
# an alert tier. Higher score = more confirmations stacked together.
# =====================================================================
for contract in option_chain:
# -----------------------------------------------------------------
# 1. Raw contract data (straight from the feed)
# -----------------------------------------------------------------
symbol = contract.symbol
type = contract.type # "CALL" or "PUT"
bid = contract.bid
ask = contract.ask
volume = contract.volume # contracts traded TODAY
oi = max(contract.open_interest, 1) # avoid divide-by-zero
delta = abs(contract.delta) # use magnitude (puts are negative)
gamma = contract.gamma
theta = contract.theta
stock_now = underlying.price_now
stock_5m_ago = underlying.price_5m_ago
premium_now = (bid + ask) / 2 # mid price
premium_5m_ago = contract.premium_5m_ago
# -----------------------------------------------------------------
# 2. Derived metrics (the numbers that actually carry signal)
# -----------------------------------------------------------------
spread_pct = (ask - bid) / premium_now * 100 # liquidity cost
volume_oi_ratio = volume / oi # fresh-money gauge
premium_change_pct = (premium_now - premium_5m_ago) / premium_5m_ago * 100
stock_change_pct = (stock_now - stock_5m_ago) / stock_5m_ago * 100
premium_velocity = premium_change_pct / 5 # %% move per minute
# -----------------------------------------------------------------
# 3. Direction confirmation
# A real alert needs price AND premium moving the same way.
# -----------------------------------------------------------------
bullish_call = (type == "CALL"
and stock_change_pct > 0
and premium_change_pct > 0)
bearish_put = (type == "PUT"
and stock_change_pct < 0 # stock falling
and premium_change_pct > 0) # put gaining value
direction_confirmed = bullish_call or bearish_put
# -----------------------------------------------------------------
# 4. Expert scoring — each factor adds or subtracts points
# -----------------------------------------------------------------
score = 0
# --- Unusual activity (the volume/OI core) ---
if volume > 1000: score += 10 # liquid enough to matter
if volume_oi_ratio > 1: score += 15 # volume tops open interest
if volume_oi_ratio > 3: score += 25 # fresh positioning (stacks)
# --- Premium movement (is the option itself running?) ---
if premium_change_pct > 10: score += 10
if premium_change_pct > 20: score += 20 # stacks on top of the +10
if premium_velocity > 3: score += 15 # moving FAST, not drifting
# --- Liquidity (reward tight, punish wide) ---
if spread_pct < 5: score += 15 # easy in / easy out
elif spread_pct > 10: score -= 20 # spread tax — avoid
# --- Day-trading delta zone ---
if 0.30 <= delta <= 0.70: score += 15 # responsive but not too deep
# --- Gamma accelerator (delta picks up speed near the money) ---
if gamma > 0.03: score += 10
if gamma > 0.05: score += 15 # stacks on top of the +10
# --- Direction confirmation bonus ---
if direction_confirmed: score += 20
# --- Theta risk penalty (decay eating the premium) ---
if abs(theta) > premium_now * 0.25: score -= 10
# -----------------------------------------------------------------
# 5. Alert tier — map the total score to a label
# -----------------------------------------------------------------
if score >= 85: alert_level = "🔥 STRONG ALERT"
elif score >= 70: alert_level = "⚠️ WATCH ALERT"
elif score >= 55: alert_level = "👀 INTERESTING"
else: continue # below threshold — skip silently
# -----------------------------------------------------------------
# 6. Send the alert
# -----------------------------------------------------------------
send_alert({
"symbol": symbol,
"type": type,
"strike": contract.strike,
"expiry": contract.expiry,
"score": score,
"alert_level": alert_level,
"premium_now": premium_now,
"premium_change_pct": premium_change_pct,
"volume": volume,
"open_interest": oi,
"volume_oi_ratio": volume_oi_ratio,
"spread_pct": spread_pct,
"delta": delta,
"gamma": gamma,
"stock_change_pct": stock_change_pct,
})
ส่วนถัดไปจะแจกแจงว่าทำไมแต่ละบล็อกจึงได้รับคะแนนนั้นๆ
การให้คะแนนกิจกรรมที่ผิดปกติ
บล็อกปริมาณการซื้อขายและ OI เป็นหัวใจของเครื่องยนต์ โปรดทราบว่ากฎปริมาณการซื้อขาย/OI ทำงานแบบเรียงซ้อน: อัตราส่วนที่สูงกว่า 3 จะทำให้กฎ > 1 ( +15) และกฎ > 3 ( +25) ทำงานพร้อมกัน ทำให้ได้ +40 คะแนน นี่เป็นเรื่องโดยเจตนา เนื่องจากอัตราส่วน 3.5 มีความหมายมากกว่าอัตราส่วน 1.1 มาก ดังนั้นจึงควรให้คะแนนสูงกว่า
การตรวจสอบ volume > 1000 อย่างง่ายคือพื้นผิวดิสเปรชชัน - มันจะหยุดเครื่องสแกนจากการแจ้งเตือนการซื้อขายในสิทธิที่ได้รับการซื้อขายน้อยมาก ซึ่งมีอัตราส่วนที่หลอกลวงเนื่องจากมีการสร้างสัญญาเพียงห้าฉบับ
การให้คะแนนการเคลื่อนไหวของพรีเมียม
ปริมาณบอกว่าสัญญาซื้อขายกันอยู่ ส่วนการเปลี่ยนแปลงของพรีเมียมบอกว่าเทรดเดอร์กำลัง จ่ายเพิ่ม. การเพิ่มขึ้นของพรีเมียมเป็นการยืนยันว่าความต้องการนั้นเป็นจริง ไม่ใช่แค่การตอบสนองเฉยๆ
ความเร็วเป็นตัวที่ละเอียดอ่อน premium_velocity = premium_change_pct / 5 จะแปลงการเปลี่ยนแปลง 5 นาทีเป็นอัตราต่อนาที ความเร็วที่พรีเมียมเพิ่มขึ้น 16% ในช่วง 5 นาที (ความเร็ว 3.2) เป็นสัญญาณที่แข็งแกร่งกว่ามากเมื่อเทียบกับการที่การเพิ่มขึ้น 16% นั้นเกิดขึ้นในช่วงหนึ่งชั่วโมง — นั่นหมายความว่าผู้ซื้อกำลัง กระตือรือร้นอย่างมากในตอนนี้
การให้คะแนนสภาพคล่องและภาษีสเปรด
สภาพคล่องเป็นปัจจัยเดียวที่สามารถเป็นลบได้ด้วยตัวเอง และด้วยเหตุผลที่ดี สเปรด bid/ask ที่กว้างคือภาษีแฝงที่คุณจ่ายเมื่อเข้าและออกจากสัญญา:
สัญญาหนึ่งสามารถสอบผ่านการทดสอบอื่นๆ ได้ทั้งหมด แต่ก็ยังไม่สามารถซื้อขายได้หากสเปรดกว้างถึง 12% - คุณจะเสียเงินจำนวนมากในทันทีที่คุณเข้ามา ใน (−20) penalty นี้ออกแบบมาเพื่อดึงสัญญาเหล่านั้นต่ำกว่าเกณฑ์การแจ้งเตือน ไม่ว่าปริมาณจะดูผิดปกติเพียงใดก็ตาม
ตัวกรองกรีซ: delta, gamma, theta
ตัวกรีซเดียวกันที่คุณถอดรหัสใน วิธีการอ่านแผนผังตัวเลือก กลายเป็นตัวกรองคุณภาพที่นี่:
- Delta 0.30–0.70 (+15) — จุดยอดในการซื้อขายรายวัน จุดที่ตอบสนองต่อ underlying ได้ แต่ไม่ลึก ITM จนเกินไปจนต้องเสียเงินจำนวนมากและหยุดการเร่งตัว
- Gamma > 0.03 (+10), > 0.05 (+15, stacks) — รางวัลสำหรับสัญญาที่ delta จะเร่งตัวขึ้นตามการเคลื่อนไหวที่เกิดขึ้น ราคากำไรใกล้ดอลลาร์คือ gamma
- Theta penalty (−10) — เกิดขึ้นเมื่อ
abs(theta) > premium_now × 0.25, นั่นคือการเสื่อมสภาพกำลังเผาพรีเมียมมากกว่าหนึ่งในสี่ต่อวัน สิ่งนี้ปกป้องคุณจากการซื้อสัญญาที่กำลังลดลงอย่างรวดเร็วทันทีใกล้ถึงวันหมดอายุ
กฎ theta คือสิ่งที่จะทำให้เครื่องสแกนเป็นกลางใกล้ถึงวันหมดอายุ: สัญญา DTE 0 สามารถดูน่าตื่นเต้นบนปริมาณและพรีเมียม แต่ถ้ามันกำลังสูญเสียมูลค่า 30% ต่อวัน เครื่องก็จะลดคะแนนลง
ระดับการแจ้งเตือน: STRONG, WATCH, INTERESTING
ขั้นตอนสุดท้ายคือการจับคู่ข้อมูลทั้งหมดกับระดับ (tier) หากต่ำกว่า 55 จะถูกตัดทิ้งโดยไม่มีการแจ้งเตือนหรือสัญญาณใดๆ
เนื่องจากกฎเกณฑ์แบบแข็งแกร่ง (bullish rules stack) ทำให้เกิดรูปแบบที่สมบูรณ์แบบ—สัดส่วนที่ผิดปกติ, ค่าพรีเมียมที่รวดเร็ว, สเปรดที่แคบ, ATM delta, ความ gamma ที่สูง, ทิศทางที่ได้รับการยืนยัน—สามารถผ่านเกณฑ์ 85 และเกินไปหลายจุดได้โดยง่าย ความหนืดนี้ถือว่าโอเค เพราะระดับเป็นพื้น (floor) ไม่ใช่เพดาน (cap) ลองรันสัญญาจริงผ่านเครื่องยนต์เต็มรูปแบบด้านล่างและสังเกตว่าแต่ละกฎจะสว่างขึ้น:
หมายเหตุสำหรับนักพัฒนา: ข้อมูลที่คุณต้องการจริงๆ
คุณไม่จำเป็นต้องมีแพลตฟอร์มราคาแพงในการรันเครื่องยนต์นี้—คุณแค่ต้องมีแหล่งข้อมูลที่ส่งข้อมูลต่อสัญญา:
| จำเป็น | บวกกับประวัติย่อ | |
|---|---|---|
| ปริมาตร | สด, ตามสัญญา | — |
| Open interest | ภาพรวมรายวัน | — |
| Bid / Ask | สำหรับสเปรด + ราคา mittler | — |
| ตัวบ่งชี้ (Greeks) | delta, gamma, theta | — |
| Premium 5m ago | — | บัฟเฟอร์หมุนเวียนที่คุณเก็บไว้ |
| หุ้น 5m ago | — | ระยะเวลาการกลับมาพิจารณาของสินทรัพย์อ้างอิง |
| IV | — | การปรับปรุงเพิ่มเติมทางเลือก |
สิ่งเดียวที่ภาพรวมแบบดิบ (raw snapshot) ไม่สามารถให้ได้คือ ค่า 5 นาทีที่ผ่านมา—คุณต้องรักษาสิ่งเหล่านี้ด้วยบัฟเฟอร์ขนาดเล็กแบบหมุนเวียน โดยสุ่มราคาค่ากลาง (mid price) ของสัญญาแต่ละฉบับและสินทรัพย์อ้างอิงทุกๆ นาที ทุกอย่างที่เหลือ (Greeks, OI, volume, quotes) มาตรงๆ จากแหล่งข้อมูลออปชั่นมาตรฐาน นั่นเป็นสิ่งที่เพียงพอที่จะสร้างสแกนเนอร์ที่เทียบเท่ากับเครื่องมือที่ต้องจ่ายเงิน
Confirmed Alert — Price and Premium Rising Together
ข้อสรุปสำคัญ
อ่านปริมาณการซื้อขาย (volume) และ open interest ไปพร้อมกัน ไม่เคยแยกกัน: สัดส่วนปริมาณการซื้อขาย/OI (Open Interest) ก่อน เพื่อจับตาดูเงินสดใหม่ แล้วจึงรวบรวมการยืนยัน—การเคลื่อนที่ของพรีเมียม, สเปรดที่แคบ, มุมมองที่ถูกต้อง delta และ gamma, และทิศทางของราคา—ก่อนที่จะตัดสินว่าเป็นการแจ้งเตือน หากเครื่องยนต์ให้คะแนนมีจุดประสงค์หลักคือการหยุดคุณจากการกระทำตามข้อมูลเพียงอย่างเดียว การพิมพ์ปริมาณการซื้อขายที่ผิดปกติเพียงครั้งเดียวเป็นคำถาม—สัญญาที่ได้คะแนน 85+ ในหกปัจจัยที่เป็นอิสระคือคำตอบ