Strasmore Research
学習 Matt Connor著者: Matt Connor · data as of August 2, 2026 · refreshed weekly

トレーリングとフォワード配当利回りの違い

トレーリング利回りは過去12カ月の配当、フォワード利回りは直近配当の年率換算です。二つのスクリーナーで数値が異なる理由を解説します。

トレーリング配当利回りとフォワード配当利回りは、同じ問いに対する二つの答えです。違いは分子だけにあります。通常TTM(直近12カ月)と表記されるトレーリング利回りは、企業が過去1年間に実際に支払った配当を合計します。フォワード利回りは、直近に発表された配当金額に年間の支払回数を乗じます。どちらも同じ株価で割ります。過去12カ月以内に配当額が変更されると、同じ銘柄について同じ時点でも、二つの算出方法は異なる数値を示します。

この比率の計算方法については、配当利回りの計算方法で説明しています。このページでは、分子にどの配当額を使うかという選択と、その理由を扱います。同じ午後に、二つのスクリーナーが同じtickerについて異なる利回りを表示する理由も説明します。

過去12カ月の配当利回りとは?

過去12カ月利回りは、直近365日以内に権利落ち日を迎えたすべての現金配当を合計し、その合計額を現在の株価で割って算出します。権利落ち日は、次回の配当を受け取る権利が付かない状態で株式の取引が始まる日です。多くのデータプロバイダーは、この日を基準に配当を時系列上に配置します。

過去12カ月の数値に推定値は含まれません。これは、すでに支払われた現金の記録であり、保有者が実際に受け取った金額を測る指標です。一方で、その強みがそのまま弱点にもなります。過去12カ月利回りは、もはや存在しない可能性がある配当水準を示すためです。ある企業が先月、四半期配当を改定した場合でも、過去12カ月の集計期間には旧配当水準での支払いが三回含まれます。その状態は、今後さらに九カ月続きます。

先行配当利回りとは?

先行利回りは、直近の配当支払い額を年率換算し、同じ株価で割って算出します。四半期ごとに配当を支払う企業で、直近の配当額が一株当たり$0.50なら、先行配当率は$2.00です。月次配当で一株当たり$0.25なら、$3.00です。

これは一つの観測値に基づく予測であり、次回以降の支払いが直近と同じになると仮定しています。反映の速さが特徴です。企業が増配すると、先行指標には最初の増額後の配当から新しい水準が反映されます。一方、後方配当利回りがその増配を完全に反映するには、四半期配当の場合、四四半期分の経過が必要です。

家計を支える八社の配当利回り:実績ベースと予想ベースの比較

以下の表では、八社の大手配当銘柄について、同じ直近セッションの株価を使い、両方の計算を行っています。実績ベースの列は、直近十二カ月に支払われた通常の現金配当を合計したものです。予想ベースの列は、直近の配当を、届出された支払頻度に基づいて年率換算しています。

クエリ後方配当利回りと予想配当利回りの比較:大型配当銘柄八銘柄、直近セッション価格
各数値の背後にある正確な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 DESC
Run this yourself

行は、両方式の差が大きい順に並べています。上段では、PEPが予想配当利回り4.24%に対し、実績配当利回りは4.12%です。下段では、MSFTが予想ベースで0.78%、実績ベースで0.77%です。同じ企業、同じ株価でも、どちらも妥当な計算方法です。

差異を生む要因として見落とされがちなのが、配当の支払回数です。直近三百六十五日の移動期間は、四四半期と同じではありません。権利落ち日は毎年数日ずれるため、五回分の配当を含む期間では、宣言された配当率がまったく変わっていなくても、実績ベースの数値が上昇します。

配当リセットが二つの読み方に与える影響

3Mは2024年、ヘルスケア事業の分離に伴い、四半期配当をリセットしました。26カ月末の数値は、その時点以降の二つの慣行を追跡し、各時点での公表済み四半期配当も併記しています。

クエリ3M (MMM):配当リセット後の各月末における後方配当利回りと予想配当利回り
各数値の背後にある正確な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_start
Run this yourself

Jun 2024時点の公表配当は$0.7でした。一方、過去の配当率に基づく三回分の支払いが、直近期間にまだ含まれていました。トレーリング利回りは5.1%でした。フォワード利回りは2.74%でした。同じ株式について、同じ日に、分母となる価格も同一のまま、二つの慣行の差は2.36ポイントでした。その月にトレーリング利回りで並べた画面では、3Mがすでに支払いを停止した配当率に基づいて評価されていました。どちらの数値も誤りではありません。答えている問いが異なります。

その後、過去の支払いが期間の外に出るにつれて、差の列は四四半期かけて縮小します。Jul 2026時点では、トレーリング利回りが1.71%、フォワード利回りが1.77%で、差は0.06ポイントでした。収れんが通常の状態です。配当が変動したときだけ差が開きます。市場全体については配当の増額と減額が扱い、3Mの配当実績が支払いごとに追跡しています。

月次支払い銘柄、12回の支払いと、ときには13回

Realty Incomeは、年間に数回、月次配当を小幅に引き上げます。そのため、フォワード配当利回りは前年の水準をわずかに上回ります。支払い回数の欄は、各時点で直近の対象期間に実際に含まれる支払い回数を示します。

クエリRealty Income (O):各月末の後方配当利回りと予想配当利回り、二年間
各数値の背後にある正確な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_start
Run this yourself

Aug 2024では、対象期間に11回の支払いが含まれ、トレーリングの配当利回りは4.57%、フォワードは5.08%でした。Jul 2026では、宣言済みの月次配当額が$0.271で、対象期間には13回の支払いが含まれ、トレーリングは5.49%、フォワードは5.09%となり、差は0.4ポイントでした。13回目の支払いを含むローリング一年間では、配当自体に変化がなくても、トレーリングの数値が約12分の1上昇します。月次配当株では支払いスケジュールを、Realty Incomeの支払い実績ではすべての支払いを確認できます。

市場全体で見ると、両方式の差はどの程度か

一銘柄だけでは一例にすぎません。以下では、時価総額が十億ドルを超える米国上場の配当支払銘柄を、支払い頻度別に分類し、両方の計算方法を実行しています。

クエリ支払スケジュール別、後方配当利回りと予想配当利回りの差
各数値の背後にある正確な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
Run this yourself

最大のグループはquarterly支払いの銘柄で、銘柄数は1128です。トレーリング利回りの中央値は1.93%、フォワード利回りの中央値は2.03%です。中央値では、両方式の差は0.03ポイントになります。分布には裾があります。このグループの8.7%は、両方式の差が少なくとも〇・五ポイントあります。差の九十分位は0.357ポイントです。利回り三%における〇・五ポイントは、数値の六分の一に相当します。これは、スクリーニングで銘柄が抽出されるか、見落とされるかを分ける差です。monthlyのグループは21銘柄で、差の中央値は0.484ポイントです。

水準そのものではなく計算方法について確認する場合、良好な配当利回りとは何かで市場分布を一か所にまとめています。また、配当利回りとは何かでは、まずその比率自体から説明しています。

2つのスクリーナーが異なる配当利回りを表示する理由

  • 算出方法の違い。一方のプロバイダーは直近の発表額を年率換算し、もう一方は過去12カ月分を合計します。この違いが、このページで扱う主な論点です。
  • 対象期間の位置。直近365日には、四半期配当なら4回または5回、月次配当なら12回または13回の支払いが含まれる可能性があります。
  • 特別配当。一回限りの支払いは、1年間は過去推移期間に含まれます。特別配当を分子に残すプロバイダーもあれば、除外するプロバイダーもあります。大きな特別配当があると、過去推移ベースの数値は大きく変わります。
  • 基準となる価格。昨夜の終値で計算した利回りは、午後2時時点の価格で計算した利回りとは異なります。
  • 会社自身のページ。IRサイトではほぼ常に、発表済みの年間配当率を掲載します。これは将来配当利回りの分子になりますが、価格にはリアルタイムでないものが使われることがよくあります。ファンドの資料では30日SEC利回りや分配利回りが使われます。これらも別の算出方法です。
これらの数値の算出方法

ここでの過去推移配当利回りは、各時点から遡る365日間に権利落ち日を迎えた、継続的な現金配当を合計し、そのセッションの終値で割ったものです。将来配当利回りは、直近の継続的な配当額に、届出時に記載された支払頻度を乗じ、同じ価格で割ったものです。非定期の分配金は、どちらからも除外します。価格には、ニューヨーク時間の通常取引時間における分足データを使用します。特別配当を含めるプロバイダーや、異なる支払回数を年率換算するプロバイダーでは、同じ基礎データから異なる数値が算出されます。

過去配当利回りと予想配当利回りに関するFAQ

TTM配当利回りとは何ですか?

TTMは「直近12カ月」を意味します。TTM配当利回りは、過去1年間に支払われたすべての配当を合計し、現在の株価で割って算出します。これは、予想される利率ではなく、すでに支払われた現金を示します。

過去配当利回りと予想配当利回りでは、どちらが優れていますか?

どちらが正しいということではありません。過去配当利回りは、保有者が過去1年間に受け取った金額を示します。予想配当利回りは、現在公表されている配当率を年率換算したものです。すでに受け取ったインカムを比較する場合は過去配当利回りを使い、企業が現在支払っている配当率を評価する場合は予想配当利回りを使います。

証券会社の表示する配当利回りが、企業の投資家向けページと異なるのはなぜですか?

投資家向けページでは通常、企業が公表した年間配当率を掲載します。これは予想配当利回りの分子に相当しますが、分母にはリアルタイムではない株価が使われることもあります。一方、証券会社やスクリーナーは、直近12カ月の配当を合計している場合があります。同じ時点でも、両方の数値が計算上正しいことがあります。

減配は過去配当利回りにすぐ反映されますか?

いいえ。配当の見直しは、最初に減額後の配当が支払われた時点で予想配当利回りに反映されます。過去配当利回りには、その後1年間にわたり、支払いのたびに段階的に反映されます。上記の3Mの期間では、2つの算定方法の差は2.36ポイントで、Jun 2024では0.06ポイントになりました。Jul 2026


上記のすべての数値は、提出済みの配当記録と実際の取引セッションの株価を用いた保存済みクエリから取得しています。各パネルを開くとSQLを確認できます。また、Strasmore端末で、フォローしているtickerについて同じ2つの計算を実行できます。

#dividends#dividend yield#forward yield#ttm yield#stock screeners