Strasmore Research
Học tập Matt ConnorBởi Matt Connor · Cập nhật 2026-09-05 · data as of September 5, 2026 · refreshed weekly

Lịch ngày giao dịch không hưởng quyền tuần này

Xem danh sách các cổ phiếu sắp đến ngày giao dịch không hưởng quyền trong tuần này và tuần tới. Tìm hiểu mức chi trả trên mỗi cổ phiếu, ngày thanh toán và tác động của ex-day đến giá.

Ngày giao dịch không hưởng quyền sắp tới

Ngày giao dịch không hưởng quyền (ex-dividend date) quyết định ai là người được nhận cổ tức: bạn phải sở hữu cổ phiếu trước ngày ex-dividend để nhận khoản thanh toán tiếp theo; nếu mua vào đúng ngày này hoặc sau đó, người bán sẽ giữ lại số tiền đó. Trang này là lịch trực tuyến các ngày sắp tới, danh sách các công ty bắt đầu giao dịch không hưởng quyền mỗi ngày trong tuần này, và các công ty lớn nhất sẽ đến ngày ex-dividend trong hai tuần tới, được tính toán từ hồ sơ cổ tức đã công bố và cập nhật hàng tuần. Trang này cũng đo lường biến động thực tế của giá cổ phiếu vào buổi sáng ngày ex-dividend, và liệu chiến lược "dividend capture" có hiệu quả khi đối chiếu với dữ liệu thực tế hay không.

Ngày giao dịch không hưởng quyền trong tuần

Mọi khoản cổ tức tiền mặt đã công bố sẽ bắt đầu giao dịch không hưởng quyền trong bảy ngày tới, phân loại theo ngày và tần suất chi trả của đơn vị phát hành:

Truy vấnLịch chia cổ tức theo ngày: danh sách 7 ngày tới
Ngày GDKHQNhãn ngày GDKHQMã GDKHQTrả cổ tức hàng thángTrả cổ tức hàng quý
2026-09-08Sep 81011046
2026-09-09Sep 966523
2026-09-10Sep 101201250
2026-09-11Sep 111873469
2026-09-12Sep 12100
Câu lệnh SQL chính xác đằng sau mỗi con số
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
Tự chạy truy vấn này

Lịch trình ngắn hạn bao gồm 5 ngày giao dịch không hưởng quyền, bắt đầu từ Sep 8 với 101 mã, trong đó có 10 mã chi trả hàng tháng và 46 mã chi trả hàng quý. Sự phân loại này rất quan trọng khi bạn theo dõi lịch: các mã chi trả hàng tháng (quỹ thu nhập, tín thác thế chấp, một số REIT) xuất hiện trở lại sau mỗi bốn tuần và tập trung vào giữa tháng; các mã chi trả hàng quý, chủ yếu là các công ty vận hành, xuất hiện mỗi mùa một lần. Để nhận được các khoản thanh toán này, vị thế phải được nắm giữ vào thời điểm đóng cửa ngày giao dịch trước ngày được liệt kê. Cơ chế về thời gian nằm trong hướng dẫn ngày giao dịch không hưởng quyền của chúng tôi, và bài viết ngày chốt danh sách so với ngày giao dịch không hưởng quyền giải thích lý do tại sao ngày ex-date là mốc quan trọng đối với người mua.

Các tên tuổi lớn sắp đến ngày giao dịch không hưởng quyền trong hai tuần tới

Các công ty lớn nhất (vốn hóa thị trường từ mười tỷ đô la trở lên) sẽ đến ngày giao dịch không hưởng quyền trong vòng mười bốn ngày tới, cùng với thông tin về khoản thanh toán, ngày chi trả và tỷ suất cổ tức hàng năm tương ứng với mức giá hiện tại:

Truy vấnCác công ty lớn chia cổ tức trong 14 ngày tới: số tiền, ngày thanh toán, tỷ suất cổ tức
TickerNgày GDKHQNhãn ngày GDKHQUSD/cổ phiếuNgày thanh toánNhãn ngày thanh toánVốn hóa (tỷ)Lợi suất (%)
NVDA2026-09-10Sep 100.252026-10-01Oct 155160.44
KO2026-09-15Sep 150.532026-10-01Oct 13822.39
MRK2026-09-15Sep 150.852026-10-07Oct 73762.23
UNH2026-09-14Sep 142.322026-09-22Sep 223602.31
TMO2026-09-15Sep 150.472026-10-15Oct 152290.3
CRM2026-09-17Sep 170.442026-10-08Oct 82180.67
GILD2026-09-15Sep 150.822026-09-29Sep 291882.17
BLK2026-09-08Sep 85.732026-09-22Sep 221742.04
WDC2026-09-08Sep 80.152026-09-17Sep 171590.14
BKNG2026-09-11Sep 110.422026-09-30Sep 301470.86
CB2026-09-11Sep 111.022026-10-02Oct 21341.17
PLD2026-09-16Sep 161.072026-09-30Sep 301313.09
Câu lệnh SQL chính xác đằng sau mỗi con số
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
Tự chạy truy vấn này

Tên tuổi lớn nhất trong danh sách là NVDA, sẽ đến ngày giao dịch không hưởng quyền vào Sep 10 với mức chi trả 0.25 đô la mỗi cổ phiếu vào ngày Oct 1, tương ứng với tỷ suất cổ tức hàng năm là 0.44% tại mức giá gần nhất. Hãy đọc kỹ cột tỷ suất cổ tức: con số này được tính toán dựa trên khoản chi trả đã công bố theo tần suất xác định, đây là phép tính tại thời điểm hiện tại, không phải là một lời hứa. Một con số chi trả lớn trên mỗi cổ phiếu và một tỷ suất cổ tức cao là hai khái niệm khác nhau, như bài viết tỷ suất cổ tức là gì đã chỉ rõ. Một mã chứng khoán đã bị loại khỏi các bảng xếp hạng (bộ lọc được hiển thị trong truy vấn SQL của bảng): mã này đã được một tổ chức phát hành thứ hai sử dụng lại, do đó dữ liệu ghi nhận dưới mã này bao gồm hai công ty khác nhau, và chúng tôi loại bỏ nó thay vì hiển thị một dòng dữ liệu không thể xác định chính xác.

Những loại công ty nào đang chi trả cổ tức hiện nay

Nguồn dữ liệu cổ tức không phân loại theo ngành, vì vậy hình thái của khung thời gian hai tuần phải được xác định từ các hồ sơ hiện có: quy mô công ty, tần suất thanh toán và lợi suất (yield) mà mỗi khoản thanh toán đã công bố mang lại ở mức giá hiện tại. Dưới đây là danh sách các công ty chi trả định kỳ có ngày giao dịch không hưởng quyền (ex-dividend date) trong vòng mười bốn ngày tới, được nhóm theo quy mô vốn hóa:

Truy vấnDanh sách chia cổ tức 14 ngày tới: tên, tần suất và tỷ suất dự kiến theo quy mô vốn hóa
Nhóm quy môMã GDKHQLợi suất trung vị (%)Trả cổ tức hàng thángTrả cổ tức hàng quý
1 Mega cap ($100B+)161.94016
2 Large cap ($10-100B)792.1275
3 Mid cap ($2-10B)852.58382
4 Small cap (under $2B)853.41875
Câu lệnh SQL chính xác đằng sau mỗi con số
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
Tự chạy truy vấn này

Khung thời gian này bao gồm 16 công ty vốn hóa siêu lớn (từ 100 tỷ USD trở lên) và 79 công ty vốn hóa lớn (từ 10 tỷ USD đến 100 tỷ USD), cùng với 85 công ty vốn hóa trung bình và 85 các tên tuổi nhỏ hơn. Lợi suất chỉ định trung vị đạt 1.94% ở nhóm vốn hóa siêu lớn, 2.1% ở nhóm vốn hóa lớn, 2.58% ở nhóm vốn hóa trung bình và 3.41% ở nhóm vốn hóa nhỏ. Quy mô và lợi suất là hai trục độc lập: một lịch trình được sắp xếp theo lợi suất sẽ hiển thị các mã khác với lịch trình sắp xếp theo quy mô công ty, đó là lý do tại sao một bộ lọc chỉ dựa trên lợi suất sẽ âm thầm dẫn bạn xuống các bậc vốn hóa thấp hơn. Tần suất thanh toán cũng phân hóa tương tự như bảng theo ngày ở trên. Thói quen chi trả hàng quý chiếm ưu thế ở phân khúc cao cấp của thị trường, với 16 các công ty vốn hóa siêu lớn chi trả hàng quý và 0 chi trả hàng tháng, trong khi nhóm chi trả hàng tháng tập trung nhiều hơn ở các phân khúc vốn hóa thấp hơn: 8 các công ty vốn hóa nhỏ trong khung thời gian này thực hiện chi trả mỗi tháng. Việc chi trả mười hai lần một năm là một lựa chọn về cấu trúc thay vì là hệ quả của quy mô, và cổ phiếu trả cổ tức hàng tháng sẽ đề cập đến những cấu trúc nào thực hiện điều này và cách lợi suất của chúng thực sự so sánh với tiêu chuẩn chi trả hàng quý.

Bạn cần làm gì để nhận tiền

Trong hầu hết các trường hợp, bạn không cần làm gì cả. Không cần điền biểu mẫu, không cần gọi cho môi giới, cũng không cần đăng ký: bạn chỉ cần nắm giữ cổ phiếu vào cuối ngày giao dịch trước ngày ex-dividend, tiền mặt sẽ tự động chuyển vào tài khoản của bạn vào ngày thanh toán, thường là vài tuần sau đó. Mua cổ phiếu ngay trong ngày cuối cùng đó vẫn được tính, vì các giao dịch tại Mỹ thanh toán vào ngày làm việc tiếp theo (T+1), và ngày ex-dividend được thiết lập dựa trên cơ sở này. Bước tùy chọn duy nhất là DRIP (kế hoạch tái đầu tư cổ tức), một cài đặt của môi giới giúp chuyển đổi tiền mặt thành các cổ phiếu lẻ của cùng mã đó.

Vấn đề thuế là điểm mấu chốt khi xét đến ngày ex-dividend. Trong một tài khoản chịu thuế tại Mỹ, cổ tức chỉ được coi là qualified (đủ điều kiện) và chịu mức thuế thấp hơn áp dụng cho lãi vốn dài hạn nếu bạn nắm giữ cổ phiếu hơn sáu mươi ngày trong khoảng thời gian một trăm hai mươi mốt ngày, bắt đầu từ sáu mươi ngày trước ngày ex-dividend. Nếu bạn mua vào ngày trước ex-dividend, nhận khoản thanh toán, rồi bán ra một tuần sau đó, bạn sẽ không đạt yêu cầu này: khoản thanh toán sẽ bị đánh thuế như thu nhập thông thường. Các khoản phân phối từ REIT và nhiều quỹ đầu tư luôn là thu nhập thông thường, và loại hình tài khoản cũng làm thay đổi tình hình (tài khoản IRA có thể tránh được vấn đề này). Đây không phải là lời khuyên về thuế, nhưng chiến lược "đánh bắt" cổ tức trong ngắn hạn thường mang lại giá trị thực tế sau thuế thấp hơn so với vẻ ngoài của nó.

Diễn biến giá thực tế vào sáng ngày giao dịch không hưởng quyền

Lý thuyết thông thường cho rằng cổ phiếu sẽ mở cửa vào ngày giao dịch không hưởng quyền (ex-date) với mức giá "đã điều chỉnh giảm theo cổ tức". Sở giao dịch thực hiện đánh dấu giá tham chiếu thấp xuống trước giờ mở cửa, nhưng mức giá khớp lệnh đầu tiên (opening print) chính là mức giá đã điều chỉnh đó cộng với mọi biến động xảy ra trong đêm. Dưới đây là ba mã cổ phiếu chi trả cổ tức tiêu biểu tại các ngày ex-date gần nhất:

Truy vấnBa mã cổ phiếu tiêu biểu tại ngày giao dịch không hưởng quyền gần nhất: giá đóng cửa, giá mở cửa và mức chi trả
TickerNgày GDKHQ gần nhấtNhãn GDKHQ gần nhấtCổ tức (USD)Giá đóng cửa trước GDKHQ (USD)Giá mở cửa phiên GDKHQ (USD)Gap mở cửa (%)Cổ tức/Giá (%)
KO2026-06-15Jun 150.5382.681.08-1.840.64
VZ2026-07-10Jul 100.707542.2241.61-1.461.68
XOM2026-08-17Aug 171.03160.09160.10.010.64
Câu lệnh SQL chính xác đằng sau mỗi con số
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
Tự chạy truy vấn này

Hãy xem xét ngày ex-date gần nhất của Coca-Cola, Jun 15: khoản chi trả 0.53, tương đương 0.64% so với mức giá đóng cửa 82.6 của phiên trước đó, so với mức giá khớp lệnh đầu tiên vào sáng ngày ex-date là 81.08, tạo ra một khoảng cách -1.84%. Khoản chi trả của Verizon tương đương 1.68% so với mức giá đóng cửa 42.22 trước đó; cổ phiếu này mở cửa ở mức -1.46%. Khoản chi trả của Exxon tương đương 0.64%; cổ phiếu này mở cửa ở mức 0.01%. Ba mã chi trả, ba khoảng cách chênh lệch khác nhau, và không mã nào khớp chính xác với giá trị cổ tức. Việc điều chỉnh giá là một nghiệp vụ kế toán đối với giá tham chiếu; trong khi giá mở cửa là một mức giá thực tế, và giá cả biến động qua đêm vì những lý do không liên quan đến cổ tức. Khoản chi trả được biết trước; còn giá vào sáng ngày ex-date thì không.

Chiến lược dividend capture có hiệu quả không?

"Dividend capture" là ý tưởng mua cổ phiếu ngay trước ngày giao dịch không hưởng quyền (ex-dividend date), nhận khoản chi trả, rồi bán ra khi giá phục hồi. Ý tưởng này chứa đựng một tuyên bố có thể kiểm chứng. Bài kiểm tra: 79 sự kiện ex-dividend của năm mươi cổ phiếu vốn hóa siêu lớn trong sáu tháng qua, mỗi sự kiện được theo dõi từ giá đóng cửa trước ngày ex-date cho đến giá mở cửa sáng hôm sau, giá đóng cửa ngày ex-date, và sau một, năm, mười phiên giao dịch.

Truy vấnCác sự kiện chia cổ tức của nhóm mega-cap trong 6 tháng qua: biến động giá từ ngày trước khi chốt quyền
Điểm kiểm traSự kiệnCổ tức trung bình (%)Biến động TB (%)Biến động trung vị (%)Tỷ lệ hồi phục trên giá trước ex (%)
1 ex-day open790.67-0.51-0.5825.3
2 ex-day close790.67-0.63-0.2739.2
3 one session later790.67-0.79-0.7239.2
4 five sessions later790.67-0.390.2253.2
5 ten sessions later790.670.980.3250.6
Câu lệnh SQL chính xác đằng sau mỗi con số
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
Tự chạy truy vấn này

Khoản chi trả trung bình ở đây tương đương 0.67% giá cổ phiếu trước ngày ex-date. Vào phiên sáng ngày ex-date, giá cổ phiếu trung bình biến động -0.51% so với giá đóng cửa trước đó (trung vị -0.58%), và chỉ 25.3% số sự kiện có giá mở cửa bằng hoặc cao hơn giá đóng cửa trước đó: mức điều chỉnh giảm là có thật và diễn ra ngay lập tức. Phần tiếp theo là điều mà các lời chào mời thường bỏ qua. Đến khi đóng cửa ngày ex-date, mức giá trung bình của sự kiện là -0.63% so với giá khởi điểm; một phiên sau đó là -0.79%; năm phiên sau là -0.39%; mười phiên sau là 0.98%, với 50.6% số trường hợp quay lại mức giá cũ hoặc cao hơn.

Việc chờ đợi giá "quay trở lại" đồng nghĩa với việc nắm giữ qua mười phiên biến động thông thường, những biến động có quy mô lớn hơn nhiều so với khoản chi trả 0.67% theo cả hai chiều, trong khi việc nắm giữ ngắn hạn lại làm mất đi ưu đãi thuế đối với cổ tức đủ điều kiện (qualified dividend). Cổ tức là sự chuyển dịch giá trị từ giá cổ phiếu sang tài khoản của bạn, không phải là tiền miễn phí trên bảng điện, và diễn biến giá sau đó hoàn toàn phụ thuộc vào thị trường.

Các quỹ và ETF: lý do vắng bóng trên lịch sự kiện tương lai

Nhà đầu tư thu nhập thường nắm giữ các quỹ thay vì cổ phiếu đơn lẻ, và lịch sự kiện tương lai phía trên rất ít thông tin về các quỹ này vì một lý do cấu trúc: hầu hết các quỹ ETF không công bố ngày giao dịch không hưởng quyền (ex-date) từ sớm như hội đồng quản trị của các công ty. Các khoản phân phối của quỹ chỉ được ghi nhận trên hệ thống giao dịch vào đúng ngày hoặc ngay trước ngày ex-date. Tuy nhiên, các quỹ này có nhịp độ phân phối rất đều đặn, đủ để nhà đầu tư lập kế hoạch. Dưới đây là mười ba quỹ thu nhập phổ biến, cùng với ngày ex-date gần nhất, khoảng cách thông thường giữa các ngày ex-date và ngày dự kiến tiếp theo dựa trên nhịp độ đó:

Truy vấnMười ba quỹ cổ tức và thu nhập lớn: ngày chốt quyền gần nhất, tần suất và ngày chốt quyền dự kiến tiếp theo
TickerSố lần chi trả/nămNgày GDKHQ gần nhấtNhãn GDKHQ gần nhấtCổ tức gần nhất ($)Số ngày gap điển hìnhNgày ex dự kiếnNhãn ngày ex dự kiến
DGRO42026-06-15Jun 150.3306912026-09-14Sep 14
DVY42026-06-15Jun 151.2472912026-09-14Sep 14
SPY42026-06-18Jun 181.9035912026-09-17Sep 17
VYM42026-06-18Jun 180.9795912026-09-17Sep 17
QYLD122026-08-24Aug 240.1829282026-09-21Sep 21
SPHD122026-08-24Aug 240.2196282026-09-21Sep 21
SPYD42026-06-22Jun 220.5428912026-09-21Sep 21
NOBL42026-06-24Jun 240.3037912026-09-23Sep 23
SCHD42026-06-24Jun 240.2525912026-09-23Sep 23
VIG42026-06-26Jun 260.9988912026-09-25Sep 25
JEPI122026-09-01Sep 10.3714302026-10-01Oct 1
JEPQ122026-09-01Sep 10.6826302026-10-01Oct 1
HDV42026-08-19Aug 190.1046902026-11-17Nov 17
Câu lệnh SQL chính xác đằng sau mỗi con số
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
Tự chạy truy vấn này

Quỹ có ngày gần nhất trong nhóm là DGRO, với ngày ex-date gần nhất vào Jun 15 ở mức $0.3306 mỗi chứng chỉ quỹ theo chu kỳ 91 ngày, dự kiến ngày ex-date tiếp theo vào khoảng Sep 14. Quỹ có thời gian xa nhất là HDV, vận hành theo chu kỳ 90 ngày, hướng tới ngày Nov 17. Cột payments_per_year phân loại các nhóm quỹ: các quỹ chi trả mười hai lần một năm sẽ có ngày ex-date khoảng bốn tuần một lần; các quỹ chi trả bốn lần một năm thực hiện mỗi quý một lần, vào các tháng cuối quý. Hãy coi ngày dự kiến này là ước tính, chỉ có thông báo từ đơn vị quản lý quỹ mới là quyết định cuối cùng.

Đây là một tháng bận rộn hay trầm lắng?

Ngày giao dịch không hưởng quyền (ex-dividend date) không được phân bổ đều trong năm. Dưới đây là số liệu trung bình theo tháng dương lịch trong ba năm qua:

Truy vấnNgày giao dịch không hưởng quyền theo tháng: trung bình 3 năm, so sánh tần suất quý và tháng
ThángSố ngày ex/nămTrả cổ tức hàng quýTrả cổ tức hàng tháng
01 Jan20435171024
02 Feb31089861559
03 Mar560526591541
04 Apr33346351596
05 May424111591619
06 Jun579226401612
07 Jul31946681661
08 Aug381311431658
09 Sep497323961448
10 Oct27026601511
11 Nov337011981521
12 Dec638025831951
Câu lệnh SQL chính xác đằng sau mỗi con số
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
Tự chạy truy vấn này

Các tháng cuối quý là thời điểm tập trung nhiều nhất: tháng Ba trung bình có 5605 ngày ex-date, tháng Sáu có 5792, tháng Chín có 4973 và tháng Mười hai có 6380; mỗi tháng này đều ghi nhận hơn hai nghìn mã chi trả cổ tức theo quý (riêng tháng Sáu là 2640). Tháng đầu tiên của mỗi quý thường có số lượng thấp hơn, với tháng Một trung bình là 2043 và tháng Bảy là 3194, chỉ bằng một nửa hoặc ít hơn so với các tháng cuối quý. Mức nền cho các tháng trầm lắng này chính là nhóm chi trả hàng tháng: 1661 số lượng trung bình của tháng Bảy đến từ các mã chi trả hàng tháng, vốn không phụ thuộc vào lịch chi trả theo quý. Danh sách ngắn trong tuần này là đặc điểm của lịch trình, không phải là đánh giá về thị trường.

Tại sao các lịch trình khác biệt và cách đọc bảng này

Nếu so sánh trang này với lịch của các công ty môi giới, bạn sẽ thấy những khác biệt nhỏ. Mỗi lịch trình được xây dựng dựa trên các thông báo từ công ty, và các nguồn dữ liệu khác nhau về tốc độ cập nhật thông báo, cách hiển thị các ngày đã điều chỉnh, cũng như việc có bao gồm các quỹ, quỹ tín thác và niêm yết nước ngoài hay chỉ tính các công ty vận hành (số lượng ngày ở trên bao gồm tất cả; chỉ các bảng xếp hạng mới áp dụng ngưỡng vốn hóa thị trường). Khi hai lịch trình không khớp nhau, thông cáo báo chí công bố của công ty là căn cứ quyết định. Dữ liệu độ sâu thị trường được tính toán trực tiếp:

Truy vấnDữ liệu cổ tức đã công bố: thông tin chi tiết đằng sau lịch này
Ngày ex tương lai đã công bốTrong 7 ngày tớiQuỹ công bố trước ngày chốtNgày công bố xa nhấtNhãn ngày công bố xa nhất
402347502027-11-12Nov 12, 2027
Câu lệnh SQL chính xác đằng sau mỗi con số
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
Tự chạy truy vấn này

4023 ngày giao dịch không hưởng quyền (ex-dividend date) trong tương lai hiện đã có trong hệ thống, với 475 ngày nằm trong vòng một tuần tới, và các thông báo kéo dài đến Nov 12, 2027. Trong số mười ba quỹ nêu trên, số lượng ngày ex-date được công bố trước là 0, đây là khoảng cách cấu trúc khiến cho nhịp độ, chứ không phải các thông báo, mới là cách để dự đoán ngày ex-date tiếp theo của một quỹ. Hội đồng quản trị chỉ công bố từng cuộc họp một, vì vậy lịch trình xa hơn sẽ được lấp đầy khi có thông báo mới: hãy coi các ngày gần là đáng tin cậy và các ngày xa là tạm thời.

Câu hỏi thường gặp về lịch ngày giao dịch không hưởng quyền (ex-dividend)

Làm thế nào để tìm các ngày giao dịch không hưởng quyền sắp tới?

Các công ty công bố mỗi khoản cổ tức kèm theo ngày giao dịch không hưởng quyền (ex-dividend date), ngày chốt danh sách (record date) và ngày thanh toán (pay date), và các thông báo này được đưa vào các nguồn dữ liệu thị trường. Trang này tính toán lịch dựa trực tiếp trên các hồ sơ đó, 4023 các ngày trong tương lai đã được lưu trữ, và được cập nhật lại hàng tuần.

Nếu tôi mua cổ phiếu vào ngày giao dịch không hưởng quyền, tôi có nhận được cổ tức không?

Không. Ngày giao dịch không hưởng quyền là ngày đầu tiên cổ phiếu được giao dịch mà không bao gồm khoản thanh toán cổ tức. Để nhận được cổ tức, bạn phải sở hữu cổ phiếu vào thời điểm đóng cửa của ngày giao dịch trước ngày ex-dividend; nếu mua vào đúng ngày ex-dividend, người bán sẽ giữ lại khoản thanh toán đó.

Tôi có cần làm gì để nhận cổ tức không?

Không. Chỉ cần nắm giữ cổ phiếu qua thời điểm đóng cửa trước ngày ex-dividend, tiền mặt sẽ tự động được ghi có vào tài khoản môi giới của bạn vào ngày thanh toán, không cần biểu mẫu, không cần yêu cầu, không cần gọi điện. Bước tùy chọn duy nhất là DRIP, một thiết lập của nhà môi giới giúp tái đầu tư khoản thanh toán vào việc mua thêm cổ phiếu.

Việc mua cổ phiếu ngay trước ngày giao dịch không hưởng quyền để hưởng cổ tức có hiệu quả không?

Dữ liệu cho thấy điều ngược lại. Trong số 79 sự kiện ex-dividend của các cổ phiếu vốn hóa siêu lớn trong sáu tháng qua, giá mở cửa trung bình của cổ phiếu đã biến động -0.51% so với giá đóng cửa trước ngày ex-dividend, trong khi giá trị thanh toán trung bình chỉ chiếm 0.67% thị giá, và mười phiên sau đó chỉ có 50.6% số cổ phiếu quay trở lại hoặc vượt mức giá ban đầu. Việc nắm giữ ngắn hạn cũng không đáp ứng được bài kiểm tra thời gian nắm giữ đối với cổ tức đủ điều kiện (qualified dividend).

Cổ tức có bị đánh thuế khác nhau tùy thuộc vào thời điểm tôi mua không?

Có, đối với tài khoản chịu thuế tại Hoa Kỳ. Một khoản cổ tức được coi là đủ điều kiện (qualified), chịu thuế theo mức thuế lãi vốn dài hạn, chỉ khi bạn nắm giữ cổ phiếu hơn sáu mươi ngày trong khoảng thời gian một trăm hai mươi mốt ngày bắt đầu từ sáu mươi ngày trước ngày ex-dividend. Một giao dịch mua ngay trước và bán ngay sau ngày này sẽ bỏ lỡ khoảng thời gian đó và khoản thanh toán sẽ bị đánh thuế như thu nhập thông thường. Các khoản phân phối từ REIT và nhiều quỹ là thu nhập thông thường bất kể thời gian nắm giữ. Đây là thông tin về cơ chế vận hành, không phải lời khuyên về thuế.

Hồ sơ cổ tức theo ticker

Mỗi doanh nghiệp vốn hóa lớn trong lịch này đều có hồ sơ cổ tức riêng, với tỷ suất cổ tức hiện tại được tính từ giá đóng cửa gần nhất, lịch sử chi trả đầy đủ được ghi nhận trên băng tin, chuỗi tăng trưởng cổ tức và diễn biến giao dịch thực tế vào các buổi sáng ngày giao dịch không hưởng quyền (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.


Mỗi bảng trên là một truy vấn được lưu trữ và quản lý phiên bản dựa trên các hồ sơ cổ tức đã công bố và dữ liệu giao dịch theo phút thực tế. Bạn có thể mở rộng mã SQL bên dưới bất kỳ bảng nào hoặc tự sàng lọc lịch trên thiết bị đầu cuối Strasmore.