Trailing اور Forward Dividend Yield کا فرق
Trailing yield گزشتہ بارہ ماہ کی ادا شدہ dividends گنتی ہے، جبکہ forward yield حالیہ اعلان کردہ payment کو سالانہ بناتی ہے۔ اسی لیے دو screeners مختلف نتائج دکھا سکتے ہیں۔
Trailing dividend yield اور forward dividend yield ایک ہی سوال کے دو جواب ہیں، اور دونوں میں اصل فرق numerator میں ہوتا ہے۔ Trailing yield کو عموماً TTM یعنی trailing twelve months لکھا جاتا ہے۔ اس میں کمپنی کی جانب سے گزشتہ ایک سال کے دوران حقیقتاً ادا کیے گئے dividends کا مجموعہ لیا جاتا ہے۔ Forward yield میں حالیہ اعلان کردہ payment کو سالانہ payments کی تعداد سے ضرب دی جاتی ہے۔ دونوں کا denominator ایک ہی share price ہوتا ہے۔ گزشتہ بارہ ماہ کے دوران payout میں جب بھی تبدیلی آئے، تو ایک ہی وقت میں ایک ہی stock کے لیے یہ دونوں طریقے مختلف yield دکھاتے ہیں۔
اس ratio کی arithmetic dividend yield کا حساب کیسے لگائیں سے متعلق ہے۔ یہ صفحہ اوپر والے حصے میں استعمال ہونے والے انتخاب کی وضاحت کرتا ہے: source نے numerator میں dividend کی کون سی رقم رکھی، اور ایک ہی دوپہر میں دو screeners ایک ہی ticker کے لیے دو مختلف yields کیوں دکھاتے ہیں۔
trailing twelve month dividend yield کیا ہے؟
Trailing yield گزشتہ 365 دنوں کے اندر آنے والی ex-dividend date کے ساتھ ہر cash dividend کو جمع کرتی ہے، پھر اس مجموعے کو موجودہ قیمت سے تقسیم کیا جاتا ہے۔ ex-dividend date وہ دن ہے جب stock آئندہ payment کے حق کے بغیر trading شروع کرتا ہے۔ زیادہ تر data providers dividend کو وقت کے لحاظ سے درج کرنے کے لیے اسی تاریخ کو استعمال کرتے ہیں۔
Trailing figure میں کچھ بھی تخمینہ شدہ نہیں ہوتا۔ یہ اس cash کا ریکارڈ ہے جو پہلے ہی منتقل ہو چکی ہے، اور اس payout کی درست پیمائش ہے جو owner کو واقعی موصول ہوئی۔ اس کی کمزوری بھی اسی طاقت کا عکس ہے: trailing yield ایسے payout کو ظاہر کرتی ہے جو اب برقرار نہ رہا ہو۔ اگر کسی company نے گزشتہ ماہ اپنا quarterly dividend دوبارہ مقرر کیا ہے، تو اس کی trailing window میں پرانی شرح پر اب بھی تین payments شامل ہوں گی، اور مزید نو ماہ تک شامل رہیں گی۔
forward dividend yield کیا ہے؟
Forward yield تازہ ترین اعلان کردہ ادائیگی کو سالانہ بنیاد پر ظاہر کرتا ہے۔ اس کے لیے تازہ ترین dividend کو ادائیگی کی frequency سے ضرب دے کر اسی share price پر تقسیم کیا جاتا ہے۔ جس کمپنی کا dividend سہ ماہی بنیاد پر ادا ہوتا ہو اور تازہ ترین اعلان $0.50 فی share ہو، اس کا forward rate $2.00 ہوگا۔ ماہانہ ادائیگی کرنے والی کمپنی میں $0.25 کی ماہانہ ادائیگی $3.00 بنتی ہے۔
یہ ایک ایسے اندازے پر مبنی projection ہے جس میں صرف ایک observation استعمال ہوتی ہے۔ اس میں فرض کیا جاتا ہے کہ اگلی ادائیگیاں بھی آخری ادائیگی جیسی ہوں گی۔ اس measure کا فائدہ یہ ہے کہ یہ موجودہ rate کو فوراً ظاہر کرتا ہے۔ جب کوئی کمپنی dividend بڑھاتی ہے تو پہلے ہی زیادہ چیک کے ساتھ نیا rate forward figure میں شامل ہو جاتا ہے، جبکہ trailing figure کو اسے مکمل طور پر شامل کرنے کے لیے پورے چار quarters درکار ہوتے ہیں۔
آٹھ معروف dividend-paying stocks پر trailing بمقابلہ forward dividend yield
ذیل کا پینل آٹھ بڑے dividend-paying stocks کے لیے ایک ہی حالیہ session price کی بنیاد پر دونوں calculations کرتا ہے۔ trailing column میں گزشتہ بارہ ماہ کے recurring cash dividends کا مجموعہ شامل ہے۔ forward column میں تازہ ترین dividend کو اس کے ساتھ درج payment frequency کے مطابق سالانہ بنیاد پر تبدیل کیا گیا ہے۔
ہر عدد کے پیچھے موجود درست SQL
WITH last_px AS (
SELECT ticker,
argMax(close, window_start) AS close_price
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('ABBV', 'CVX', 'JNJ', 'KO', 'MCD', 'MSFT', 'PEP', 'PG')
AND window_start >= now() - INTERVAL 10 DAY
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY ticker
),
paid AS (
SELECT ticker,
sum(cash_amount) AS ttm_cash,
count() AS checks_in_window,
argMax(cash_amount, ex_dividend_date) AS latest_cash,
argMax(frequency, ex_dividend_date) AS pay_frequency
FROM global_markets.stocks_dividends
WHERE ticker IN ('ABBV', 'CVX', 'JNJ', 'KO', 'MCD', 'MSFT', 'PEP', 'PG')
AND distribution_type = 'recurring'
AND cash_amount > 0
AND ex_dividend_date > today() - INTERVAL 1 YEAR
AND ex_dividend_date <= today()
GROUP BY ticker
)
SELECT p.ticker AS ticker,
round(toFloat64(d.ttm_cash) / toFloat64(p.close_price) * 100, 2) AS trailing_yield_pct,
round(toFloat64(d.latest_cash) * d.pay_frequency / toFloat64(p.close_price) * 100, 2) AS forward_yield_pct,
round((toFloat64(d.latest_cash) * d.pay_frequency - toFloat64(d.ttm_cash))
/ toFloat64(p.close_price) * 100, 2) AS forward_minus_trailing_pp,
d.checks_in_window AS checks_in_window,
round(toFloat64(p.close_price), 2) AS share_price
FROM last_px AS p
INNER JOIN paid AS d ON p.ticker = d.ticker
ORDER BY forward_minus_trailing_pp DESCRows کو دونوں طریقوں سے حاصل ہونے والے نتائج کے فرق کے مطابق ترتیب دیا گیا ہے۔ فہرست کے اوپر PEP کی forward yield 4.24% ہے، جبکہ trailing yield 4.12% ہے۔ فہرست کے آخر میں MSFT کی forward yield 0.78% اور trailing yield 0.77% ہے۔ کمپنیاں وہی ہیں، prices وہی ہیں، مگر دونوں طریقے جائز ہیں۔
Checks column اس فرق کا نسبتاً خاموش سبب ہے۔ rolling 365-day window چار quarters کے برابر نہیں ہوتی۔ ہر سال ex-dates میں چند دن کا فرق آ سکتا ہے۔ اگر کسی window میں پانچویں check بھی شامل ہو جائے تو trailing figure بڑھ جاتی ہے، حالانکہ declared rate میں کوئی تبدیلی نہیں ہوئی ہوتی۔
dividend reset سے دونوں readings پر کیا اثر پڑتا ہے
3M نے 2024 میں اپنے health care business کی علیحدگی کے ساتھ سہ ماہی dividend کو reset کیا۔ اس کے بعد ختم ہونے والے 26 ماہ دونوں conventions کو track کرتے ہیں، اور ان کے ساتھ declared quarterly payment بھی دکھائی گئی ہے۔
ہر عدد کے پیچھے موجود درست SQL
WITH px AS (
SELECT toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York'))) AS month_start,
max(toDate(toTimeZone(window_start, 'America/New_York'))) AS last_day,
argMax(close, window_start) AS close_price
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'MMM'
AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2024-06-01')
AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-07-31')
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY month_start
),
dv AS (
SELECT ex_dividend_date, cash_amount
FROM global_markets.stocks_dividends
WHERE ticker = 'MMM'
AND distribution_type = 'recurring'
AND frequency = 4
AND cash_amount > 0
AND ex_dividend_date >= toDate('2023-05-01')
)
SELECT formatDateTime(px.month_start, '%Y-%m') AS month,
formatDateTimeInJodaSyntax(px.month_start, 'MMM yyyy') AS month_label,
round(toFloat64(argMax(dv.cash_amount, dv.ex_dividend_date)), 2) AS declared_quarterly_usd,
round(sumIf(toFloat64(dv.cash_amount), dv.ex_dividend_date > px.last_day - INTERVAL 1 YEAR)
/ toFloat64(any(px.close_price)) * 100, 2) AS trailing_yield_pct,
round(toFloat64(argMax(dv.cash_amount, dv.ex_dividend_date)) * 4
/ toFloat64(any(px.close_price)) * 100, 2) AS forward_yield_pct,
round(abs(toFloat64(argMax(dv.cash_amount, dv.ex_dividend_date)) * 4
- sumIf(toFloat64(dv.cash_amount), dv.ex_dividend_date > px.last_day - INTERVAL 1 YEAR))
/ toFloat64(any(px.close_price)) * 100, 2) AS gap_abs_pp
FROM px, dv
WHERE dv.ex_dividend_date <= px.last_day
GROUP BY px.month_start, px.last_day
ORDER BY px.month_startJun 2024 میں declared payment $0.7 تھی، جبکہ پرانے rate پر کی گئی تین payments اب بھی trailing window میں شامل تھیں۔ Trailing yield 5.1% تھی۔ Forward yield 2.74% تھی۔ ایک ہی stock پر، ایک ہی دن، اور دونوں fractions میں یکساں price کے ساتھ، دونوں conventions کے درمیان 2.36 percentage points کا فرق تھا۔ اس ماہ trailing yield کے لحاظ سے ترتیب دی گئی screen نے 3M کو اس cash پر rank کیا جو وہ اس rate پر ادا کرنا پہلے ہی بند کر چکا تھا۔ دونوں اعداد غلط نہیں تھے؛ وہ مختلف سوالات کے جواب دیتے ہیں۔
اس کے بعد gap column چار quarters کے دوران کم ہوتا جاتا ہے، کیونکہ پرانی payments window سے باہر نکلتی رہتی ہیں۔ Jul 2026 تک readings 1.71% trailing اور 1.77% forward تھیں، اور ان کے درمیان 0.06 percentage points کا فرق تھا۔ Convergence معمول کی حالت ہے۔ فرق صرف اس وقت پیدا ہوتا ہے جب payout تبدیل ہو۔ مارکیٹ میں dividend میں اضافے اور کٹوتیوں کا احاطہ اسی صورتِ حال سے ہوتا ہے، جبکہ 3M کا dividend record ہر payment کو الگ track کرتا ہے۔
ماہانہ ادائیگیاں، بارہ چیکس اور کبھی کبھار تیرہ
Realty Income سال میں کئی بار اپنی ماہانہ ادائیگی معمولی increments میں بڑھاتا ہے، جس سے اس کا forward rate گزشتہ سال کے مقابلے میں معمولی طور پر بلند رہتا ہے۔ چیکس کا کالم ہر reading پر یہ شمار کرتا ہے کہ trailing window میں حقیقتاً کتنی ادائیگیاں شامل ہیں۔
ہر عدد کے پیچھے موجود درست SQL
WITH px AS (
SELECT toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York'))) AS month_start,
max(toDate(toTimeZone(window_start, 'America/New_York'))) AS last_day,
argMax(close, window_start) AS close_price
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'O'
AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2024-08-01')
AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-07-31')
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY month_start
),
dv AS (
SELECT ex_dividend_date, cash_amount
FROM global_markets.stocks_dividends
WHERE ticker = 'O'
AND distribution_type = 'recurring'
AND frequency = 12
AND cash_amount > 0
AND ex_dividend_date >= toDate('2023-07-01')
)
SELECT formatDateTime(px.month_start, '%Y-%m') AS month,
formatDateTimeInJodaSyntax(px.month_start, 'MMM yyyy') AS month_label,
round(toFloat64(argMax(dv.cash_amount, dv.ex_dividend_date)), 4) AS declared_monthly_usd,
countIf(dv.ex_dividend_date > px.last_day - INTERVAL 1 YEAR) AS checks_in_window,
round(sumIf(toFloat64(dv.cash_amount), dv.ex_dividend_date > px.last_day - INTERVAL 1 YEAR)
/ toFloat64(any(px.close_price)) * 100, 2) AS trailing_yield_pct,
round(toFloat64(argMax(dv.cash_amount, dv.ex_dividend_date)) * 12
/ toFloat64(any(px.close_price)) * 100, 2) AS forward_yield_pct,
round(abs(toFloat64(argMax(dv.cash_amount, dv.ex_dividend_date)) * 12
- sumIf(toFloat64(dv.cash_amount), dv.ex_dividend_date > px.last_day - INTERVAL 1 YEAR))
/ toFloat64(any(px.close_price)) * 100, 2) AS gap_abs_pp
FROM px, dv
WHERE dv.ex_dividend_date <= px.last_day
GROUP BY px.month_start, px.last_day
ORDER BY px.month_startAug 2024 میں window میں 11 ادائیگیاں شامل تھیں، اور 5.08% کے forward کے مقابلے میں 4.57% trailing ریکارڈ ہوا۔ Jul 2026 میں declared ماہانہ rate $0.271 کے حساب سے 13 ادائیگیاں شامل تھیں، جبکہ 5.09% کے forward کے مقابلے میں 5.49% trailing ریکارڈ ہوا؛ دونوں کے درمیان فرق 0.4 points تھا۔ جب rolling year میں تیرہواں check شامل ہو جاتا ہے تو dividend میں کوئی تبدیلی نہ ہونے کے باوجود trailing figure تقریباً بارہویں حصے تک بڑھ جاتا ہے۔ ماہانہ dividend stocks میں schedule کا احاطہ کیا گیا ہے، جبکہ Realty Income کا ادائیگی ریکارڈ ہر check کی تفصیل فراہم کرتا ہے۔
مارکیٹ میں یہ conventions ایک دوسرے سے کتنے مختلف ہیں؟
ایک stock صرف ایک مثال ہوتا ہے۔ ذیل کا block ایک ارب ڈالر سے زیادہ market value رکھنے والے ہر US-listed payer کے لیے دونوں calculations پیش کرتا ہے، اور انہیں اس بنیاد پر گروپ کرتا ہے کہ ہر payer کتنی بار ادائیگی کرتا ہے۔
ہر عدد کے پیچھے موجود درست SQL
WITH universe AS (
SELECT ticker,
argMax(price, date) AS last_price
FROM global_markets.stocks_ratios
WHERE date = (SELECT max(date) FROM global_markets.stocks_ratios)
AND price >= 5
AND market_cap >= 1000000000
GROUP BY ticker
),
paid AS (
SELECT ticker,
sum(cash_amount) AS ttm_cash,
argMax(cash_amount, ex_dividend_date) AS latest_cash,
argMax(frequency, ex_dividend_date) AS pay_frequency
FROM global_markets.stocks_dividends
WHERE distribution_type = 'recurring'
AND cash_amount > 0
AND frequency IN (1, 2, 4, 12)
AND ex_dividend_date > today() - INTERVAL 1 YEAR
AND ex_dividend_date <= today()
GROUP BY ticker
)
SELECT multiIf(d.pay_frequency = 12, 'monthly',
d.pay_frequency = 4, 'quarterly',
d.pay_frequency = 2, 'semi-annual',
'annual') AS schedule,
count() AS payers,
round(quantileDeterministic(0.5)(toFloat64(d.ttm_cash) / toFloat64(u.last_price) * 100,
cityHash64(u.ticker)), 2) AS median_trailing_pct,
round(quantileDeterministic(0.5)(toFloat64(d.latest_cash) * d.pay_frequency / toFloat64(u.last_price) * 100,
cityHash64(u.ticker)), 2) AS median_forward_pct,
round(quantileDeterministic(0.5)(abs(toFloat64(d.latest_cash) * d.pay_frequency - toFloat64(d.ttm_cash))
/ toFloat64(u.last_price) * 100,
cityHash64(u.ticker)), 3) AS median_gap_pp,
round(quantileDeterministic(0.9)(abs(toFloat64(d.latest_cash) * d.pay_frequency - toFloat64(d.ttm_cash))
/ toFloat64(u.last_price) * 100,
cityHash64(u.ticker)), 3) AS p90_gap_pp,
round(100 * countIf(abs(toFloat64(d.latest_cash) * d.pay_frequency - toFloat64(d.ttm_cash))
/ toFloat64(u.last_price) * 100 >= 0.5) / count(), 1) AS pct_gap_over_half_point
FROM universe AS u
INNER JOIN paid AS d ON u.ticker = d.ticker
GROUP BY schedule
ORDER BY payers DESCسب سے بڑا گروپ quarterly payers پر مشتمل ہے، جس میں 1128 names شامل ہیں۔ اس گروپ کی median trailing yield 1.93% ہے، جبکہ median forward yield 2.03% ہے۔ median سطح پر دونوں conventions کے درمیان فرق 0.03 percentage points ہے۔ اس distribution میں ایک tail بھی موجود ہے: اس گروپ کے 8.7% names میں دونوں yields کے درمیان کم از کم نصف percentage point کا فرق ہے، جبکہ ninetieth-percentile gap 0.357 points ہے۔ 3% yield میں نصف percentage point پورے عدد کا چھٹا حصہ بنتا ہے۔ یہی فرق کسی screen پر کسی name کے سامنے آنے یا نظرانداز ہونے کا سبب بن سکتا ہے۔ monthly گروپ، جس میں 21 names شامل ہیں، کا median gap 0.484 points ہے۔
اگر توجہ طریقۂ کار کے بجائے yield کی سطح پر ہو تو اچھی dividend yield کسے سمجھا جاتا ہے مارکیٹ کی distribution کو ایک جگہ جمع کرتا ہے، جبکہ dividend yield کیا ہوتی ہے خود ratio سے آغاز کرتا ہے۔
دو screener مختلف dividend yield کیوں دکھاتے ہیں؟
- طریقۂ حساب۔ ایک provider تازہ ترین اعلان کو annualize کرتا ہے، جبکہ دوسرا گزشتہ بارہ ماہ کی ادائیگیوں کا مجموعہ لیتا ہے۔ اسی اختلاف پر اس صفحے کی باقی بحث مبنی ہے۔
- مدت کہاں ختم ہوتی ہے۔ rolling 365 دنوں میں quarterly payer کی چار یا پانچ ادائیگیاں آ سکتی ہیں، جبکہ monthly payer کی بارہ یا تیرہ۔
- Special dividends۔ one-time payment ایک سال تک trailing window میں شامل رہتی ہے۔ کچھ providers اسے numerator میں برقرار رکھتے ہیں، جبکہ کچھ اسے نکال دیتے ہیں۔ بڑی special dividend trailing figure کو نمایاں طور پر بدل سکتی ہے۔
- بنیادی قیمت۔ گزشتہ رات کے closing price پر calculated yield، دوپہر 2 بجے کی قیمت پر calculated yield سے مختلف ہو سکتی ہے۔
- کمپنی کا اپنا صفحہ۔ Investor relations sites تقریباً ہمیشہ declared annual rate شائع کرتی ہیں۔ یہی forward numerator ہوتا ہے، عموماً ایسی قیمت کے مقابل جس میں live update نہیں ہوتا۔ Fund sheets 30 day SEC yield یا distribution yield quote کرتی ہیں۔ یہ دونوں مزید الگ conventions ہیں۔
یہ اعداد کیسے تیار کیے جاتے ہیں
یہاں trailing yield میں ہر reading کے اختتام پر گزشتہ 365 دنوں کے دوران ex-dividend date رکھنے والے recurring cash dividends کا مجموعہ لیا جاتا ہے، اور اسے اسی session کی closing price پر تقسیم کیا جاتا ہے۔ Forward yield میں تازہ ترین recurring payment کو اس کے ساتھ درج payment frequency سے ضرب دی جاتی ہے، پھر اسے اسی قیمت پر تقسیم کیا جاتا ہے۔ Non-recurring distributions دونوں حسابات سے خارج رہتی ہیں۔ Prices نیویارک کے وقت کے مطابق regular session کے minute bars سے حاصل کی جاتی ہیں۔ جو providers specials شامل کرتے ہیں، یا مختلف payment کو annualize کرتے ہیں، وہ انہی بنیادی records سے مختلف figures حاصل کرتے ہیں۔
Trailing بمقابلہ forward dividend yield کے بارے میں عام سوالات
TTM dividend yield کیا ہوتی ہے؟
TTM سے مراد trailing twelve months ہے۔ TTM dividend yield میں گزشتہ ایک سال کے دوران ادا کیے گئے تمام dividends کو جمع کیا جاتا ہے اور اس مجموعے کو موجودہ share price سے تقسیم کیا جاتا ہے۔ اس طرح وہ cash measure ہوتا ہے جو پہلے ہی ادا کیا جا چکا ہے، نہ کہ وہ rate جس کی توقع کی جا رہی ہو۔
Trailing یا forward dividend yield میں سے کون سی بہتر ہے؟
ان میں سے کوئی ایک لازماً درست نہیں۔ Trailing yield یہ measure کرتی ہے کہ کسی holder نے گزشتہ ایک سال میں کیا وصول کیا، جبکہ forward yield موجودہ declared rate کو سالانہ بنیاد پر ظاہر کرتی ہے۔ جو شخص پہلے سے وصول شدہ income کا موازنہ کر رہا ہو، اسے trailing figure درکار ہوتی ہے۔ جو شخص یہ جاننا چاہتا ہو کہ کمپنی آج کون سا rate ادا کر رہی ہے، اسے forward figure دیکھنی چاہیے۔
میرے broker کی دکھائی ہوئی dividend yield کمپنی کے investor page سے مختلف کیوں ہے؟
Investor relations pages عموماً declared annual rate شائع کرتے ہیں۔ یہ forward numerator ہوتا ہے اور اکثر ایسے price کے مقابلے میں دکھایا جاتا ہے جو live نہیں ہوتا۔ اس کے برعکس broker یا screener گزشتہ twelve months کی dividends جمع کر رہا ہو سکتا ہے۔ ایک ہی وقت میں دونوں numbers حساب کے لحاظ سے درست ہو سکتے ہیں۔
کیا dividend cut کا اثر trailing yield میں فوراً نظر آتا ہے؟
نہیں۔ نئی کم شرح پہلی کم ادائیگی کے ساتھ forward figure میں شامل ہو جاتی ہے، جبکہ trailing figure میں یہ اثر اگلے ایک سال کے دوران ایک ایک payment کے ساتھ شامل ہوتا ہے۔ اوپر دی گئی 3M window میں دونوں conventions کے درمیان 2.36 points کا فرق Jun 2024 میں تھا، جو Jul 2026 تک بڑھ کر 0.06 points ہو گیا۔
اوپر دی گئی ہر figure filed dividend records اور حقیقی session prices پر مبنی stored query سے حاصل کی گئی ہے۔ SQL پڑھنے کے لیے کوئی بھی panel کھولیں، یا Strasmore terminal پر اپنے زیرِمطالعہ ticker کے لیے یہی دونوں calculations چلائیں۔