วิธีคำนวณผลตอบแทนกลยุทธ์ Covered Call
เรียนรู้วิธีคำนวณผลตอบแทนของกลยุทธ์ Covered Call อย่างละเอียด ทั้งการหาค่า Net debit จุดคุ้มทุน ผลตอบแทนแบบ Static และผลตอบแทนกรณีถูกเรียกหุ้น พร้อมวิธีคำนวณผลตอบแทนรายปี
การคำนวณผลตอบแทนของ Covered call คืออะไร และหมายถึงผลตอบแทนแบบใด
Covered call คือการถือครองหุ้น 100 หุ้นควบคู่ไปกับการขาย Call option 1 สัญญาบนหุ้นนั้น สิทธิในตัว Option จะให้ผู้ซื้อมีสิทธิซื้อหุ้นของคุณที่ราคาคงที่ซึ่งเรียกว่า Strike price จนกว่าจะถึงวันหมดอายุ ส่วนราคาที่คุณได้รับจากการขาย Option เรียกว่า Premium ซึ่งเป็นเงินสดที่เข้าบัญชีของคุณตั้งแต่วันแรก กลไกการทำงานสามารถดูได้ที่ กลไกการทำงานของ covered call ส่วนเนื้อหาต่อไปนี้คือวิธีการคำนวณเชิงตัวเลข
“ผลตอบแทน” จะยังมีความหมายไม่ชัดเจนจนกว่าคุณจะระบุสถานะปลายทางที่ต้องการคำนวณ:
- Net debit: ต้นทุนหุ้นหักด้วย Premium ที่ได้รับ ซึ่งเป็นเงินสดที่คุณจ่ายจริงสำหรับสถานะนี้
- Break-even: Net debit หารด้วยจำนวน 100 หุ้น คือราคา ณ วันหมดอายุที่ทำให้สถานะนี้มีมูลค่าเท่ากับต้นทุน
- Static return: ผลตอบแทนที่ได้รับหากราคาหุ้น ณ วันหมดอายุเท่ากับราคาปัจจุบันพอดี โดยที่ Call option หมดค่าไปและคุณยังถือหุ้นอยู่
- Return if called: ผลตอบแทนที่ได้รับหากราคาหุ้นเท่ากับหรือสูงกว่า Strike price และหุ้นถูกขายออกไปที่ราคานั้น
เนื่องจาก 1 สัญญาครอบคลุมหุ้น 100 หุ้น ดังนั้น Premium ที่เสนอราคาที่ $1.00 จะเท่ากับเงิน $100.00
วิธีคำนวณผลตอบแทนของ Covered call: ตัวอย่างการคำนวณ
สมมติหุ้นตัวหนึ่งราคา $50.00 และมี Call option อายุ 30 วัน ที่ Strike price $52.50 เสนอราคาอยู่ที่ $1.00 ต้นทุนหุ้นคือ $5,000.00 และได้รับ Premium จากการขาย Call เป็นเงิน $100.00
- Net debit: $5,000.00 ลบ $100.00 เท่ากับ $4,900.00 หรือ $49.00 ต่อหุ้น
- Break-even: $49.00 ณ วันหมดอายุ
- Static return: หากราคาหุ้นยังคงอยู่ที่ $50.00 ตัว Call จะหมดอายุโดยไม่มีมูลค่า และ Premium $100.00 คือผลตอบแทนทั้งหมด ซึ่งคิดเป็น 2.04% ในระยะเวลา 30 วัน
- Return if called: หากถูกเรียกใช้สิทธิที่ $52.50 หุ้นจะถูกขายไปที่ $5,250.00 กำไรจากส่วนต่างราคาหุ้น $250.00 บวกกับ Premium $100.00 รวมเป็น $350.00 จากต้นทุน $4,900.00 คิดเป็น 7.14% ในระยะเวลา 30 วัน
เปอร์เซ็นต์ทั้งสองค่าใช้ Net debit เป็นตัวหาร ซึ่งเป็นเงินสดที่ยังคงมีความเสี่ยงหลังจากได้รับเครดิตแล้ว โบรกเกอร์บางแห่งอาจคำนวณผลตอบแทนเทียบกับต้นทุนเต็มจำนวนที่ $5,000.00 ซึ่งจะทำให้ตัวเลขดูต่ำกว่า ส่วนต่างที่เกิดขึ้นก็คือตัว Premium นั่นเอง สำหรับสถานะตรงข้ามคือการขาย Put option โดยสำรองเงินสดไว้ สามารถเปรียบเทียบได้ที่ covered call เทียบกับ cash secured put
ที่มาของ Premium ในตัวเศษ
Premium คือราคาตลาด ขนาดของมันจะแปรผันตามความเคลื่อนไหวที่ตลาดคาดการณ์ไว้สำหรับหุ้นตัวนั้นตลอดอายุสัญญา ซึ่งแสดงเป็นเปอร์เซ็นต์ต่อปีที่เรียกว่า Implied volatility ต่อไปนี้คือหุ้น 5 ตัวที่วัดค่าด้วยวิธีเดียวกันจนถึงเดือนมิถุนายน 2026:
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
underlying_symbol AS symbol,
round(100 * quantileDeterministic(0.5)(toFloat64(implied_volatility), cityHash64(ticker)), 1) AS median_iv_pct,
count() AS contract_count
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('AAPL', 'MSFT', 'NVDA', 'KO', 'SPY')
AND date >= '2026-07-01'
AND date < '2026-08-01'
AND iv_converged = 1
AND volume > 0
AND delta > 0
AND days_to_expiry BETWEEN 20 AND 45
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
GROUP BY underlying_symbol
ORDER BY median_iv_pct DESCค่ามัธยฐานของ Implied volatility อยู่ในช่วงตั้งแต่ 43.4% ในเดือน MSFT จนถึง 13.4% ในเดือน SPY สำหรับหุ้นทั้ง 5 ตัว โดยพิจารณาจาก Call option ที่มีอายุเหลือ 20 ถึง 45 วัน และมี Strike price อยู่ภายในกรอบ 5% ของราคาหุ้น ผลตอบแทน Static return 2% จากหุ้นที่ผันผวนน้อยที่สุด กับ 2% จากหุ้นที่ผันผวนมากที่สุดนั้นไม่ใช่การเทรดแบบเดียวกัน เพราะตัวหลังได้รับค่าตอบแทนสำหรับผลลัพธ์ในอีก 30 วันข้างหน้าที่กว้างกว่ามาก Liquid versus volatile options จะช่วยแยกแยะแนวคิดทั้งสองนี้
เหตุใด Strike price แบบ In-the-money จึงทำให้ได้รับผลตอบแทนเร็วขึ้น
ลองขาย Call option ที่ Strike price $47.50 บนหุ้นราคา $50.00 ตัวเดิม โดยมีราคาเสนอที่ $3.20 ราคานี้แบ่งเป็นมูลค่าที่แท้จริง (Intrinsic value) $2.50 ซึ่งเป็นส่วนที่ราคาหุ้นสูงกว่า Strike price อยู่แล้ว และมูลค่าตามเวลา (Time value) อีก $0.70
- Net debit: $4,680.00 หรือ $46.80 ต่อหุ้น
- Break-even: $46.80 ซึ่งเป็นส่วนเผื่อ (cushion) 6.4% ต่ำกว่าราคาหุ้น เทียบกับ 2.0% ของ Call ที่ Strike $52.50
- Static return: หากราคาหุ้นยังคงอยู่ที่ $50.00 ตัว Call จะอยู่ในสถานะ In-the-money ดังนั้นหุ้นจะถูกขายไปที่ $47.50 รายรับ $4,750.00 เทียบกับต้นทุน $4,680.00 จะได้กำไร $70.00 หรือ 1.50%
- Return if called: ได้ผลตอบแทน 1.50% เท่ากัน ทุกผลลัพธ์ที่ราคาหุ้นเท่ากับหรือสูงกว่า $47.50 จะได้รับเงิน $70.00 เท่าเดิม
ผลตอบแทนทั้งหมดของ In-the-money covered call คือมูลค่าตามเวลา (Time value) ซึ่งในกรณีนี้คือ $0.70 ต่อหุ้น และจะได้รับเมื่อราคาหมดอายุสูงกว่า $47.50 นี่คือการเร่งผลตอบแทนให้เร็วขึ้น: คือการได้รับกำไรสูงสุดที่น้อยลงจากการเข้าซื้อที่ราคาต่ำกว่า โดยมีส่วนเผื่อ 5% ก่อนที่ตัวเลขผลตอบแทนจะเปลี่ยนแปลง ในขณะที่ Call ที่ Strike $52.50 ให้ผลตอบแทน 7.14% แต่ต้องอาศัยการปรับตัวขึ้นของราคาหุ้น 5% ถึงจะได้รับผลตอบแทนนั้น วันที่ถูกเรียกใช้สิทธิอธิบายไว้ใน เกิดอะไรขึ้นหาก option หมดอายุในสถานะ in the money
ผลลัพธ์ทั้งสองแบบมีโอกาสเกิดขึ้นไม่เท่ากัน ค่า Delta ซึ่งเป็นอัตราการเปลี่ยนแปลงของราคา Option เทียบกับราคาหุ้น สามารถใช้เป็นค่าประมาณการโอกาสที่ Option จะจบในสถานะ In-the-money ได้ เมื่อจัดกลุ่มตามระยะห่างของ Strike price สำหรับ AAPL calls จนถึงเดือนมิถุนายน 2026 ที่มีอายุเหลือ 20 ถึง 45 วัน:
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
multiIf(
moneyness < -0.075, '7.5% to 10% in the money',
moneyness < -0.025, '2.5% to 7.5% in the money',
moneyness < 0.025, 'within 2.5% of the stock',
moneyness < 0.075, '2.5% to 7.5% out of the money',
'7.5% to 10% out of the money') AS strike_band,
round(quantileDeterministic(0.5)(toFloat64(delta), cityHash64(ticker)), 2) AS median_delta,
count() AS contract_count
FROM
(
SELECT
ticker,
delta,
toFloat64(strike_price) / toFloat64(underlying_close) - 1 AS moneyness
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date >= '2026-07-01'
AND date < '2026-08-01'
AND iv_converged = 1
AND volume > 0
AND delta > 0
AND days_to_expiry BETWEEN 20 AND 45
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) <= 0.10
)
GROUP BY strike_band
ORDER BY min(moneyness)ค่ามัธยฐานของ Delta อยู่ในช่วงตั้งแต่ 0.86 ในกลุ่ม 7.5% to 10% in the money ถึง 0.17 ในกลุ่ม 7.5% to 10% out of the money หากอ่านเป็นความน่าจะเป็นคร่าวๆ Call ที่อยู่ในสถานะ Deep in-the-money จะถูกกำหนดราคาโดยคาดว่ามีโอกาสสูงที่จะถูกเรียกใช้สิทธิ ส่วน Call ที่อยู่ไกลจากราคาหุ้น (Far out-of-the-money) จะมีโอกาสถูกเรียกใช้สิทธิต่ำ ผลตอบแทน Static return ที่อ้างอิงจาก Strike price ที่มีค่า Delta ต่ำ คือตัวเลขที่ตลาดคาดว่าคุณจะได้รับ ส่วน Return-if-called ใน Strike เดียวกันคือตัวเลขที่ตลาดคาดว่าอาจจะไม่เกิดขึ้น
คุณจะปรับผลตอบแทนของ Covered call ให้เป็นรายปีได้อย่างไร
ผลตอบแทน Static return ระยะ 30 วันที่ 2.04% มักถูกนำเสนอเป็นอัตราต่อปีที่ 24.8%: โดยนำ 2.04 คูณ 365 แล้วหารด้วย 30 การคำนวณนี้เป็นเรื่องพื้นฐาน แต่สมมติฐานที่ซ่อนอยู่คือสิ่งที่ควรกล่าวถึง การคูณด้วย 12.17 เป็นการสมมติว่าจะมีอีกสิบสองเดือนที่เหมือนกับเดือนนี้ทุกประการ โดยมี Premium เท่าเดิม ในระยะห่างจากราคาหุ้นเท่าเดิม หุ้นไม่เคยถูกเรียกใช้สิทธิ และไม่มีเดือนไหนที่ไม่ได้ลงทุน สำหรับกรณี Return if called ที่ 7.14% เมื่อปรับเป็นรายปีจะเท่ากับ 86.9% ซึ่งสมมติฐานที่รุนแรงกว่านั้นคือ หุ้นจะทะลุ Strike price ทุกเดือนและถูกซื้อคืนในราคาที่สูงขึ้นเรื่อยๆ ในทุกครั้ง
ส่วนที่เป็น Premium ของสมมติฐานนั้นสามารถวัดค่าได้ ด้านล่างนี้คือค่ามัธยฐานของ Implied volatility ของ AAPL calls ที่ใกล้ราคาตลาด (Near-the-money) รายเดือน ตลอดระยะเวลาสองปีจนถึงเดือนมิถุนายน 2026
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
formatDateTime(toStartOfMonth(date), '%Y-%m') AS month,
round(100 * quantileDeterministic(0.5)(toFloat64(implied_volatility), cityHash64(ticker)), 1) AS median_iv_pct
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date >= '2024-08-01'
AND date < '2026-08-01'
AND iv_converged = 1
AND volume > 0
AND delta > 0
AND days_to_expiry BETWEEN 20 AND 45
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
GROUP BY toStartOfMonth(date)
ORDER BY toStartOfMonth(date)ชุดข้อมูลเริ่มต้นที่ 23.3% ในเดือน 2024-08 และสิ้นสุดที่ 28.4% ในเดือน 2026-07 โดยมีค่าอ่านรายเดือน 24 ปรากฏในตาราง เดือนเหล่านั้นไม่ได้เหมือนกันทุกประการ และ Premium ที่เสนอในแต่ละเดือนก็เช่นกัน การปรับเป็นรายปีเป็นเพียงมาตรวัดสำหรับการเปรียบเทียบระยะเวลาถือครองที่ต่างกัน และมันจะหยุดเป็นมาตรวัดทันทีเมื่อคุณอ่านตัวเลขนั้นเป็นผลตอบแทนรายปีจริงๆ ควรระบุผลตอบแทนของช่วงเวลานั้นพร้อมจำนวนวันกำกับไว้เสมอ
เงินปันผลและการถูกเรียกใช้สิทธิก่อนกำหนดเข้ามาเกี่ยวข้องกับการคำนวณอย่างไร
เงินปันผลที่จ่ายในขณะที่คุณยังถือหุ้นอยู่ถือเป็นส่วนหนึ่งของตัวเศษ สมมติว่าหุ้นราคา $50.00 ขึ้นเครื่องหมาย XD (ex-dividend) ที่ $0.35 ภายในกรอบเวลา 30 วัน และคุณถือหุ้นผ่านวันนั้น ผลตอบแทน Static return จะกลายเป็น Premium $100.00 บวกเงินปันผล $35.00 บนต้นทุน $4,900.00 ซึ่งเท่ากับ 2.76% แทนที่จะเป็น 2.04%
เงื่อนไขนี้มีความสำคัญ Equity options แบบอเมริกันสามารถถูกใช้สิทธิได้ในวันทำการใดก็ได้ก่อนวันหมดอายุ และแรงจูงใจของผู้ถือ Call option ที่จะใช้สิทธิก่อนกำหนดจะมุ่งเน้นไปที่วันก่อนหุ้นขึ้นเครื่องหมาย XD เนื่องจากจะทำให้ได้รับเงินปันผลซึ่งตัวสัญญา Option เองไม่ได้จ่ายให้ Call option ที่มีมูลค่าตามเวลา (Time value) เหลืออยู่น้อยเมื่อเทียบกับเงินปันผล มักจะเป็นตัวเลือกมาตรฐานสำหรับการใช้สิทธิก่อนกำหนด หุ้นจะถูกโอนออกไปที่ Strike price ก่อนวัน XD และเงินปันผล $35.00 นั้นก็จะไม่ได้มาถึงมือคุณ Ex-dividend dates and options อธิบายเรื่องจังหวะเวลา และ American vs European options ครอบคลุมถึงสัญญาประเภทใดบ้างที่สามารถใช้สิทธิก่อนกำหนดได้
สิ่งที่การคำนวณผลตอบแทนไม่สามารถแสดงให้เห็นได้
ตัวเลขทุกตัวที่กล่าวมาอธิบายถึงวันเดียวคือวันหมดอายุ และสถานะเดียวที่ถือจนถึงวันนั้น มีสองสิ่งที่อยู่นอกเหนือกรอบนี้
อย่างแรกคือโอกาสกำไรขาขึ้นที่เสียไป หากราคาหุ้นสูงกว่า Strike price มูลค่าของหุ้นจะเท่ากับ Strike price ไม่ว่าหน้าจอจะแสดงราคาเท่าใดก็ตาม ตารางด้านล่างนำข้อมูล AAPL รายเดือนตลอดสองปีจนถึงเดือนมิถุนายน 2026 มาเปรียบเทียบความเคลื่อนไหวของหุ้นจริงกับความเคลื่อนไหวเดียวกันที่ถูกจำกัดไว้ที่ 5% ซึ่งเป็นรูปแบบของ Covered call ที่เขียนไว้ที่ 5% นอกราคาตลาด (Out-of-the-money) และถือจนหมดอายุในแต่ละเดือน
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH monthly AS
(
SELECT
toStartOfMonth(toTimeZone(window_start, 'America/New_York')) AS m,
toFloat64(argMax(close, window_start)) AS last_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'AAPL'
AND window_start >= '2024-07-01'
AND window_start < '2026-08-01'
GROUP BY m
)
SELECT
formatDateTime(m, '%Y-%m') AS month,
round(100 * (last_close / prev_close - 1), 2) AS stock_pct,
round(least(100 * (last_close / prev_close - 1), 5.0), 2) AS called_away_pct
FROM
(
SELECT
m,
last_close,
lagInFrame(last_close) OVER (ORDER BY m ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_close
FROM monthly
)
WHERE prev_close > 0
ORDER BY mในเดือน 2026-07 ชุดข้อมูลแบบไม่จำกัดวัดได้ 6.35% และชุดข้อมูลแบบจำกัดวัดได้ 5% ตลอดระยะเวลา 24 เดือนที่แสดงไว้ เส้นทั้งสองทับซ้อนกันในทุกเดือนที่ราคาหุ้นลดลง และแยกออกจากกันในทุกเดือนที่ราคาหุ้นทะลุเพดานที่จำกัดไว้ Premium จะเพิ่มค่าคงที่จำนวนหนึ่งให้กับทั้งสองเส้น แต่มันไม่เคยเปลี่ยนรูปร่างของเส้นเหล่านั้นเลย
อย่างที่สองคือความเสี่ยงขาลง ซึ่ง Premium ช่วยลดทอนลงได้แต่ไม่ได้กำจัดออกไป จุดคุ้มทุน (Break-even) ที่ $49.00 บนหุ้นราคา $50.00 คือส่วนเผื่อ 2% หากราคาหุ้นตกลง 20% สถานะจะขาดทุนประมาณ 18% และการที่ Call option หมดอายุโดยไม่มีมูลค่าก็เป็นเพียงเรื่องเล็กน้อยที่เกิดขึ้นในเดือนนั้น รูปแบบที่นำ Premium บางส่วนไปซื้อความคุ้มครองขาลง (Floor) อธิบายไว้ใน covered call vs collar ส่วนเวอร์ชันที่ยังคงขาย Premium ต่อไปหลังจากถูกเรียกใช้สิทธิคือ the wheel strategy และกองทุนที่ดำเนินกลยุทธ์ Covered call ตามตารางเวลาที่กำหนดจะถูกอธิบายไว้ใน covered call ETFs explained
คำถามที่พบบ่อย
คุณคำนวณ Static return ของ Covered call อย่างไร?
ให้นำ Premium ที่ได้รับหารด้วย Net debit แล้วระบุระยะเวลาถือครองกำกับไว้ Premium $1.00 บนหุ้นราคา $50.00 คือ $100.00 บน Net debit $4,900.00 คิดเป็น 2.04% ใน 30 วัน และค่านี้จะเป็นจริงก็ต่อเมื่อราคาหุ้นจบลงที่ต่ำกว่า Strike price เท่านั้น
ราคา Break-even ของ Covered call คือเท่าใด?
คือราคาหุ้นที่จ่ายไปลบด้วย Premium ต่อหุ้น หุ้นราคา $50.00 ที่มี Premium $1.00 จะมีจุดคุ้มทุนที่ $49.00 และหากราคาหุ้นต่ำกว่า $49.00 ณ วันหมดอายุ สถานะรวมจะมีมูลค่าน้อยกว่าต้นทุนที่จ่ายไป
คุณคำนวณผลตอบแทน Covered call จาก Net debit หรือจากราคาหุ้นเต็มจำนวน?
Net debit คือเงินสดที่ยังคงมีความเสี่ยงหลังจากได้รับเครดิตแล้ว และเป็นตัวหารที่ใช้ตลอดทั้งหน้านี้ การคำนวณเทียบกับต้นทุนหุ้นเต็มจำนวนจะทำให้ได้เปอร์เซ็นต์ที่ต่ำกว่าเล็กน้อย โดยทั้งสองค่าจะต่างกันเท่ากับจำนวน Premium พอดี
ผลตอบแทน Covered call แบบปรับเป็นรายปีถือเป็น Yield หรือไม่?
ไม่ถือเป็น Yield มันคือผลตอบแทนของช่วงเวลาหนึ่งที่คูณด้วย 365 แล้วหารด้วยจำนวนวันในรอบนั้น และเป็นการสมมติว่าจะมี Premium เท่าเดิมในทุกช่วงเวลาในอนาคตโดยที่หุ้นไม่เคยถูกเรียกใช้สิทธิ ให้มองว่ามันเป็นมาตรวัดสำหรับการเปรียบเทียบระยะเวลาถือครองเท่านั้น
จะเกิดอะไรขึ้นกับผลตอบแทนหาก Call option ถูกเรียกใช้สิทธิก่อนกำหนด?
จำนวนเงินที่ได้รับจะเท่าเดิมแต่ระยะเวลาถือครองสั้นลง ดังนั้นตัวเลขรายปีจะสูงขึ้นในขณะที่ผลลัพธ์ที่เป็นเงินสดไม่เปลี่ยนแปลง เมื่อการเรียกใช้สิทธิก่อนกำหนดเกิดขึ้นในวันก่อนวันขึ้นเครื่องหมาย XD เงินปันผลจะหายไปจากตัวเศษโดยสิ้นเชิง
วิธีการสร้างตารางเหล่านี้
ตาราง Option ทั้งสามตารางอ่านค่า Greeks รายวันต่อสัญญา โดยเก็บเฉพาะแถวที่ค่า Implied volatility ลู่เข้าและมีการซื้อขายจริงในวันนั้น และแยก Call option โดยเก็บเฉพาะค่า Delta ที่เป็นบวก คำว่า Near the money หมายถึง Strike price ที่อยู่ภายใน 5% ของราคาปิดของหุ้นอ้างอิงในวันนั้น ค่ามัธยฐานถูกคำนวณอย่างเป็นระบบ ดังนั้นการรันข้อมูลในกรอบเวลาเดิมซ้ำจะได้ตัวเลขเดิมเสมอ ตารางราคาแบบรายเดือนใช้ราคาบันทึกสุดท้ายของแต่ละเดือน และชุดข้อมูลแบบจำกัดเพดานจะใช้เพดาน 5% กับความเคลื่อนไหวนั้น
ตารางทุกตารางที่นี่มีคำสั่ง SQL ที่ใช้สร้างข้อมูลกำกับไว้ คุณสามารถเปิดดูเพื่อตรวจสอบตัวกรองได้ คำถามเดียวกันนี้สามารถสอบถามเป็นภาษาอังกฤษได้ที่ Strasmore terminal