Strasmore Research

Price Return بمقابلہ Total Return: اصل فرق

S&P 500 کا headline index dividends شامل نہیں کرتا۔ 20 سال میں Price return اور Total return کے compounding فرق اور ہر version کے استعمال کو سمجھیں۔

Price return اور total return کے درمیان فرق یہ ہے کہ market chart کیا دکھاتا ہے اور اسی position کو برقرار رکھنے والے سرمایہ کار نے حقیقت میں کیا کمایا۔ Price return صرف قیمت میں ہونے والی تبدیلی کو شمار کرتا ہے۔ Total return میں ہر dividend کو اس قیمت پر دوبارہ شامل کیا جاتا ہے جو ex-dividend date پر لاگو تھی۔ اس طرح ہر ادائیگی ان shares کے ساتھ compound ہوتی رہتی ہے جن سے وہ حاصل ہوئی تھی۔

خبروں میں بیان کیا جانے والا S&P 500 کا headline level ایک price index ہے۔ اس کا total-return twin انہی کمپنیوں کو برقرار رکھتا ہے اور dividends کو دوبارہ سرمایہ کاری میں لگا دیتا ہے۔ ایک سال کے دوران دونوں تقریباً یکساں دکھائی دیتے ہیں۔ بیس سال میں یہ بالکل مختلف نتائج بیان کرتے ہیں، اور ان کے درمیان فرق annual yield کے اندازے سے کہیں زیادہ ہوتا ہے۔

price return اور total return میں کیا فرق ہے؟

Price return اختتامی قیمت کو ابتدائی قیمت سے تقسیم کر کے، پھر ایک منہا کرنے سے حاصل ہوتا ہے۔ ٹیلی وژن پر دکھائی جانے والی ہر index level اور ہر وہ price chart جسے آپ نے کبھی اسکرول کیا ہے، اسی عدد کو ظاہر کرتی ہے۔

Total return میں بھی یہی calculation کی جاتی ہے، لیکن ہر cash dividend کو اس کے ex-dividend date پر موجود قیمت کے حساب سے مزید shares خریدنے کے لیے استعمال کیا جاتا ہے۔ Fund performance tables اور وہ benchmark indexes جن کے مقابلے میں ان funds کی کارکردگی ناپی جاتی ہے، اسی طریقے کو استعمال کرتے ہیں۔

ایک فرضی مثال سے طریقہ واضح ہوتا ہے۔ $100 پر ایک share خریدیں جو سالانہ $2 dividend دیتا ہے، پھر ایک سال بعد اسے $105 پر فروخت کریں۔ Price return 5% ہوگا۔ Total return تقریباً 7% ہوگا۔ پہلا سال غیر معمولی نہیں۔ اصل فرق compounding پیدا کرتی ہے، اسی لیے اسے الگ وضاحت کی ضرورت ہے: reinvest کیا گیا $2 ایک اور share کا کچھ حصہ خریدتا ہے، یہ حصہ اگلے سال اپنا dividend حاصل کرتا ہے، اور دونوں سلسلوں کے نتائج بڑھتی ہوئی رفتار سے ایک دوسرے سے دور ہوتے جاتے ہیں۔

Data دیکھنے سے پہلے ایک وضاحت ضروری ہے۔ Total return swap ایک derivative contract ہے جس میں ایک فریق کسی asset کے مکمل معاشی فوائد اور نقصانات دوسرے فریق کو منتقل کرتا ہے، اور اس کے بدلے financing rate حاصل کرتا ہے۔ اس کا نام ذیل میں بیان کیے گئے index convention سے ملتا ہے، لیکن دونوں کے درمیان اس کے علاوہ کوئی تعلق نہیں۔ اس صفحے کے باقی حصے میں indexes اور funds ہی زیرِ بحث ہیں۔

S&P 500 میں فرق کتنا بڑا ہے؟

2005 کے اختتام پر سب سے بڑے S&P 500 tracker میں $10,000 کی سرمایہ کاری کی گئی اور اسے 31 جولائی 2026 تک برقرار رکھا گیا۔ پہلی لائن ہر dividend موصول ہوتے ہی خرچ کر دیتی ہے۔ دوسری لائن ہر dividend کو اسی دن کی closing price پر دوبارہ invest کرتی ہے۔

استفسار کریںS&P 500 tracker میں $10,000: صرف قیمت بمقابلہ دوبارہ سرمایہ کاری شدہ dividends، 2006 کے اختتام سے جولائی 2026 تک
ہر عدد کے پیچھے موجود درست SQL
WITH daily AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMax(toFloat64(close), window_start) AS close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2005-12-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 d
),
base AS (
    SELECT argMax(close, d) AS start_px
    FROM daily
    WHERE d <= toDate('2005-12-31')
),
year_end AS (
    SELECT toYear(d) AS year,
           argMax(close, d) AS close,
           max(d) AS last_day
    FROM daily
    WHERE d >= toDate('2006-01-01')
    GROUP BY year
),
reinvest AS (
    SELECT dv.ex_dividend_date AS d,
           log(1 + toFloat64(dv.cash_amount) / dl.close) AS log_growth
    FROM global_markets.stocks_dividends AS dv
    INNER JOIN daily AS dl ON dl.d = dv.ex_dividend_date
    WHERE dv.ticker = 'SPY'
      AND dv.cash_amount > 0
      AND dv.ex_dividend_date >= toDate('2006-01-01')
      AND dv.ex_dividend_date <= toDate('2026-07-31')
)
SELECT ye.year AS year,
       round(10000 * ye.close / any(b.start_px)) AS price_only_usd,
       round(10000 * ye.close / any(b.start_px) * exp(sum(ri.log_growth))) AS reinvested_usd,
       round(100 * (1 - exp(-sum(ri.log_growth))), 1) AS dividend_share_pct
FROM year_end AS ye, reinvest AS ri, base AS b
WHERE ri.d <= ye.last_day
GROUP BY ye.year, ye.close
ORDER BY year
Run this yourself

صرف price پر مبنی لائن $59956 پر ختم ہوتی ہے۔ دوبارہ invest کیے گئے dividends والی لائن $85775 پر ختم ہوتی ہے۔ Dividends اس اختتامی balance کا 30.1% بنتے ہیں، اور اس کا کوئی حصہ price chart پر نظر نہیں آتا۔

چارٹ کا بایاں کنارا وہ مقام ہے جہاں یہ فرق اکثر لوگوں کی نظر سے چوک جاتا ہے۔ 2007 کے اختتام پر دونوں لائنیں بالترتیب $11755 اور $11971 پر تھیں، جبکہ dividends balance کے 1.8% کے برابر تھے۔ پہلے سال کا اتنا معمولی فرق آسانی سے rounding detail سمجھا جا سکتا ہے۔ لیکن بیس سال تک یہی rounding detail ہر بار پچھلے فرق پر compound ہوتی رہتی ہے، اور دائیں کنارے پر یہی عمل بڑا spread پیدا کرتا ہے۔

کیا وقت کے ساتھ یہ فرق بڑھتا رہتا ہے؟

ایک ہی fund، ایک ہی اختتامی تاریخ، مگر آغاز کی پانچ مختلف تاریخیں۔

استفسار کریںHolding period کے لحاظ سے price return بمقابلہ total return: S&P 500 tracker، 31 جولائی 2026 کو ختم ہونے والی مدتیں
ہر عدد کے پیچھے موجود درست SQL
WITH daily AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMax(toFloat64(close), window_start) AS close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2006-07-31')
      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 d
),
spans AS (
    SELECT y AS years,
           concat(toString(y), '-year') AS horizon,
           subtractYears(toDate('2026-07-31'), y) AS start_date
    FROM (SELECT arrayJoin([1, 3, 5, 10, 20]) AS y)
),
divs AS (
    SELECT dv.ex_dividend_date AS d,
           log(1 + toFloat64(dv.cash_amount) / dl.close) AS log_growth
    FROM global_markets.stocks_dividends AS dv
    INNER JOIN daily AS dl ON dl.d = dv.ex_dividend_date
    WHERE dv.ticker = 'SPY'
      AND dv.cash_amount > 0
      AND dv.ex_dividend_date <= toDate('2026-07-31')
),
endpoints AS (
    SELECT s.horizon AS horizon,
           s.years AS years,
           argMin(dl.close, dl.d) AS start_px,
           argMax(dl.close, dl.d) AS end_px
    FROM spans AS s, daily AS dl
    WHERE dl.d >= s.start_date
    GROUP BY s.horizon, s.years
),
reinvest AS (
    SELECT s.years AS years,
           exp(sum(dvs.log_growth)) AS factor
    FROM spans AS s, divs AS dvs
    WHERE dvs.d > s.start_date
    GROUP BY s.years
)
SELECT e.horizon AS horizon,
       round(100 * (e.end_px / e.start_px - 1), 1) AS price_return_pct,
       round(100 * (e.end_px / e.start_px * r.factor - 1), 1) AS total_return_pct,
       round(100 * (e.end_px / e.start_px) * (r.factor - 1), 1) AS dividend_points_pct
FROM endpoints AS e
INNER JOIN reinvest AS r ON e.years = r.years
ORDER BY e.years
Run this yourself

1-year کی مدت میں price return 18.2% رہا، جبکہ total return 19.5% تھا۔ دونوں کے درمیان فرق 1.3 percentage points کا رہا۔ 10-year کی مدت میں یہ فرق 244.3% اور 304.5% کو الگ کرتا ہے، جو 60.2 points کے برابر ہے۔ 20-year کی مدت میں دونوں readings 485% اور 736.9% رہیں؛ فرق 251.9 percentage points کا تھا۔

یہ curve سیدھی لکیر میں اوپر نہیں جاتی۔ اس کا انداز balance کے بڑھنے جیسا ہے، کیونکہ ہر reinvested dividend اس base میں شامل ہو جاتا ہے جس پر اگلا dividend compound ہوتا ہے۔

ایک سال کے dividends معمولی کیوں دکھائی دیتے ہیں

یہاں اسی window کا ہر calendar year دیا گیا ہے، جسے price move اور dividend contribution میں تقسیم کیا گیا ہے۔

استفسار کریںکیلنڈر سال کے لحاظ سے S&P 500 tracker: price return بمقابلہ دوبارہ سرمایہ کاری شدہ dividends سے شامل ہونے والے points
ہر عدد کے پیچھے موجود درست SQL
WITH daily AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMax(toFloat64(close), window_start) AS close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2006-01-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 d
),
yearly AS (
    SELECT toYear(d) AS year,
           argMin(close, d) AS first_px,
           argMax(close, d) AS last_px
    FROM daily
    GROUP BY year
),
divs AS (
    SELECT toYear(dv.ex_dividend_date) AS year,
           exp(sum(log(1 + toFloat64(dv.cash_amount) / dl.close))) AS factor
    FROM global_markets.stocks_dividends AS dv
    INNER JOIN daily AS dl ON dl.d = dv.ex_dividend_date
    WHERE dv.ticker = 'SPY'
      AND dv.cash_amount > 0
    GROUP BY year
)
SELECT y.year AS year,
       round(100 * (y.last_px / y.first_px - 1), 1) AS price_return_pct,
       round(100 * (y.last_px / y.first_px) * (d.factor - 1), 2) AS dividend_points_pct
FROM yearly AS y
INNER JOIN divs AS d ON y.year = d.year
ORDER BY year
Run this yourself

دونوں series کو ایک ساتھ دیکھیں۔ Price line نمایاں ہے اور دونوں سمتوں میں تیزی سے حرکت کرتی ہے۔ Dividend line نسبتاً خاموش ہے: 1.9 points، 2007 میں؛ 0.58 points، جولائی 2026 تک کے جزوی سال میں؛ اور درمیان کے عرصے میں کبھی headline نہیں بنتی۔ اس panel کی کوئی ایک row کسی کے مؤقف کو تبدیل نہیں کرے گی۔ پہلے chart میں 20 rows پر جمع اور compounded ہونے کے بعد یہی چھوٹے اعداد دونوں lines کے درمیان موجود مکمل فرق بن جاتے ہیں۔ Dividend کو reinvest کرنا بھی اس دن prevailing price پر خودکار خریداری کے مترادف ہے، جو dollar cost averaging سے ملتی جلتی حکمتِ عملی ہے۔ یہی وجہ ہے کہ S&P 500 dividend yield ایک معمولی عدد دکھائی دیتی ہے، لیکن طویل windows میں اس کے حجم سے کہیں زیادہ اہم اثر ڈالتی ہے۔

کون سے stocks میں سب سے وسیع فرق نظر آتا ہے؟

یہ فرق yield کی عکاسی کرتا ہے: قیمت کے ہر dollar کے مقابلے میں زیادہ رقم واپس کرنے والی کمپنی holder کو reinvest کرنے کے لیے زیادہ رقم دیتی ہے۔ 31 جولائی 2026 تک کے دس برسوں میں سات معروف نام شامل ہیں، اور تقابلی مدت برقرار رکھنے کے لیے returns کو annualized کیا گیا ہے۔

استفسار کریںدس سالہ سالانہ اوسط price return بمقابلہ total return: سات معروف نام، 31 جولائی 2026 تک
ہر عدد کے پیچھے موجود درست SQL
WITH daily AS (
    SELECT ticker,
           toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           argMax(toFloat64(close), window_start) AS close
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('SPY', 'KO', 'JNJ', 'XOM', 'PG', 'VZ', 'MSFT')
      AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2016-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 ticker, d
),
px AS (
    SELECT ticker,
           argMin(close, d) AS start_px,
           argMax(close, d) AS end_px
    FROM daily
    GROUP BY ticker
),
divs AS (
    SELECT dv.ticker AS ticker,
           exp(sum(log(1 + toFloat64(dv.cash_amount) / dl.close))) AS factor
    FROM global_markets.stocks_dividends AS dv
    INNER JOIN daily AS dl ON dl.ticker = dv.ticker AND dl.d = dv.ex_dividend_date
    WHERE dv.ticker IN ('SPY', 'KO', 'JNJ', 'XOM', 'PG', 'VZ', 'MSFT')
      AND dv.cash_amount > 0
      AND dv.ex_dividend_date >= toDate('2016-08-01')
      AND dv.ex_dividend_date <= toDate('2026-07-31')
    GROUP BY dv.ticker
)
SELECT px.ticker AS ticker,
       round(100 * (pow(px.end_px / px.start_px, 0.1) - 1), 2) AS price_cagr_pct,
       round(100 * (pow(px.end_px / px.start_px * divs.factor, 0.1) - 1), 2) AS total_cagr_pct,
       round(100 * (pow(px.end_px / px.start_px * divs.factor, 0.1)
                    - pow(px.end_px / px.start_px, 0.1)), 2) AS dividend_points_pct
FROM px
INNER JOIN divs ON px.ticker = divs.ticker
ORDER BY dividend_points_pct DESC
Run this yourself

VZ کے 7 ناموں میں سب سے وسیع سالانہ فرق ہے، جو ہر سال 5.46 percentage points بنتا ہے: صرف قیمت کی بنیاد پر -1.51% annualized، جبکہ dividends reinvest کرنے پر 3.96MSFT میں یہ فرق سب سے کم ہے اور 1.53 points بنتا ہے۔ Charts کا موازنہ کرنے والوں کے لیے اس سے دو باتیں سامنے آتی ہیں۔ Price chart کسی high payer کی کارکردگی کو low payer کے مقابلے میں کہیں زیادہ کم ظاہر کرتا ہے، اور price performance کی بنیاد پر names کی ranking کرنے والا کوئی بھی screen خاموشی سے payers کو کم درجہ دیتا ہے۔ ان names کے پیچھے موجود dividend yield ہی ان کے فرق کا حجم طے کرتی ہے۔

ہر ورژن کہاں استعمال ہوتا ہے

  • Benchmarks اور fund fact sheets میں total return درج کیا جاتا ہے۔ "Total Return Index"، "TR" suffix، یا باریک حروف میں "net dividends reinvested" کا نوٹ، سب کا مطلب یہ ہے کہ dividends کو حساب میں شامل کیا گیا ہے۔
  • Financial media اور quote screens میں price return استعمال ہوتا ہے۔ "The S&P 500 closed up 0.4%" قیمت میں تبدیلی کو ظاہر کرتا ہے۔
  • Brokerage performance tabs عموماً account کے لیے total return دکھاتے ہیں، کیونکہ cash حقیقتاً account میں موصول ہوئی تھی۔ کسی ایک position کے gain column میں اکثر cost basis کے مقابلے میں قیمت کی تبدیلی دکھائی جاتی ہے، جو اس figure سے مختلف ہوتی ہے۔
  • Backtests اور strategy write-ups میں وہی version استعمال ہوتا ہے جو author کے data feed نے فراہم کیا ہو۔ خاموشی سے بڑھے ہوئے track records کی بہت سی وجوہات میں یہ بھی شامل ہے۔

اہم فرق اس وقت پیدا ہوتا ہے جب کسی fund کے total return کو price index کے ساتھ رکھا جائے۔ Fund کو اپنے dividends کا credit ملتا ہے، جبکہ benchmark کے اپنے dividends شامل نہیں کیے جاتے۔ اس طرح fund کو index کی پوری dividend stream کے برابر ابتدائی برتری مل جاتی ہے۔ اوپر دی گئی 20-year مدت میں یہ scoring error 251.9 percentage points کے برابر ہے، اور ان میں سے ایک بھی point manager کی کارکردگی سے حاصل نہیں ہوا۔ درست like-for-like comparison میں total return کو total return کے ساتھ رکھا جاتا ہے۔ ماہانہ returns کیسے ناپے جاتے ہیں ماہانہ سطح پر یہی حساب دکھاتا ہے، جبکہ بہترین دن نکل جانے سے معلوم ہوتا ہے کہ جب چند sessions price line سے نکال دیے جائیں تو کیا ہوتا ہے۔

یہ اعداد کیسے تیار کیے گئے
  • Prices روزانہ کے regular-session closes ہیں۔ Dividends وہ cash distributions ہیں جو record کی گئیں، اور ہر dividend کو اس کی ex-dividend date پر closing price پر reinvest کیا گیا۔ Total return series بنانے کے لیے یہی standard convention ہے۔
  • یہ مدت دسمبر 2005 سے 31 جولائی 2026 تک ہے۔ یہی وہ عرصہ ہے جس کا احاطہ ان panels کے پیچھے موجود intraday price history کرتی ہے۔ طویل مدت gap کو مزید وسیع کر دیتی ہے۔
  • Index کو track کرنے والا fund خود index کی نمائندگی کرتا ہے، اس لیے fees اور cash drag ان figures میں شامل ہیں۔ Calendar-year price return سال کے پہلے close سے آخری close تک ناپا جاتا ہے، جس سے پہلے session کی move خارج ہو جاتی ہے۔

Price return بمقابلہ total return کے بارے میں عام سوالات

کیا S&P 500 price index ہے یا total return index؟

سرخی میں دکھایا جانے والا عدد price index ہوتا ہے۔ یہ index اپنے اجزائے ترکیبی کی market value کو track کرتا ہے اور ان کے dividends کو نظرانداز کرتا ہے۔ اسی index کا total return ورژن بھی موجود ہے، جو dividends کو دوبارہ invest کرتا ہے۔ Fund benchmarks عموماً total return ورژن استعمال کرتے ہیں، جبکہ خبروں میں عام طور پر price ورژن کا حوالہ دیا جاتا ہے۔

S&P 500 کے returns میں dividends کتنا اضافہ کرتے ہیں؟

31 جولائی 2026 کو ختم ہونے والی 10-year مدت کے دوران، یہاں استعمال کیے گئے tracker نے price کی بنیاد پر 244.3% return دیا، جبکہ dividends کو دوبارہ invest کرنے پر return 304.5% رہا۔ ایک ہی calendar year کے اندر یہ فرق بہت کم ہوتا ہے، تقریباً 1.9 points، جو 2007 میں ہوتا ہے۔

کیا میرے brokerage account میں price return دکھایا جاتا ہے یا total return؟

Cash dividends account میں جمع ہو جاتے ہیں، اس لیے account balance میں وہ پہلے ہی شامل ہوتے ہیں۔ کسی position کا gain column اکثر صرف موجودہ price کا آپ کے cost basis سے موازنہ کرتا ہے، جو price return ہوتا ہے۔ دونوں اعداد میں فرق موصول ہونے والے dividends کے برابر ہوتا ہے، الا یہ کہ درمیان میں reinvestment plan کے ذریعے مزید shares خریدے گئے ہوں۔

کیا total return swap اور total return ایک ہی چیز ہیں؟

نہیں۔ Total return swap ایک bilateral derivative contract ہے، جس میں کسی asset کی مکمل معاشی کارکردگی کو ایک financing rate کے بدلے منتقل کیا جاتا ہے۔ Index کے تناظر میں total return، performance ناپنے کا ایک طریقہ ہے۔ دونوں اصطلاحات میں مشترک الفاظ price اور income کے ایک ہی بنیادی تصور کی طرف اشارہ کرتے ہیں، لیکن instruments کے طور پر دونوں کا آپس میں کوئی تعلق نہیں۔

Price index کے ساتھ موازنہ کرنے پر fund بہتر کیوں دکھائی دیتا ہے؟

Fund کا شائع کردہ figure اس کے dividends کو شامل کرتا ہے، جبکہ price index اپنے dividends کو خارج کرتا ہے۔ اس طرح موازنہ fund کو benchmark کی dividend stream کے برابر ابتدائی برتری دے دیتا ہے؛ اوپر بیان کردہ 20-year مدت میں یہ برتری 251.9 percentage points ہے۔


یہاں موجود ہر figure روزانہ کے closing prices اور filed dividend records پر مبنی ایک stored، versioned query سے حاصل کیا گیا ہے۔ SQL پڑھنے کے لیے کوئی بھی panel کھولیں، یا Strasmore terminal پر اپنے زیرِمطالعہ ticker کے لیے price-versus-total-return کا یہی موازنہ چلائیں۔

#total return#dividends#s&p 500#index funds#performance