Strasmore Research
تعلَّم Matt Connorبقلم Matt Connor

عائد السعر والعائد الكلي: الفجوة الحقيقية

عائد السعر أم العائد الكلي؟ يكشف مؤشر S&P 500 السعري توزيعات الأرباح. قارن الفجوة المتراكمة خلال عشرين عاماً واعرف متى تستخدم كل نسخة.

الفرق بين عائد السعر والعائد الكلي هو الفرق بين ما يعرضه مخطط السوق وما كسبه فعلياً من احتفظ بالمركز نفسه. يحسب عائد السعر تغير السعر وحده. أما العائد الكلي فيضيف كل توزيعات الأرباح مجدداً، مع إعادة استثمارها بالسعر في يوم استحقاق التوزيع، بحيث يتراكم أثر كل دفعة إلى جانب الأسهم التي ولّدتها.

مستوى S&P 500 المتداول في الأخبار هو مؤشر سعري. أما نظيره المحسوب على أساس العائد الكلي، فيضم الشركات نفسها ويعيد استثمار توزيعات الأرباح. خلال سنة واحدة، يبدو المؤشران متطابقين تقريباً. لكن خلال عشرين عاماً، يعكسان نتائج مختلفة جداً، وتكون الفجوة بينهما أكبر مما يوحي به العائد السنوي.

ما الفرق بين عائد السعر والعائد الكلي؟

عائد السعر هو قسمة سعر النهاية على سعر البداية، ثم طرح واحد. كل مستوى لمؤشر تراه معروضاً على التلفزيون، وكل مخطط سعري مررت عليه، يمثل هذا الرقم.

يُجري العائد الكلي الحساب نفسه، مع استخدام كل توزيعات الأرباح النقدية لشراء أسهم إضافية بالسعر في تاريخ ex-dividend. وتستخدم جداول أداء الصناديق ومؤشرات القياس التي تُقارن الصناديق بها هذه الطريقة.

يوضح مثال افتراضي الآلية. لنفترض أنك اشتريت سهماً بسعر $100 يدفع $2 سنوياً، ثم بعته بعد عام بسعر $105. يبلغ عائد السعر 5%. ويبلغ العائد الكلي نحو 7%. لا يحمل العام الأول ما يميّزه. لكن التراكم هو ما يبرر تخصيص صفحة مستقلة لهذا الموضوع: تشتري توزيعة الـ$2 المعاد استثمارها جزءاً من سهم إضافي، ويحصل ذلك الجزء على توزيعه الخاص في العام التالي، ثم يتسع الفارق بين السلسلتين بوتيرة متسارعة.

وقبل عرض البيانات، تجدر الإشارة إلى نقطة لتجنب الالتباس. مبادلة العائد الكلي هي عقد مشتق ينقل فيه أحد الطرفين كامل العائد الاقتصادي لأصل ما إلى الطرف الآخر مقابل معدل تمويل. وهي تتشارك الاسم فقط مع اصطلاح المؤشرات الموضح أدناه. أما بقية هذه الصفحة فتتناول المؤشرات والصناديق.

ما حجم الفجوة في S&P 500؟

استثمار $10,000 في أكبر صندوق يتتبع S&P 500 في نهاية عام 2005، والاحتفاظ به حتى 31 يوليو 2026. ينفق المسار الأول كل توزيعات الأرباح في يوم استلامها. أما المسار الثاني فيعيد استثمار كل توزيع بسعر الإغلاق في ذلك اليوم.

الاستعلام$10,000 في متتبع S&P 500: السعر فقط مقابل إعادة استثمار التوزيعات، من نهاية 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

ينتهي مسار السعر فقط عند $59956. وينتهي مسار إعادة الاستثمار عند $85775. وتمثل توزيعات الأرباح 30.1% من الرصيد النهائي، ولا يظهر أي جزء منها على مخطط الأسعار.

عند الحافة اليسرى للمخطط تكمن النقطة التي تفاجئ كثيراً من الناس. في نهاية 2007، بلغ الرصيد في المسارين $11755 و$11971، وكانت توزيعات الأرباح تمثل 1.8% من الرصيد. من السهل اعتبار فجوة صغيرة كهذه خلال السنة الأولى مجرد فرق ناتج عن التقريب. لكن تكرار فرق التقريب نفسه على مدى عشرين عاماً، مع تراكم كل فرق فوق سابقه، ينتج الفارق الظاهر عند الحافة اليمنى.

هل يستمر الفارق في الاتساع مع مرور الوقت؟

الصندوق نفسه، وتاريخ النهاية نفسه، وخمسة تواريخ بداية مختلفة.

الاستعلامعائد السعر مقابل العائد الكلي حسب فترة الاحتفاظ: متتبع S&P 500، الفترات المنتهية في 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، بلغ عائد السعر 18.2%، مقابل عائد كلي قدره 19.5%، بفارق 1.3 نقاط مئوية. وتفصل فترة 10-year بين 244.3% و304.5%، بفارق قدره 60.2 نقطة. أما خلال فترة 20-year، فبلغ الرقمان 485% و736.9%، بفارق 251.9 نقطة مئوية.

لا يصعد المنحنى في خط مستقيم. بل يرتفع بالطريقة نفسها التي ينمو بها الرصيد، لأن كل توزيعات أرباح معاد استثمارها تنضم إلى القاعدة التي يتراكم عليها التوزيع التالي.

لماذا تبدو توزيعات عام واحد ضئيلة

إليك كل سنة تقويمية ضمن الفترة نفسها، مع فصل حركة السعر عن مساهمة التوزيعات.

الاستعلاممتتبع S&P 500 حسب السنة التقويمية: عائد السعر مقابل النقاط المضافة من التوزيعات المعاد استثمارها
استعلام 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

اقرأ السلسلتين معاً. خط السعر هو الأبرز، ويتحرك بقوة في كلا الاتجاهين. أما خط التوزيعات فهادئ: 1.9 نقطة في 2007، و0.58 نقطة في السنة الجزئية حتى يوليو 2026، ولا يتصدر المشهد في أي فترة بينهما. لا يغيّر أي صف منفرد في ذلك الجدول رأي أحد في أي شيء. لكن عند تراكم هذه الأرقام الصغيرة واحتساب أثرها المركب عبر 20 صفوف، فإنها تمثل المسافة كاملةً بين الخطين في الرسم البياني الأول. كما أن إعادة استثمار التوزيع تعني تلقائياً شراء السهم بالسعر السائد في ذلك اليوم، وهي قريبة في جوهرها من متوسط التكلفة بالدولار. والسبب نفسه يفسر لماذا يبدو عائد توزيعات S&P 500 متواضعاً، مع أن أثره على الفترات الطويلة يفوق بكثير ما يوحي به حجمه.

Which stocks show the widest gap?

The gap tracks the yield: a company handing back more per dollar of price gives the holder more to reinvest. Seven familiar names over the ten years to July 31, 2026, annualized so the horizons are comparable.

الاستعلامعائد السعر السنوي مقابل العائد الكلي على مدى عشر سنوات: سبعة أسماء معروفة، حتى 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 carries the widest annual gap of the 7 at 5.46 percentage points a year: -1.51% annualized on price alone, against 3.96% with dividends reinvested. MSFT sits at the narrow end at 1.53 points. Two things follow for anyone comparing charts. A price chart understates a high payer far more than a low one, and any screen that ranks names on price performance quietly marks the payers down. The dividend yield behind each of these names is what sets the size of its gap.

أين تُستخدم كل نسخة

  • تورد المؤشرات المرجعية ونشرات معلومات الصناديق العائد الكلي. وتعني عبارات مثل «مؤشر العائد الكلي»، أو اللاحقة "TR"، أو الملاحظة "إعادة استثمار صافي توزيعات الأرباح" في التفاصيل أن توزيعات الأرباح محسوبة.
  • تستخدم وسائل الإعلام المالية وشاشات الأسعار عائد السعر. وعبارة «أغلق S&P 500 مرتفعاً بنسبة 0.4%» تصف حركة السعر.
  • تعرض علامات تبويب أداء حسابات الوساطة عادةً العائد الكلي للحساب، لأن النقد وصل فعلياً إلى الحساب. أما عمود مكسب مركز واحد، فكثيراً ما يعرض تغير السعر مقارنةً بأساس التكلفة، وهذه ليست القيمة نفسها.
  • تستخدم الاختبارات التاريخية وكتابات الاستراتيجيات النسخة التي وفّرها مصدر بيانات الكاتب، وهو ما يفسر كثيراً من سجلات الأداء المتضخمة بهدوء.

يكمن عدم التطابق المهم في وضع العائد الكلي لصندوق بجانب مؤشر سعري. إذ يُحتسب للصندوق توزيع أرباحه، بينما لا يُحتسب للمؤشر أي من توزيعاته، ما يمنح الصندوق بداية متقدمة تساوي كامل تدفق توزيعات أرباح المؤشر. وعلى امتداد فترة 20-year المذكورة أعلاه، يساوي خطأ التقييم هذا 251.9 نقطة مئوية، ولم تأتِ أي منها من المدير. تضع المقارنة الصحيحة العائد الكلي بجانب العائد الكلي. يشرح كيفية قياس العوائد الشهرية الحساب نفسه على المستوى الشهري، بينما يوضح تفويت أفضل الأيام ما يحدث لخط السعر عندما تُستبعد منه حفنة من الجلسات.

كيفية بناء هذه الأرقام
  • تمثل الأسعار أسعار الإغلاق اليومية للجلسة العادية. وتمثل توزيعات الأرباح توزيعات نقدية معلنة، يُعاد استثمار كل منها بسعر الإغلاق في تاريخ ex-dividend الخاص بها، وهو الأسلوب المتعارف عليه لبناء سلسلة العائد الكلي.
  • تمتد الفترة من ديسمبر 2005 إلى 31 يوليو 2026، وهي الفترة التي يغطيها سجل الأسعار اللحظية المستخدم خلف هذه اللوحات. وتؤدي الفترة الأطول إلى اتساع الفجوة أكثر.
  • يحل صندوق يتتبع المؤشر محل المؤشر نفسه، ولذلك تشمل هذه الأرقام الرسوم وأثر الاحتفاظ بالنقد. ويُقاس عائد السعر للسنة التقويمية من أول إغلاق في السنة إلى آخر إغلاق، ما يستبعد حركة الجلسة الأولى.

الأسئلة الشائعة حول العائد السعري مقابل العائد الكلي

هل يُعد S&P 500 مؤشراً سعرياً أم مؤشراً للعائد الكلي؟

الرقم الرئيسي هو مؤشر سعري؛ إذ يتتبع القيمة السوقية للمكوّنات ويتجاهل توزيعات أرباحها. وتوجد نسخة للعائد الكلي من المؤشر نفسه، وتعيد استثمار هذه التوزيعات. تستخدم معايير الصناديق عادةً نسخة العائد الكلي، بينما تقتبس التغطية الإخبارية عادةً النسخة السعرية.

ما مقدار مساهمة توزيعات الأرباح في عوائد S&P 500؟

خلال فترة 10-year المنتهية في 31 يوليو 2026، حقق المؤشر المتتبع هنا عائداً قدره 244.3% على أساس سعري، مقابل 304.5% مع إعادة استثمار توزيعات الأرباح. وخلال سنة تقويمية واحدة، تكون المساهمة أقل بكثير، وتبلغ نحو 1.9 نقطة في 2007.

هل يعرض حساب الوساطة لدي العائد السعري أم العائد الكلي؟

تُضاف توزيعات الأرباح النقدية إلى الحساب، ولذلك فإن الرصيد نفسه يتضمنها بالفعل. لكن خانة مكسب المركز تقارن غالباً السعر الحالي بقاعدة تكلفة الاستثمار فقط، وهو ما يمثل عائداً سعرياً. ويختلف الرقمان بمقدار توزيعات الأرباح المستلمة تحديداً، ما لم تكن خطة إعادة استثمار قد استخدمت التوزيعات لشراء أسهم إضافية خلال الفترة.

هل تُعد مبادلة العائد الكلي الشيء نفسه كالعائد الكلي؟

لا. مبادلة العائد الكلي هي عقد مشتقات ثنائي الطرف يستبدل كامل العائد الاقتصادي لأصل ما بمعدل تمويل. أما العائد الكلي بمعنى المؤشرات فهو اصطلاح لقياس الأداء. وتشير العبارتان إلى الفكرة الأساسية نفسها، وهي السعر مضافاً إليه الدخل، لكنهما لا تمثلان الأداة نفسها.

لماذا يبدو أداء الصندوق أفضل عند مقارنته بمؤشر سعري؟

يتضمن الرقم المنشور للصندوق توزيعاته، بينما يستبعد المؤشر السعري توزيعاته. وتمنح هذه المقارنة الصندوق أفضلية أولية تعادل حجم تدفق توزيعات أرباح المؤشر، أي 251.9 نقطة مئوية خلال فترة 20-year المذكورة أعلاه.


كل رقم هنا ناتج عن استعلام مخزّن ومُدار بالإصدارات، يستند إلى أسعار الإغلاق اليومية وسجلات توزيعات الأرباح المعلنة. افتح أي لوحة لقراءة SQL، أو أجرِ المقارنة نفسها بين العائد السعري والعائد الكلي على ticker تتابعه في منصة Strasmore.