تاریخهای ex-dividend سهام در هفته جاری
لیست کامل تاریخهای ex-dividend بزرگترین سهامها، مبالغ پرداختی و تاریخهای پرداخت را بررسی کنید تا از فرصتهای سود نقدی و تغییرات قیمت در بازار آگاه شوید.
تاریخهای آتیِ بدون سود (ex-dividend) تعیینکننده دریافت سود هستند: اگر سهام را پیش از تاریخ ex-dividend خریداری کنید، سود بعدی متعلق به شما خواهد بود؛ اما اگر در همان روز یا پس از آن خرید کنید، سود به فروشنده تعلق میگیرد. این صفحه یک تقویم زنده از تاریخهای پیشرو است که شامل موارد زیر میشود: نام شرکتهایی که در هر روز از این هفته بدون سود میشوند، بزرگترین شرکتهایی که در دو هفته آینده بدون سود میشوند؛ این دادهها از سوابق اعلامشدهی سود نقدی استخراج شده و هر هفته بهروزرسانی میشوند. همچنین، این صفحه تغییرات واقعی قیمت سهام در صبحِ روز ex-dividend و میزان موفقیت استراتژی معاملاتی "dividend capture" را بر اساس دادهها بررسی میکند.
تاریخهای Ex-dividend این هفته
لیست تمامی سود نقدیهای اعلام شده که در هفت روز آینده Ex میشوند، به تفکیک روز و بر اساس دوره پرداخت:
کد دقیق SQL پشت هر عدد
SELECT toString(ex_dividend_date) AS ex_date,
formatDateTime(ex_dividend_date, '%b %e') AS ex_date_label,
count() AS names_going_ex,
countIf(frequency = 12) AS monthly_payers,
countIf(frequency = 4) AS quarterly_payers
FROM global_markets.stocks_dividends
WHERE ex_dividend_date > today()
AND ex_dividend_date <= today() + 7
AND cash_amount > 0
GROUP BY ex_dividend_date
ORDER BY ex_dividend_dateتقویم کوتاهمدت شامل 5 روز Ex-dividend است که از Jul 27 با حضور 40 نماد آغاز میشود — شامل 3 پرداختکننده ماهانه و 27 پرداختکننده فصلی. این تفکیک هنگام بررسی تقویم اهمیت دارد: نمادهای ماهانه (صندوقهای درآمدی، تراستهای مسکن و برخی REITs) هر چهار هفته یکبار و معمولاً در اواسط ماه تکرار میشوند؛ نمادهای فصلی — که شامل اکثر شرکتهای عملیاتی است — هر فصل یکبار ظاهر میشوند. برای دریافت هر یک از این پرداختها، دارایی باید در پایان روز معاملاتی قبل از تاریخ اعلام شده، در سبد سهام باشد. جزئیات زمانبندی در راهنمای تاریخ ex-dividend آمده است و تاریخ ثبت در مقابل تاریخ ex-dividend توضیح میدهد که چرا تاریخ ex برای خریداران اهمیت دارد.
شرکتهای بزرگ در دو هفته آینده بدون سود سهام (ex-dividend) میشوند
بزرگترین شرکتها (با ارزش بازار 10 میلیارد دلار و بالاتر) که ظرف چهارده روز آینده بدون سود سهام میشوند — مبلغ پرداختی، تاریخ پرداخت و بازده سالانه ناشی از آن پرداخت با قیمت فعلی:
کد دقیق SQL پشت هر عدد
WITH latest AS (
SELECT ticker, argMax(market_cap, date) AS mcap, argMax(price, date) AS px
FROM global_markets.stocks_ratios
WHERE date >= today() - 10
GROUP BY ticker
)
SELECT d.ticker AS ticker,
toString(d.ex_dividend_date) AS ex_date,
formatDateTime(d.ex_dividend_date, '%b %e') AS ex_date_label,
round(max(d.cash_amount), 4) AS per_share_usd,
toString(any(d.pay_date)) AS pay_date,
formatDateTime(any(d.pay_date), '%b %e') AS pay_date_label,
round(any(l.mcap) / 1e9, 0) AS mcap_bn,
round(100 * max(d.cash_amount) * max(d.frequency) / any(l.px), 2) AS indicated_yield_pct
FROM global_markets.stocks_dividends d
JOIN latest l ON d.ticker = l.ticker
WHERE d.ex_dividend_date > today()
AND d.ex_dividend_date <= today() + 14
AND d.cash_amount > 0
AND d.distribution_type = 'recurring'
AND d.frequency > 0
AND l.mcap >= 10000000000
AND d.ticker NOT IN ('SPCX')
GROUP BY d.ticker, d.ex_dividend_date
ORDER BY any(l.mcap) DESC
LIMIT 12بزرگترین نام در این لیست MS است که در تاریخ Jul 31 بدون سود سهام میشود و مبلغ 1.15 دلار برای هر سهم در تاریخ Aug 14 پرداخت خواهد شد — که بازده سالانه آن با قیمت اخیر، 2.14% درصد است. ستون بازده را با دقت بخوانید: این عدد، مبلغ اعلامشده را بر اساس فرکانس اعلامشده سالانه میکند — این یک محاسبه لحظهای است، نه یک وعده. مبلغ بالای هر سهم با بازده بالا متفاوت است، همانطور که مفهوم بازده سود سهام نشان میدهد. یک نماد از جداول رتبهبندی شده حذف شده است (فیلتر در SQL پنل قابل مشاهده است): نماد آن توسط صادرکننده دوم استفاده شده بود، بنابراین سوابق مربوط به آن شامل دو شرکت است و ما به جای چاپ سطری که نمیتوانیم به شرکت مشخصی نسبت دهیم، آن را حذف کردیم.
چه شرکتهایی در حال پرداخت هستند
فید سود سهام (dividend) فاقد برچسب بخشبندی شده است؛ بنابراین، ساختار بازه دو هفتهای بر اساس دادههای موجود تعیین میشود: اندازه شرکت، آهنگ پرداخت و بازدهی حاصل از هر پرداخت اعلام شده نسبت به قیمت فعلی. تمامی شرکتهای دارای پرداخت دورهای که ارزش بازار آنها در 14 روز آینده ex-dividend میشود، بر اساس محدوده اندازه گروهبندی شدهاند:
کد دقیق SQL پشت هر عدد
WITH latest AS (
SELECT ticker, argMax(market_cap, date) AS mcap, argMax(price, date) AS px
FROM global_markets.stocks_ratios
WHERE date >= today() - 10
GROUP BY ticker
),
names AS (
SELECT d.ticker AS ticker,
multiIf(any(l.mcap) >= 1e11, '1 Mega cap ($100B+)',
any(l.mcap) >= 1e10, '2 Large cap ($10-100B)',
any(l.mcap) >= 2e9, '3 Mid cap ($2-10B)',
'4 Small cap (under $2B)') AS size_band,
max(d.cash_amount) AS amt,
max(d.frequency) AS freq,
any(l.px) AS px
FROM global_markets.stocks_dividends d
JOIN latest l ON d.ticker = l.ticker
WHERE d.ex_dividend_date > today()
AND d.ex_dividend_date <= today() + 14
AND d.cash_amount > 0
AND d.distribution_type = 'recurring'
AND d.frequency > 0
AND l.px > 0
AND l.mcap > 0
GROUP BY d.ticker
)
SELECT size_band,
count() AS names_going_ex,
round(quantileDeterministic(0.5)(100 * amt * freq / px, cityHash64(ticker)), 2) AS median_indicated_yield_pct,
countIf(freq = 12) AS monthly_payers,
countIf(freq = 4) AS quarterly_payers
FROM names
GROUP BY size_band
ORDER BY size_bandاین بازه شامل 4 شرکت با ارزش بازار بسیار بالا (100 میلیارد دلار و بالاتر) و 43 شرکت با ارزش بازار بالا (10 تا 100 میلیارد دلار)، در کنار 37 شرکت با ارزش بازار متوسط و 85 شرکتهای کوچکتر است. میانه بازدهی اعلام شده در گروه شرکتهای بسیار بزرگ 2.01%، در گروه شرکتهای بزرگ 2.56%، در شرکتهای متوسط 2.4% و در میان شرکتهای کوچک 2.79% است. اندازه و بازدهی دو محور مجزا هستند: تقویمی که بر اساس بازدهی مرتب شده باشد، مجموعهای متفاوت از شرکتها را نسبت به تقویم مرتب شده بر اساس اندازه شرکت نشان میدهد؛ به همین دلیل است که یک فیلتر مبتنی بر بازدهی، شما را به آرامی از پلههای اندازه شرکتها پایین میآورد. آهنگ پرداخت نیز مشابه جدول روزانه بالا تقسیمبندی میشود. الگوی پرداخت فصلی (quarterly) بر بازار حاکم است، به طوری که 4 از شرکتهای بسیار بزرگ پرداخت فصلی دارند و 0 پرداخت ماهانه انجام میدهند، در حالی که گروه پرداخت ماهانه در سطوح پایینتر جدول ارزش بازار قرار دارد: 13 از شرکتهای کوچک در این بازه، هر ماه پرداخت انجام میدهند.
اقدامات لازم برای دریافت سود نقدی
در تقریباً تمامی موارد، هیچ اقدامی لازم نیست. نیازی به تکمیل فرم، تماس با کارگزار یا ثبتنام نیست؛ کافی است سهام را تا پایان روز معاملاتی پیش از ex-date نگه دارید تا وجه در تاریخ پرداخت (pay date)، که معمولاً چند هفته بعد است، به حساب شما واریز شود. خرید در همان آخرین روز معاملاتی نیز محسایی میشود؛ زیرا تسویه معاملات در بازار آمریکا در روز کاری بعد (T+1) انجام میشود و ex-date نیز بر اساس آن تعیین میگردد. تنها مرحله اختیاری، استفاده از DRIP (برنامه بازسرمایهگذاری سود) است؛ سیستمی که توسط کارگزار تنظیم میشود تا وجه نقد را به سهام کسری از همان سهم تبدیل کند.
موضوع مالیات در زمان ex-date اهمیت مییابد. در یک حساب مشمول مالیات در آمریکا، سود نقدی تنها زمانی «qualified» (دارای امتیاز مالیاتی) محسوب میشود که شما سهام را بیش از 60 روز در بازه 121 روزهای که از 60 روز قبل از ex-dividend date شروع میشود، نگه داشته باشید. اگر یک روز قبل از ex-date خرید کنید، سود را دریافت کنید و یک هفته بعد سهام را بفروشید، این شرط برقرار نخواهد بود و سود دریافتی به عنوان درآمد عادی (ordinary income) مشمول مالیات میشود. توزیع سود در REIT و بسیاری از صندوقها، بدون توجه به این شرایط، درآمد عادی محسوب میشود و نوع حساب نیز وضعیت را تغییر میدهد (مثلاً حسابهای IRA از این مالیات معاف هستند). این یک توصیه مالیاتی نیست، اما استراتژی «capture» یا خرید و فروش کوتاهمدت، پس از کسر مالیات، ارزش کمتری نسبت به ظاهر خود دارد.
رفتار واقعی قیمت در صبح روز Ex-date
روایت رایج این است که قیمت سهم در روز ex-date «با کسر مبلغ سود نقدی، کاهش مییابد». بورس پیش از بازگشایی، قیمت مرجع را کاهش میدهد؛ اما قیمت اولین معامله در صبح، شامل آن کاهش بهعلاوه تمامی تغییرات رخداده در طول شب است. سه شرکت پرداختکننده در آخرین تاریخهای ex-date خود:
کد دقیق SQL پشت هر عدد
WITH last_ex AS (
SELECT ticker,
max(ex_dividend_date) AS ex_d,
argMax(cash_amount, ex_dividend_date) AS div_amt
FROM global_markets.stocks_dividends
WHERE ticker IN ('KO', 'VZ', 'XOM')
AND cash_amount > 0
AND distribution_type = 'recurring'
AND ex_dividend_date < today()
AND ex_dividend_date >= today() - 120
GROUP BY ticker
),
daily AS (
SELECT ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS close_px,
argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS open_px,
countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS bars
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('KO', 'VZ', 'XOM')
AND window_start >= toDateTime(today() - 130)
GROUP BY ticker, d
HAVING bars > 200
),
seq AS (
SELECT ticker, d, open_px, close_px,
lagInFrame(close_px, 1) OVER (PARTITION BY ticker ORDER BY d ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS pre_close
FROM daily
)
SELECT s.ticker AS ticker,
toString(e.ex_d) AS last_ex_date,
formatDateTime(e.ex_d, '%b %e') AS last_ex_label,
round(e.div_amt, 4) AS dividend_usd,
round(s.pre_close, 2) AS close_before_ex_usd,
round(s.open_px, 2) AS ex_morning_open_usd,
round(100 * (s.open_px - s.pre_close) / s.pre_close, 2) AS open_gap_pct,
round(100 * e.div_amt / s.pre_close, 2) AS dividend_pct_of_price
FROM seq s
JOIN last_ex e ON e.ticker = s.ticker AND e.ex_d = s.d
WHERE s.pre_close > 0
ORDER BY tickerآخرین تاریخ ex-date شرکت Coca-Cola را در نظر بگیرید، Jun 15: پرداخت مبلغ 0.53 دلار، که معادل 0.64% از قیمت بستهشدن 82.6 دلاری در شب قبل است؛ در حالی که اولین قیمت در صبح روز ex-date، 81.08 دلار بود که نشاندهنده شکاف قیمتی -1.84% است. سود شرکت Verizon معادل 1.68% از قیمت بستهشدن 42.22 دلار قبلی بود؛ این سهم در قیمت -1.46% باز شد. سود شرکت Exxon نیز معادل 0.67% بود؛ قیمت بازگشایی آن 0.64% بود. سه شرکت پرداختکننده، سه شکاف قیمتی با اندازههای متفاوت، که هیچکدام دقیقاً برابر با مبلغ سود نقدی نیستند. کاهش قیمت مرجع، تنها یک تعدیل حسابداری است؛ اما «قیمت بازگشایی» یک قیمت واقعی است و قیمتها در طول شب به دلایل غیرمرتبط با سود نقدی تغییر میکنند. مبلغ سود از قبل مشخص است، اما قیمت صبح روز ex-date مشخص نیست.
آیا استراتژی شکار سود سهام (dividend-capture) کارآمد است؟
«شکار سود سهام» به معنای خرید دقیقاً پیش از تاریخ Ex-date، دریافت سود و فروش سهام پس از بازگشت قیمت به سطح اولیه است. این ایده یک ادعای قابل آزمون دارد. آزمون انجام شده: بررسی 78 رویداد Ex-dividend در میان پنجاه شرکت بزرگ پرداختکننده سود در شش ماه گذشته؛ که هر کدام از زمان بسته شدن بازار پیش از تاریخ Ex-date تا بازگشایی صبح روز Ex-date، بسته شدن روز Ex-date و همچنین یک، پنج و ده جلسه معاملاتی پس از آن، رصد شدهاند.
کد دقیق SQL پشت هر عدد
WITH rth AS (
SELECT ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
argMaxIf(toFloat64(close), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS close_px,
argMinIf(toFloat64(open), window_start, (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS open_px,
countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS bars
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'JNJ', 'KO', 'PG', 'XOM', 'CVX', 'JPM', 'HD', 'MCD',
'PEP', 'ABBV', 'MRK', 'PFE', 'VZ', 'T', 'CSCO', 'IBM', 'WMT', 'CAT',
'BAC', 'WFC', 'C', 'GS', 'MS', 'UNH', 'LLY', 'AMGN', 'BMY', 'GILD',
'TXN', 'QCOM', 'AVGO', 'ADP', 'LMT', 'RTX', 'HON', 'GE', 'MMM', 'UPS',
'LOW', 'TGT', 'COST', 'SBUX', 'NKE', 'DIS', 'CMCSA', 'DUK', 'SO', 'NEE')
AND window_start >= toDateTime(today() - 190)
GROUP BY ticker, d
HAVING bars > 200
),
seq AS (
SELECT ticker, d, open_px,
lagInFrame(close_px, 1) OVER w AS pre_close,
close_px AS ex_close,
leadInFrame(close_px, 1) OVER w AS c1,
leadInFrame(close_px, 5) OVER w AS c5,
leadInFrame(close_px, 10) OVER w AS c10
FROM rth
WINDOW w AS (PARTITION BY ticker ORDER BY d ROWS BETWEEN 1 PRECEDING AND 10 FOLLOWING)
),
ev AS (
SELECT s.ticker AS ticker, s.d AS ex_d, s.pre_close AS pre_close, s.open_px AS ex_open,
s.ex_close AS ex_close, s.c1 AS c1, s.c5 AS c5, s.c10 AS c10,
max(dv.cash_amount) AS div_amt
FROM seq s
JOIN global_markets.stocks_dividends dv ON dv.ticker = s.ticker AND dv.ex_dividend_date = s.d
WHERE dv.cash_amount > 0
AND dv.distribution_type = 'recurring'
AND s.d >= today() - 160
AND s.pre_close > 0 AND s.c1 > 0 AND s.c5 > 0 AND s.c10 > 0
GROUP BY s.ticker, s.d, s.pre_close, s.open_px, s.ex_close, s.c1, s.c5, s.c10
),
paths AS (
SELECT ticker, ex_d, pre_close, div_amt,
arrayJoin([('1 ex-day open', ex_open),
('2 ex-day close', ex_close),
('3 one session later', c1),
('4 five sessions later', c5),
('5 ten sessions later', c10)]) AS chk
FROM ev
)
SELECT chk.1 AS checkpoint,
count() AS events,
round(avg(100 * div_amt / pre_close), 2) AS avg_dividend_pct,
round(avg(100 * (chk.2 - pre_close) / pre_close), 2) AS avg_move_pct,
round(quantileDeterministic(0.5)(100 * (chk.2 - pre_close) / pre_close, cityHash64(ticker, ex_d)), 2) AS median_move_pct,
round(100 * countIf(chk.2 >= pre_close) / count(), 1) AS pct_back_above_pre_ex
FROM paths
GROUP BY checkpoint
ORDER BY checkpointمیانگین مبلغ پرداختی در اینجا معادل 0.65% قیمت پیش از Ex-date بود. در بازگشایی صبح روز Ex-date، میانگین حرکت سهام -0.5% نسبت به قیمت بسته شدن پیش از Ex-date (میانه -0.45%) بود و تنها 25.6% از رویدادها در قیمت بسته شدن قبلی یا بالاتر بازگشایی شدند: کاهش قیمت، واقعی و فوری است. آنچه در ادامه میآید، بخشی است که در تبلیغات این استراتژی نادیده گرفته میشود. تا پایان روز Ex-date، میانگین تغییرات قیمت در سطح -0.69% نسبت به قیمت شروع بود؛ یک جلسه بعد، -1.08%؛ پنج جلسه بعد، -1.24%؛ و ده جلسه بعد، -0.25% — در حالی که 44.9% از آنها به سطح شروع یا بالاتر بازگشتند.
منتظر ماندن برای «بازگشت» قیمت به معنای تحمل نوسانات عادی در طول ده جلسه معاملاتی است؛ نوساناتی که در هر دو جهت، بسیار بزرگتر از یک پرداخت 0.65% هستند. علاوه بر این، نگهداری کوتاهمدت باعث از دست رفتن مزیت مالیاتی مربوط به سود سهام واجد شرایط (qualified-dividend) میشود. سود سهام در واقع انتقالی از قیمت سهم به حساب شماست، نه پول رایگان؛ و مسیر حرکت قیمت پس از آن، متعلق به بازار است.
صندوقها و ETFها: چرا در تقویم پیشرو حضور ندارند
سرمایهگذارانِ درآمدزا اغلب به جای سهام تکشرکت، صندوقها را در سبد خود نگه میدارند. دلیل کمبود این صندوقها در تقویم پیشرو یک مسئله ساختاری است: اکثر ETFها مانند هیئتمدیره شرکتها، تاریخ ex-date را از مدتها قبل اعلام نمیکنند؛ توزیع سود آنها در زمان یا درست قبل از ex-date در سوابق ثبت میشود. با این حال، این صندوقها دارای یک آهنگ منظم هستند که برای برنامهریزی کافی است. در اینجا سیزده صندوق درآمدزای پرطرفدار، آخرین ex-date، فاصله معمول بین ex-dateها و تاریخ احتمالی بعدی بر اساس این آهنگ آورده شده است:
کد دقیق SQL پشت هر عدد
WITH hist AS (
SELECT ticker, ex_dividend_date, cash_amount, frequency,
dateDiff('day', lagInFrame(ex_dividend_date) OVER (PARTITION BY ticker ORDER BY ex_dividend_date), ex_dividend_date) AS gap_days
FROM global_markets.stocks_dividends
WHERE ticker IN ('SCHD', 'VYM', 'VIG', 'DVY', 'SPYD', 'JEPI', 'JEPQ', 'QYLD', 'SPHD', 'NOBL', 'DGRO', 'HDV', 'SPY')
AND cash_amount > 0
AND ex_dividend_date >= today() - 800
)
SELECT ticker,
any(frequency) AS payments_per_year,
toString(max(ex_dividend_date)) AS last_ex_date,
formatDateTime(max(ex_dividend_date), '%b %e') AS last_ex_label,
round(argMax(cash_amount, ex_dividend_date), 4) AS last_per_share_usd,
round(quantileDeterministicIf(0.5)(gap_days, cityHash64(ticker, ex_dividend_date), gap_days BETWEEN 5 AND 200)) AS typical_gap_days,
toString(max(ex_dividend_date) + toIntervalDay(round(quantileDeterministicIf(0.5)(gap_days, cityHash64(ticker, ex_dividend_date), gap_days BETWEEN 5 AND 200)))) AS implied_next_ex,
formatDateTime(max(ex_dividend_date) + toIntervalDay(round(quantileDeterministicIf(0.5)(gap_days, cityHash64(ticker, ex_dividend_date), gap_days BETWEEN 5 AND 200))), '%b %e') AS implied_next_label
FROM hist
GROUP BY ticker
HAVING countIf(gap_days BETWEEN 5 AND 200) > 0
ORDER BY implied_next_ex, tickerنزدیکترین مورد در این گروه، JEPI است که آخرین ex-date آن در Jul 1 با مبلغ $0.3872 به ازای هر سهم و با آهنگ 30 روزه بود که تاریخ ex-date بعدی آن را در نزدیکی Jul 31 قرار میدهد. دورترین مورد، HDV است که با آهنگ 91 روزه، تاریخ Oct 14 را نشان میدهد. ستون payments_per_year این گروهها را تقسیم میکند: صندوقهایی که سالانه دوازده بار سود توزیع میکنند، تقریباً هر چهار هفته یکبار ex-date دارند؛ صندوقهای چهاربار در سال نیز هر سه ماه یکبار و در ماههای پایان فصل توزیع سود انجام میدهند. تاریخهای استخراجشده را به عنوان تخمین در نظر بگیرید؛ تنها اطلاعیه شرکت اسپانسر قطعی است.
آیا این ماه ماه پرکاری است یا ماه کمکاری؟
تاریخهای Ex-dividend در طول سال به طور یکسان توزیع نشدهاند؛ میانگین سهسالهی رکوردها بر اساس ماههای تقویمی به شرح زیر است:
کد دقیق SQL پشت هر عدد
SELECT multiIf(toMonth(ex_dividend_date) = 1, '01 Jan', toMonth(ex_dividend_date) = 2, '02 Feb', toMonth(ex_dividend_date) = 3, '03 Mar',
toMonth(ex_dividend_date) = 4, '04 Apr', toMonth(ex_dividend_date) = 5, '05 May', toMonth(ex_dividend_date) = 6, '06 Jun',
toMonth(ex_dividend_date) = 7, '07 Jul', toMonth(ex_dividend_date) = 8, '08 Aug', toMonth(ex_dividend_date) = 9, '09 Sep',
toMonth(ex_dividend_date) = 10, '10 Oct', toMonth(ex_dividend_date) = 11, '11 Nov', '12 Dec') AS month,
round(count() / 3.0) AS ex_dates_per_year,
round(countIf(frequency = 4) / 3.0) AS quarterly_payers,
round(countIf(frequency = 12) / 3.0) AS monthly_payers
FROM global_markets.stocks_dividends
WHERE ex_dividend_date >= toStartOfMonth(today()) - INTERVAL 36 MONTH
AND ex_dividend_date < toStartOfMonth(today())
AND cash_amount > 0
GROUP BY month
ORDER BY monthماه های پایان فصل، بار اصلی را بر عهده دارند: ماه مارس میانگین 5605 تاریخهای Ex را دارد، ژوئن 5792، سپتامبر 4973 و دسامبر 6380؛ هر یک از این ماهها بیش از دو هزار پرداختکننده فصلی را در بر میگیرند (فقط در ژوئن 2640 مورد وجود دارد). ماه اول هر فصل، ماه کمکاری است؛ ژانویه میانگین 2043 و جولای 2683 را دارد که نصف یک ماه پایان فصل یا کمتر است. کفِ ماههای کمکار، پرداختکنندگان ماهانه هستند: 1470 از میانگین جولای مربوط به پرداختکنندگان ماهانه است که تقویم فصلی را کاملاً نادیده میگیرند. کم بودن لیست این هفته، ویژگی تقویم است و نه قضاوتی درباره بازار.
چرا تقویمها با هم متفاوت هستند و چگونه باید این یکی را خواند
این صفحه را با تقویم یک کارگزار مقایسه کنید؛ تفاوتهای جزئی مشاهده خواهید کرد. هر تقویم بر اساس اعلامیههای شرکتها ساخته میشود و منابع در سرعت دریافت اطلاعیهها، نمایش تاریخهای اصلاحشده و یا گنجاندن صندوقها، تراستها و فهرستهای خارجی در کنار شرکتهای عملیاتی، با هم متفاوت هستند (تعداد روزهای ذکر شده در بالا شامل همه آنها میشود؛ تنها جداول رتبهبندی شده دارای حداقل ارزش بازار هستند). زمانی که دو تقویم با هم اختلاف دارند، بیانیه رسمی شرکت ملاک نهایی است. جزئیات دقیق که بهصورت زنده محاسبه میشود:
کد دقیق SQL پشت هر عدد
SELECT countIf(ex_dividend_date > today()) AS future_ex_dates_declared,
countIf(ex_dividend_date > today() AND ex_dividend_date <= today() + 7) AS in_the_next_7_days,
countIf(ex_dividend_date > today() AND ticker IN ('SCHD', 'VYM', 'VIG', 'DVY', 'SPYD', 'JEPI', 'JEPQ', 'QYLD', 'SPHD', 'NOBL', 'DGRO', 'HDV', 'SPY')) AS fund_records_declared_ahead,
toString(max(ex_dividend_date)) AS furthest_declared_date,
formatDateTime(max(ex_dividend_date), '%b %e, %Y') AS furthest_declared_label
FROM global_markets.stocks_dividends
WHERE ex_dividend_date > today() - 1
AND cash_amount > 0در حال حاضر 3379 تاریخ آتی ex-dividend در دسترس است که 364 آنها در یک هفته آینده قرار دارد و اعلامیهها تا Nov 12, 2027 ادامه مییابند. در میان سیزده صندوق ذکر شده در بالا، تعداد تاریخهای ex-date اعلامشده از قبل برابر با 0 است؛ این شکاف ساختاری باعث میشود که برای پیشبینی تاریخ ex-date بعدی یک صندوق، به جای اعلامیهها، باید به روند زمانی (cadence) استناد کرد. هیئتمدیرهها در هر نوبت تنها یک جلسه را اعلام میکنند، بنابراین تقویمهای دوردست با انتشار اطلاعیهها تکمیل میشوند: تاریخهای نزدیک را معتبر و تاریخهای دور را موقتی در نظر بگیرید.
سوالات متداول تقویم ex-dividend
چگونه تاریخهای آتی ex-dividend را پیدا کنم؟
شرکتها برای هر سود نقدی، تاریخهای ex-dividend، تاریخ ثبت (record) و تاریخ پرداخت را اعلام میکنند که این اطلاعات وارد فیدهای دادههای بازار میشود. این صفحه تقویم را مستقیماً از طریق همان سوابق — شامل 3379 تاریخ آتی موجود — محاسبه و بهصورت هفتگی بازسازی میکند.
اگر در تاریخ ex-dividend سهمی را بخرم، سود آن را دریافت میکنم؟
خیر. تاریخ ex-dividend اولین روز معاملاتی است که سهم بدون حق دریافت سود معامله میشود. برای دریافت سود، باید سهم را در پایان روز معاملاتیِ پیش از تاریخ ex-date در اختیار داشته باشید؛ اگر در تاریخ ex-date خرید کنید، سود به فروشنده تعلق میگیرد.
آیا برای دریافت سود نقدی نیاز به انجام اقدامی دارم؟
خیر. اگر سهام را تا پایان روز معاملاتیِ پیش از تاریخ ex-date نگه دارید، وجه سود در تاریخ پرداخت بهطور خودکار به حساب کارگزاری شما واریز میشود؛ نیازی به تکمیل فرم، درخواست یا تماس نیست. تنها اقدام اختیاری، استفاده از DRIP است که در آن کارگزار، مبلغ سود را مجدداً برای خرید سهام بیشتر سرمایهگذاری میکند.
آیا خرید سهم درست قبل از تاریخ ex-dividend برای دریافت سود، استراتژی موفقی است؟
دادهها خلاف این موضوع را نشان میدهند. در بررسی 78 رویداد ex-dividend در شرکتهای با ارزش بازار بسیار بالا (mega-cap) طی شش ماه گذشته، قیمت بازگشایی میانگین سهام -0.5% نسبت به قیمت بستهشدن پیش از ex-date تغییر کرد، در حالی که میانگین سود پرداختشده معادل 0.65% قیمت بود؛ ده جلسه بعد، تنها 44.9% از آنها به قیمت اولیه یا بالاتر بازگشتند. همچنین، این دوره کوتاه نگهداری، شرط مدتزمان نگهداری برای «سود واجد شرایط» (qualified-dividend) را برآورده نمیکند.
آیا نرخ مالیات بر سود نقدی بسته به زمان خرید متفاوت است؟
بله، در حسابهای مشمول مالیات در ایالات متحده. یک سود نقدی تنها زمانی «واجد شرایط» (qualified) محسوب میشود که در نرخهای مالیات بر سود سرمایه بلندمدت مشمول شود؛ این امر مشروط به آن است که شما سهام را بیش از 60 روز در بازه 121 روزهای که از 60 روز قبل از تاریخ ex-dividend شروع میشود، نگه دارید. معاملهای که در آن بلافاصله قبل از تاریخ ex-date خرید و بلافاصله بعد از آن فروش انجام شود، این بازه زمانی را از دست میدهد و سود به عنوان درآمد عادی مشمول مالیات میشود. توزیعات REIT و بسیاری از صندوقها نیز بدون توجه به زمان خرید، به عنوان درآمد عادی مشمول مالیات هستند. این یک توضیح فنی است، نه مشاوره مالیاتی.
پروفایل سود نقدی بر اساس نماد
هر شرکت با ارزش بازار بالا در این تقویم، پروفایل سود نقدی مشخص خود را دارد. این پروفایل شامل بازده فعلی (محاسبه شده بر اساس آخرین قیمت بسته شدن)، تاریخچه کامل پرداختها طبق سوابق، روند رشد و عملکرد معاملاتی در روزهای بدون سود نقدی (ex-dividend) است:
AAPL, ABBV, ABT, ACN, ADP, AMGN, AVGO, AXP, BAC, BLK, BMY, C, CAT, CL, CMCSA, COP, COST, CRM, CSCO, CVX, DE, DHR, DUK, GE, GILD, GIS, GOOGL, GS, HD, HON, IBM, JNJ, JPM, KMB, KO, LIN, LLY, LMT, LOW, MA, MCD, MDLZ, MDT, META, MMM, MO, MRK, MS, MSFT, NEE, NKE, O, ORCL, PEP, PFE, PG, PM, QCOM, RTX, SBUX, SO, SPGI, T, TGT, TMO, TXN, UNH, UNP, USB, V, VZ, WFC, WMT, XOM.
تمام جداول بالا، پرسوجوهای ذخیرهشده و نسخهبندیشده بر روی سوابق اعلامشده سود نقدی و نمودارهای دقیق دقیقهای هستند. میتوانید کد SQL زیر هر پنل را گسترش دهید یا خودتان تقویم را در ترمینال Strasmore فیلتر کنید.