Cách tìm ngày hết hạn lockup IPO
Ngày hết hạn lockup nằm trong bản cáo bạch IPO, không phải lịch thông thường. Tìm ở đâu và vì sao đếm 180 ngày từ phiên giao dịch đầu tiên có thể sai.
Ngày hết hạn lockup được ghi trong bản cáo bạch IPO. Cách nhanh nhất để tìm ngày này là mở bản cáo bạch cuối cùng của tổ chức phát hành trên EDGAR và đọc hai phần: mục “Shares Eligible for Future Sale” và phần thảo luận “Lock-Up Agreements” trong “Underwriting”. Hai phần này cho biết số cổ phiếu được phép bán và ngày hạn chế được dỡ bỏ. Quy tắc đếm ngày dưới đây là nguyên nhân khiến phần lớn các ngày được công bố bị sai. Các điều kiện dỡ bỏ hạn chế sau đó giải thích vì sao ngày được in trong tài liệu đôi khi không phải ngày có hiệu lực thực tế.
Nếu bạn muốn tìm hiểu khái niệm trước, lockup IPO là gì giải thích thỏa thuận này có tác dụng gì và ai là bên ký kết. Trang này tập trung vào cách tra cứu.
Ngày hết hạn lockup được ghi ở đâu
Mọi IPO tại Mỹ đều để lại cùng một chuỗi hồ sơ. Mở tìm kiếm toàn văn EDGAR, tìm công ty và mở danh sách hồ sơ đã nộp.
- S-1 là bản đăng ký phát hành. Tài liệu này chứa các điều khoản lockup từ bản dự thảo công khai đầu tiên. Các bản sửa đổi được nộp dưới dạng S-1/A và điều khoản có thể thay đổi giữa các bản.
- 424B4 là bản cáo bạch cuối cùng, được nộp trong vòng hai ngày làm việc sau khi chốt giá. Tài liệu này phản ánh giao dịch thực tế đã hoàn tất. Hãy đọc bản này.
Trong tài liệu, hãy tìm cả hai cách viết “lock-up” và “lockup”, vì các hồ sơ không thống nhất về dấu gạch nối. Có ba phần chứa câu trả lời.
- Shares Eligible for Future Sale là lịch nguồn cung: bao nhiêu cổ phiếu đang bị hạn chế và từng lô được phép bán từ ngày nào. Câu cần tìm thường có dạng “beginning 181 days after the date of this prospectus”.
- Underwriting, đôi khi có tiêu đề “No Sales of Similar Securities”, là phần hợp đồng: ai đã ký, họ bị hạn chế thực hiện những gì, các trường hợp ngoại lệ và tổ chức bảo lãnh nào có quyền cho phép bán cổ phiếu sớm.
- Risk Factors gần như luôn trình bày lại lịch này bằng tiếng Anh dễ hiểu hơn, trong phần rủi ro liên quan đến hoạt động bán cổ phiếu đáng kể trong tương lai.
Các loại hồ sơ công ty nộp giải thích phần còn lại của hệ thống biểu mẫu.
Đếm từ ngày chốt giá, không phải ngày giao dịch đầu tiên
Thời hạn bắt đầu từ “the date of this prospectus”. Đây là ngày chốt giá, tức buổi tối khi các tổ chức bảo lãnh xác định giá phát hành. Cổ phiếu bắt đầu giao dịch vào phiên kế tiếp. Nếu đếm 180 ngày từ cây nến đầu tiên trên biểu đồ, bạn sẽ muộn một ngày.
Thời hạn cũng được tính theo ngày lịch, không phải số phiên. Ngày kết thúc có thể rơi vào thứ Bảy. Dưới đây là chín mã niêm yết phổ biến, với ngày 180 được tính từ ngày chốt giá của từng giao dịch:
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH ipos AS (
SELECT tupleElement(pair, 1) AS ticker,
toDate(tupleElement(pair, 2)) AS pricing_date
FROM (
SELECT arrayJoin([('LYFT', '2019-03-28'), ('UBER', '2019-05-09'),
('DASH', '2020-12-08'), ('ABNB', '2020-12-09'),
('HOOD', '2021-07-28'), ('RIVN', '2021-11-09'),
('CAVA', '2023-06-14'), ('BIRK', '2023-10-10'),
('RDDT', '2024-03-20')]) AS pair
)
),
sessions AS (
SELECT DISTINCT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2019-03-01 00:00:00')
AND window_start < toDateTime('2026-08-01 00:00:00')
)
SELECT i.ticker AS ticker,
formatDateTimeInJodaSyntax(i.pricing_date, 'MMM d, yyyy') AS pricing_date_label,
formatDateTimeInJodaSyntax(addDays(i.pricing_date, 180), 'MMM d, yyyy') AS day_180_label,
formatDateTime(addDays(i.pricing_date, 180), '%W') AS day_180_weekday,
countIf(s.session_date > i.pricing_date
AND s.session_date <= addDays(i.pricing_date, 180)) AS market_opens,
formatDateTimeInJodaSyntax(
minIf(s.session_date, s.session_date >= addDays(i.pricing_date, 180)),
'MMM d, yyyy') AS next_open_session_label
FROM ipos AS i
CROSS JOIN sessions AS s
GROUP BY i.ticker, i.pricing_date
ORDER BY (minIf(s.session_date, s.session_date >= addDays(i.pricing_date, 180))
> addDays(i.pricing_date, 180)) DESC,
i.pricing_date ASCMột trăm tám mươi ngày lịch tương ứng với 122 lần thị trường mở cửa đối với DASH và 123 đối với RDDT. Nếu đếm 180 ngày giao dịch, bạn sẽ đến muộn khoảng hai tháng so với ngày thực tế. Đây là cách phổ biến khác dẫn đến sai lệch.
Bảng được sắp xếp để đưa các trường hợp ngày hết hạn rơi vào lúc thị trường đóng cửa lên đầu. DASH chốt giá vào Dec 8, 2020, ngày 180 rơi vào Sunday, và phiên đầu tiên từ ngày đó trở đi là Jun 7, 2021. Cổ phiếu được phép bán từ ngày ghi trong hợp đồng. Tuy nhiên, chúng chỉ có thể được chuyển nhượng từ phiên mở cửa tiếp theo.
180 ngày là thông lệ, không phải quy định bắt buộc
Thời hạn 180 ngày là chuẩn phổ biến trên thị trường. Đây là thông lệ, không phải yêu cầu bắt buộc. Các biến thể thường gặp trong hồ sơ gồm:
- 90 ngày, phổ biến hơn trong các giao dịch quy mô nhỏ.
- 365 ngày, đôi khi áp dụng cho nhà sáng lập hoặc cổ đông kiểm soát trong cùng giao dịch mà các cổ đông khác chỉ chịu hạn chế 180 ngày.
- Dỡ bỏ theo từng giai đoạn, trong đó một phần cổ phiếu được giải phóng vào một ngày và phần còn lại vào ngày khác. Bản cáo bạch nêu số cổ phiếu và ngày áp dụng cho từng tranche.
- Điều khoản khác nhau theo từng nhóm. Cán bộ, thành viên HĐQT, các quỹ trước IPO và nhân viên có thể ký các thỏa thuận khác nhau trong cùng một giao dịch. Khi đó, không tồn tại một ngày hết hạn lockup duy nhất.
Số lượng cổ phiếu quan trọng không kém ngày hết hạn. Hãy so sánh lượng cổ phiếu bị hạn chế với lượng cổ phiếu lưu hành tự do của mã để đánh giá nguồn cung có thể giao dịch mà lịch này bổ sung trên lý thuyết.
Điều gì có thể làm thay đổi ngày đã được công bố
- Miễn hạn chế. Các tổ chức bảo lãnh được nêu tên có thể chấp thuận bằng văn bản cho cổ đông bán sớm. Họ thường thực hiện việc này cùng với một đợt chào bán thứ cấp được tiếp thị. Không có nội dung nào trong hồ sơ ban đầu thay đổi.
- Điều kiện dỡ bỏ sớm. Nhiều thỏa thuận gần đây cho phép giải phóng một tranche khi cổ phiếu giao dịch ở mức bằng hoặc cao hơn một mức premium nhất định so với giá IPO trong số ngày được quy định trong một khoảng thời gian cụ thể, đồng thời chỉ sau báo cáo kết quả kinh doanh quý thứ nhất hoặc thứ hai.
- Mở cửa sổ theo lịch công bố kết quả kinh doanh. Thỏa thuận thường cho phép dỡ bỏ hạn chế sau một số phiên nhất định kể từ báo cáo kết quả kinh doanh. Vì vậy, ngày có hiệu lực phụ thuộc vào lịch công bố kết quả thay vì chỉ dựa trên mốc kỷ niệm.
- Đăng ký mới. Bản đăng ký bán lại, hoặc một đợt takedown từ hồ sơ shelf registration, có thể đưa một lô cổ phiếu ra thị trường theo lịch riêng.
Mỗi trường hợp trên đều được ghi trong một hồ sơ hoặc thông báo của công ty. Một ngày trên website lịch thị trường mà không có hồ sơ nào hỗ trợ chỉ là dự đoán.
Diễn biến giao dịch quanh ngày 180
Khối lượng là yếu tố có thể quan sát được. Dưới đây là một mã niêm yết được theo dõi từng tuần trong năm đầu tiên, Reddit, mã này chốt giá ngày 20 tháng 3 năm 2024:
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH daily AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
toFloat64(sum(volume)) AS shares
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'RDDT'
AND window_start >= toDateTime('2024-03-21 00:00:00')
AND window_start < toDateTime('2025-03-21 00:00:00')
GROUP BY session_date
)
SELECT toMonday(session_date) AS week,
round(avg(shares) / 1e6, 2) AS avg_daily_volume_m
FROM daily
GROUP BY week
ORDER BY weekBiểu đồ bao quát 53 tuần. Giai đoạn đầu có khối lượng trung bình 32.21 triệu cổ phiếu mỗi phiên. Giai đoạn cuối có khối lượng trung bình 12.16 triệu cổ phiếu. Khi phân nhóm các phiên theo khoảng cách đến ngày chốt giá, ta có thể định lượng các khoảng thời gian mà người tra cứu lockup cần quan tâm:
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH daily AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
toFloat64(sum(volume)) AS shares
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'RDDT'
AND window_start >= toDateTime('2024-03-21 00:00:00')
AND window_start < toDateTime('2025-03-21 00:00:00')
GROUP BY session_date
)
SELECT multiIf(dateDiff('day', toDate('2024-03-20'), session_date) <= 30, 'Days 1-30',
dateDiff('day', toDate('2024-03-20'), session_date) <= 90, 'Days 31-90',
dateDiff('day', toDate('2024-03-20'), session_date) <= 170, 'Days 91-170',
dateDiff('day', toDate('2024-03-20'), session_date) <= 200, 'Days 171-200',
'Days 201-365') AS window_label,
round(avg(shares) / 1e6, 2) AS avg_daily_volume_m,
round(max(shares) / 1e6, 2) AS busiest_session_m
FROM daily
GROUP BY window_label
ORDER BY min(dateDiff('day', toDate('2024-03-20'), session_date))Các ngày 1 đến 30 có khối lượng trung bình 10.17 triệu cổ phiếu mỗi phiên. Các ngày 91 đến 170, tức giai đoạn tiến gần mốc 180 ngày, có khối lượng trung bình 3.39 triệu. Các ngày 171 đến 200, tức bốn tuần bao quanh mốc này, có khối lượng trung bình 3.92 triệu, với phiên sôi động nhất đạt 7.2 triệu cổ phiếu.
Hãy xem đây là dữ liệu của một công ty, không phải quy luật chung. Tiếp theo, giả định 180 ngày là thông lệ và áp dụng cho cả chín mã niêm yết:
Câu lệnh SQL chính xác đằng sau mỗi con số
WITH ipos AS (
SELECT tupleElement(pair, 1) AS ticker,
toDate(tupleElement(pair, 2)) AS pricing_date
FROM (
SELECT arrayJoin([('LYFT', '2019-03-28'), ('UBER', '2019-05-09'),
('DASH', '2020-12-08'), ('ABNB', '2020-12-09'),
('HOOD', '2021-07-28'), ('RIVN', '2021-11-09'),
('CAVA', '2023-06-14'), ('BIRK', '2023-10-10'),
('RDDT', '2024-03-20')]) AS pair
)
),
daily AS (
SELECT ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
toFloat64(sum(volume)) AS shares
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('LYFT', 'UBER', 'DASH', 'ABNB', 'HOOD', 'RIVN', 'CAVA', 'BIRK', 'RDDT')
AND window_start >= toDateTime('2019-07-01 00:00:00')
AND window_start < toDateTime('2024-11-01 00:00:00')
GROUP BY ticker, session_date
)
SELECT d.ticker AS ticker,
round(avgIf(d.shares, dateDiff('day', i.pricing_date, d.session_date) BETWEEN 120 AND 170) / 1e6, 2) AS baseline_volume_m,
round(avgIf(d.shares, dateDiff('day', i.pricing_date, d.session_date) BETWEEN 171 AND 200) / 1e6, 2) AS window_volume_m,
round(avgIf(d.shares, dateDiff('day', i.pricing_date, d.session_date) BETWEEN 171 AND 200)
/ avgIf(d.shares, dateDiff('day', i.pricing_date, d.session_date) BETWEEN 120 AND 170), 2) AS volume_ratio
FROM daily AS d
INNER JOIN ipos AS i ON d.ticker = i.ticker
GROUP BY d.ticker
HAVING countIf(dateDiff('day', i.pricing_date, d.session_date) BETWEEN 120 AND 170) >= 20
AND countIf(dateDiff('day', i.pricing_date, d.session_date) BETWEEN 171 AND 200) >= 10
ORDER BY volume_ratio DESCTỷ lệ này lấy khối lượng giao dịch bình quân mỗi ngày trong các ngày 171 đến 200 chia cho cùng chỉ tiêu trong các ngày 120 đến 170. Mức gần 1 cho thấy các tuần quanh ngày 180 tương đối giống các tuần trước đó. UBER có mức cao nhất, đạt 4.53x, trên nền khối lượng 8.47 triệu cổ phiếu mỗi phiên. LYFT có mức thấp nhất, đạt 0.93x. Với 9 giao dịch, cùng một giả định tạo ra nhiều kết quả khác nhau. Đây là lý do nên đọc hồ sơ thay vì chỉ dựa vào thông lệ.
Thông báo về các đợt chào bán đã đăng ký thường được công bố sau khi thị trường đóng cửa. Print đầu tiên mà nhà đầu tư nhìn thấy là giá mở cửa sáng hôm sau. Khoảng trống qua đêm giải thích cơ chế này.
Chào bán thứ cấp và Form 144 quanh ngày hết hạn
Hai loại hồ sơ thường xuất hiện cùng thời điểm với việc dỡ bỏ hạn chế.
- Chào bán đã đăng ký. Bản bổ sung cáo bạch được nộp theo Rule 424(b)(5), hoặc một S-1 mới đăng ký bán lại cổ phiếu hiện hữu, cho thấy cổ đông bán thông qua các tổ chức bảo lãnh thay vì bán từng phần trên sàn. Tài liệu nêu tên các cổ đông bán và số cổ phiếu của họ.
- Form 144. Một affiliate dự định bán restricted stock hoặc control stock phải nộp thông báo khi giao dịch vượt 5.000 cổ phiếu hoặc 50.000 USD trong bất kỳ giai đoạn ba tháng nào. Từ năm 2023, các thông báo này được nộp điện tử trên EDGAR nên có thể tìm kiếm cùng các hồ sơ khác. Rule 144 cũng giới hạn khối lượng bán hàng quý của affiliate ở mức cao hơn giữa 1% số cổ phiếu đang lưu hành hoặc khối lượng giao dịch bình quân mỗi tuần được báo cáo trong bốn tuần trước khi nộp thông báo.
Form 4 ghi nhận những gì insider thực sự đã bán. Đọc hai biểu mẫu cùng nhau: Form 144 thể hiện ý định, còn Form 4 là giao dịch đã hoàn tất.
Nhóm IPO năm 2026 sử dụng cùng hệ thống hồ sơ
Hãy mở 424B4 của mã bạn quan tâm, đọc hai phần liên quan, đếm từ ngày trên bản cáo bạch, sau đó kiểm tra xem thỏa thuận có điều kiện dỡ bỏ sớm hay không. Thị trường IPO năm 2026 trình bày dòng giao dịch trong nửa đầu năm. Tháng đầu tiên của đợt niêm yết SpaceX theo dõi diễn biến giao dịch trong những tuần sau khi mã này ra mắt.
Cần thận trọng với các bảng công bố ngày sắp tới. Phần lớn các bảng được tạo bằng cách cộng 180 ngày vào ngày niêm yết. Cách này lặp lại cả hai sai sót nêu trên: lệch một ngày và giả định rằng thông lệ áp dụng cho mọi cổ đông. Một ngày chỉ đáng tin khi có hồ sơ hỗ trợ. Vì vậy, trang này không đưa ra bảng dự báo.
Câu hỏi thường gặp về ngày hết hạn lockup
Ngày hết hạn lockup nằm ở đâu trong S-1?
Nằm ở hai phần. “Shares Eligible for Future Sale” trình bày lịch giải phóng cổ phiếu và thời điểm từng lượng cổ phiếu được phép bán. Phần “Lock-Up Agreements” trong “Underwriting” trình bày các điều khoản hợp đồng và nêu tên những tổ chức bảo lãnh có thể miễn hạn chế. Bản cáo bạch 424B4 cuối cùng lặp lại cả hai phần với số liệu của giao dịch đã chốt giá.
Lockup bắt đầu từ ngày IPO hay ngày chốt giá?
Từ ngày chốt giá. Hồ sơ thường diễn đạt là một số ngày sau “the date of this prospectus”. Đó là ngày giao dịch được chốt giá, tức một phiên trước khi cổ phiếu bắt đầu giao dịch. Theo cách đếm này, ngày 180 tương ứng với 122 lần thị trường mở cửa đối với DASH. Ngày 180 của mã này rơi vào Jun 6, 2021.
Có phải mọi IPO đều có lockup 180 ngày?
Không. Thời hạn 180 ngày là thông lệ. Các thời hạn 90 và 365 ngày cũng xuất hiện. Cơ chế dỡ bỏ theo từng giai đoạn có thể giải phóng một phần cổ phiếu sớm hơn. Các nhóm cổ đông khác nhau trong cùng một giao dịch cũng có thể ký các thỏa thuận khác nhau.
Lockup có thể kết thúc trước ngày ghi trong bản cáo bạch không?
Có. Các tổ chức bảo lãnh có thể miễn hạn chế bằng văn bản. Nhiều thỏa thuận cũng bao gồm điều kiện dỡ bỏ sớm dựa trên giá cổ phiếu trong một khoảng thời gian giao dịch nhất định, thường chỉ có hiệu lực sau khi công ty công bố kết quả kinh doanh. Hãy xác nhận việc dỡ bỏ sớm trong hồ sơ hoặc thông báo của công ty.
Làm thế nào biết insider có bán sau khi lockup hết hạn hay không?
Thông báo Form 144 ghi nhận ý định bán của affiliate. Form 4 ghi nhận các giao dịch insider đã hoàn tất. Một đợt chào bán thứ cấp đã đăng ký sẽ xuất hiện dưới dạng bản bổ sung 424(b)(5) hoặc S-1 đăng ký bán lại, trong đó nêu tên các cổ đông bán.
Mọi con số ở trên đều xuất phát từ truy vấn được lưu trữ trên dữ liệu phiên giao dịch, với câu lệnh SQL bên dưới mỗi bảng. Bạn có thể thay ticker, điều chỉnh các khoảng ngày và thực hiện cùng phép đếm trên terminal Strasmore.