شکاف در شاخص SEC EDGAR در پایان ماهها
بررسی علت کاهش شدید ثبت اسناد در پایان سه ماه از سال 2026 در شاخص SEC EDGAR و مقایسه آن با روندهای قبلی برای درک بهتر چالشهای تقویمی بازار.
آخرین روز معاملاتی در هر ماه معمولاً یکی از شلوغترین روزها در شاخص ثبت اسناد SEC است؛ یعنی فهرستی از تمامی اسناد شرکتها نزد نهاد ناظر. در سال 2026، این شاخص در سه مورد تقریباً خالی است. در روزهای 31 مارس، 30 آبرال و 30 ژوئن، تعداد اسناد ثبتشده تنها به رقمهای دو رقمی محدود میشود، در حالی که روزهای مجاور آنها شامل هزاران سند هستند. این الگو با تقویم همخوانی دارد: هر ماه در سال 2026 که آخرین روز تقویمی آن در روزهای هفته باشد، با کاهش شدید تعداد اسناد مواجه میشود و هر ماهی که آخرین روز تقویمی آن در آخر هفته باشد، روند عادی خود را حفظ میکند. در ادامه، رسیدها و زمانهای ثبت اسناد که علت این وضعیت را مشخص میکنند، روز مشابه قبلی و میزان تعداد اسناد ثبتشده در آن تاریخها آورده شده است.
این شکاف نخستین بار به عنوان یک مشکل در پایان هر فصل، زمانی که در حال تدوین خلاصهی Q2 و خلاصهی H1 بودیم، آشکار شد؛ به همین دلیل آدرس URL این صفحه بر این اساس انتخاب شده است. بررسیهای بیشتر، این موضوع را به عنوان یک مشکل در پایان هر ماه بازتعریف کرد؛ این صفحه در همان آدرس قبلی بهروزرسانی میشود.
کدام روزها در لیست نیستند
کد دقیق SQL پشت هر عدد
SELECT d, filings, month_ends_on FROM (
SELECT '2026-01-30' AS d, (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-01-30')) AS filings, 'Saturday' AS month_ends_on, 1 AS ord
UNION ALL SELECT '2026-02-27', (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-02-27')), 'Saturday', 2
UNION ALL SELECT '2026-03-31', (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-03-31')), 'weekday (the gap day)', 3
UNION ALL SELECT '2026-04-30', (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-04-30')), 'weekday (the gap day)', 4
UNION ALL SELECT '2026-05-29', (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-05-29')), 'Sunday', 5
UNION ALL SELECT '2026-06-30', (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-30')), 'weekday (the gap day)', 6
UNION ALL SELECT '2025-09-30', (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2025-09-30')), 'weekday, full in the prior year', 7
UNION ALL SELECT '2025-12-31', (SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2025-12-31')), 'weekday, full in the prior year', 8
) ORDER BY ordالگوی دادهها در ستون به صورت عمودی قابل مشاهده است. آخرین روز کاری ماه ژانویه دارای 4332 پرونده است و ماه فوریه دارای 7870 پرونده است؛ آخرین روز تقویمی هر دو ماه به شنبه افتاد، بنابراین آخرین روز کاری یک یا دو روز زودتر از پایان ماه قرار داشت. سپس در تاریخ 31 مارس مقدار 55، در 30 آوریل مقدار 34، مجدداً در 29 می مقدار 5527 (می در یک یکشنبه پایان یافت) و در 30 ژوئن مقدار 31 ثبت شده است. دادههای کنترلشده مربوط به سال قبل، دارای 3460 و 2289 پرونده هستند که همان ساختار پایان هفته و پایان ماه را با دادههای کامل نشان میدهند. این کمبود دقیقاً و تنها زمانی رخ میدهد که آخرین روز تقویمی یک ماه در سال 2026، خودش یک روز کاری باشد.
ابعاد این شکاف به زبان ساده
تعداد خام ثبتها، شدت این وضعیت را کمتر از آنچه هست نشان میدهد. در اینجا تمام پایانهای ماه در روزهای کاری از سال 2020 که تعداد ثبتها در آنها کمتر از هزار مورد بوده، در مقایسه با میانگین روزهای شاخص در بازه پنج روزی اطراف آن، آورده شده است.
کد دقیق SQL پشت هر عدد
WITH daily AS (
SELECT
filing_date,
uniqExact(accession_number) AS filings,
uniqExact(cik) AS companies,
max(_ingest_time) AS last_arrived
FROM global_markets.stocks_sec_edgar_index
WHERE filing_date >= toDate('2019-12-20') AND filing_date <= toDate('2026-07-06')
GROUP BY filing_date
),
month_ends AS (
SELECT arrayJoin(arrayMap(i -> toLastDayOfMonth(addMonths(toDate('2020-01-01'), i)), range(78))) AS me
),
sparse AS (
SELECT
e.me AS me,
toUInt32(ifNull(d.filings, 0)) AS filings,
toUInt32(ifNull(d.companies, 0)) AS companies,
d.last_arrived AS last_arrived
FROM month_ends AS e
LEFT JOIN daily AS d ON d.filing_date = e.me
WHERE toDayOfWeek(e.me) <= 5 AND toUInt32(ifNull(d.filings, 0)) < 1000
)
SELECT
toString(s.me) AS month_end,
any(s.filings) AS filings,
any(s.companies) AS companies,
toUInt32(round(avgIf(n.filings, abs(dateDiff('day', n.filing_date, s.me)) <= 5 AND n.filing_date != s.me))) AS neighbour_day_avg,
round(100 * any(s.filings) / avgIf(n.filings, abs(dateDiff('day', n.filing_date, s.me)) <= 5 AND n.filing_date != s.me), 1) AS pct_of_normal,
toString(toDate(any(s.last_arrived))) AS last_row_arrived
FROM sparse AS s
CROSS JOIN daily AS n
GROUP BY s.me
ORDER BY s.me6 روز در شش سال و نیم. سه مورد مربوط به سال 2026 در پایینترین سطح قرار دارند: 30 ژوئن با 31 ثبت در برابر میانگین روزهای مجاور که 4443 است — یعنی 0.7% یک روز عادی، با کاهشی بیش از 99 درصد. 30 آوریل در سطح 0.6% و 31 مارس در سطح 1.2% قرار دارند. اگر به جای اسناد، شرکتها را در نظر بگیریم: کل نامهای شاخص در 30 ژوئن 2026 شامل 27 ثبتکننده مجزا است.
سه مورد دیگر نشان میدهند که این مسئله صرفاً مربوط به سال 2026 نیست. دو مورد از آنها تعطیلات عادی فدرال هستند: 31 مه 2021 روز Memorial Day بود و 31 دسامبر 2021 نیز تعطیل رسمی فدرال برای سال نو میلادی 2022 بود (1 ژانویه مصادف با شنبه بود). سیستم EDGAR تقویم تعطیلات فدرال را رعایت میکند، بنابراین شمارشهای نزدیک به صفر در آن روزها — یعنی 0 و 1 ثبت — نشاندهنده بسته شدن پنجره ثبت اسناد است، نه یک نقص فنی.
مورد سوم بسیار جالب است. 30 آوریل 2025 دارای 928 ثبت است، یعنی 19.1% از روزهای مجاور؛ این یک وضعیت نیمهکاره است، نه خالی بودن کامل. این تنها پایان ماه در روزهای کاری از سال 2020 است که بدون وجود تعطیلات، تا این حد پایینتر از سطح عادی قرار دارد و یک سال پیش از سقوطهای سال 2026 رخ داده است: نسخهای ملایمتر از همان رفتار مرزی، که تقریباً به اندازه یکپنجم یک روز عادی است، نه یکصدم آن.
Every month-end since 2020
کد دقیق SQL پشت هر عدد
WITH month_ends AS (
SELECT arrayJoin(arrayMap(i -> toLastDayOfMonth(addMonths(toDate('2020-01-01'), i)), range(78))) AS me
),
daily AS (
SELECT filing_date, uniqExact(accession_number) AS filings
FROM global_markets.stocks_sec_edgar_index
WHERE filing_date >= toDate('2020-01-01') AND filing_date <= toDate('2026-06-30')
GROUP BY filing_date
)
SELECT toString(e.me) AS month_end, toUInt32(ifNull(d.filings, 0)) AS filings
FROM month_ends AS e
LEFT JOIN daily AS d ON d.filing_date = e.me
WHERE toDayOfWeek(e.me) <= 5
ORDER BY e.meThe long series is the control for the whole argument. Across the 55 weekday month-ends between January 2020 and June 2026, the line runs flat in the thousands and then falls off a cliff at the right-hand edge. Nothing about a month's last weekday makes filings scarce — deadlines cluster there.
محتوای واقعی در روز مفقود شده چیست
کد دقیق SQL پشت هر عدد
SELECT
form_type,
uniqExactIf(accession_number, filing_date = toDate('2026-06-29')) AS normal_day_jun29,
uniqExactIf(accession_number, filing_date = toDate('2026-06-30')) AS gap_day_jun30
FROM global_markets.stocks_sec_edgar_index
WHERE filing_date IN (toDate('2026-06-29'), toDate('2026-06-30'))
GROUP BY form_type
ORDER BY gap_day_jun30 DESC, normal_day_jun29 DESC, form_type
LIMIT 14این بخش، علت نقص را مشخص میکند. فرمهایی که در تاریخ 30 ژوئن دارای ردیف هستند، در ابتدای لیست قرار دارند: اعلانهای 15 EFFECT — که تأییدیه خودِ SEC مبنی بر اجرایی شدن صورت ثبت است — به همراه ثبت مشاوران شهرداری، صلاحیتهای ارائه شده و اعلانهای محل معاملات. اینها اسنادی هستند که سیستمهای SEC صادر میکنند، نه اسنادی که شرکتها ارسال میکنند. تمام انواع فرمهایی که حجم معمول یک روز را تشکیل میدهند، شامل 0 ردیف هستند: مکملهای طرح پیشنهادی (prospectus supplements) در تاریخ 29 ژوئن شامل 926 424B2 مورد بود که روز بعد صفر بود، گزارشهای معاملات داخلی شامل 595 فرم 4 که روز بعد صفر بود، و گزارشهای رویدادهای شرکتی شامل 223 8-K مورد که روز بعد صفر بود. یک سهشنبه در پایان فصل با صفر گزارش 8-K و صفر فرم معاملات داخلی، یک واقعیت بازار نیست؛ بلکه یک فایل مفقود شده است.
زمان ورود ردیفها
کد دقیق SQL پشت هر عدد
SELECT
toString(filing_date) AS d,
uniqExact(accession_number) AS filings,
formatDateTime(min(_ingest_time), '%Y-%m-%d %H:%i') AS first_arrived
FROM global_markets.stocks_sec_edgar_index
WHERE filing_date >= toDate('2026-06-26') AND filing_date <= toDate('2026-07-10')
GROUP BY filing_date
ORDER BY filing_dateبرچسبهای زمانی ورود، دقیقترین معیار در اینجا هستند. تمام روزهای ماه ژوئن تا تاریخ 29ام، در قالب یک عملیات به انبار رسیدند — 2026-07-01 09:38 UTC، یک محموله واحد که کل ماه را در بر میگرفت. روز 30 ژوئن، صبح روز بعد و در ساعت 2026-07-02 09:12 به تنهایی وارد شد و با خود 31 ردیف اداری آورد، در حالی که همسایهی آن در یک روز زودتر، 4439 ردیف داشت. روزهای مرزی مارس و آوریل نیز الگوی مشابهی را در یک ماه زودتر نشان میدهند.
کد دقیق SQL پشت هر عدد
SELECT
(SELECT toString(toDate(min(_ingest_time))) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-04-01')) AS apr1_first_arrived,
(SELECT toString(toDate(min(_ingest_time))) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-04-30')) AS apr30_first_arrived,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-03-31')) AS mar31_filings_now,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-04-30')) AS apr30_filings_now,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-30')) AS jun30_filings_now,
(SELECT uniqExact(form_type) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-30')) AS jun30_form_typesردیفهای اول آوریل در تاریخ 2026-05-01 وارد شدند — محموله ماه آوریل که در آستانه ماه می اجرا شد. ردیفهای 30 آوریل در تاریخ 2026-05-02 وارد شدند، یعنی یک روز دیرتر از محمولهای که باید شامل آنها میبود. این فاصله یکروزه، کل علت مشکل را در یک عدد خلاصه میکند: عملیات بارگذاری ماه، یک روز پیش از پایان ماه متوقف میشود و سپس روز مرزی توسط یک مسیر متفاوت و آشکارا ناقص، دریافت میشود. زمانی که آخرین روز تقویمی یک ماه، آخر هفته باشد، این نقص هزینهای ندارد (چیزی برای ثبت کردن وجود ندارد)؛ اما زمانی که آن روز یک روز معاملاتی باشد، یکی از شلوغترین جلسات ماه با تعدادی از اطلاعیههای صادر شده توسط SEC که در 6 نوع فرم پخش شدهاند، جایگزین میشود.
اینکه آیا این خطای یکروزه مربوط به خط لوله تامینکننده است یا فرآیند دریافت ما، از داخل این انبار قابل تشخیص نیست — رفع این ابهام مستلزم دسترسی به فایلهای شاخص روزانه و خام SEC برای آن سه تاریخ است؛ مقایسهای که این صفحه قادر به انجام آن نیست. آنچه رسیدها اثبات میکنند این است: سه تاریخ مشخص برای شمارش ثبت مدارک غیرقابل استفاده هستند.
وضعیت در زمان این بازبینی
اصلاح نشده است. تمام شمارشهای این صفحه در هر بار تولید مجدد محاسبه میشوند؛ در این نسخه، دادههای 31 مارس همچنان شامل 55 پرونده، 30 آوریل شامل 34 پرونده و 30 ژوئن شامل 31 پرونده است که مربوط به زمان ثبت اولیه شکاف هستند. شاخص در سایر موارد سالم است: 2026-07-10 شامل 2198 پرونده است که طبق برنامه ارائه شده است. محدودههای پایداری در اینجا، این سه روز را در مقادیر نزدیک به صفر نگه میدارند؛ بنابراین، هرگونه تکمیل دادههای گذشته باعث فعال شدن این محدودهها و اجبار به بازسازی صفحه با اعداد اصلاحشده میشود.
آیا مورد دیگری از قلم افتاده است؟
وجود یک خطای مرزی در یکی از بارگذاریکنندهها، اطلاعاتی درباره سایر آنها ارائه نمیدهد. آیا در بخشهای دیگر انبار داده نیز در تاریخ 30 ژوئن خللی وجود دارد؟
کد دقیق SQL پشت هر عدد
SELECT dataset, jun29, jun30 FROM (
SELECT 'SEC filing index (filings)' AS dataset,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-29')) AS jun29,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-30')) AS jun30, 1 AS ord
UNION ALL SELECT 'Minute bars (tickers)',
(SELECT uniqExact(ticker) FROM global_markets.delayed_stocks_minute_aggs WHERE window_start >= toDateTime('2026-06-29 04:00:00') AND window_start < toDateTime('2026-06-30 04:00:00')),
(SELECT uniqExact(ticker) FROM global_markets.delayed_stocks_minute_aggs WHERE window_start >= toDateTime('2026-06-30 04:00:00') AND window_start < toDateTime('2026-07-01 04:00:00')), 2
UNION ALL SELECT 'Dividends (ex-div records)',
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = toDate('2026-06-29')),
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date = toDate('2026-06-30')), 3
UNION ALL SELECT 'News articles',
(SELECT count() FROM global_markets.stocks_news WHERE toDate(published_utc) = toDate('2026-06-29')),
(SELECT count() FROM global_markets.stocks_news WHERE toDate(published_utc) = toDate('2026-06-30')), 4
UNION ALL SELECT 'Treasury curve rows',
(SELECT count() FROM global_markets.treasury_yields WHERE date = toDate('2026-06-29')),
(SELECT count() FROM global_markets.treasury_yields WHERE date = toDate('2026-06-30')), 5
) ORDER BY ordخیر، چنین نیست. دادههای لحظهای (minute-bar tape) شامل 11982 نماد در تاریخ 30 ژوئن در برابر 11903 نماد در روز قبل است؛ همچنین 704 رکورد بدون سود سهام، 215 مقاله خبری و منحنی کامل اوراق قرضه در این روز ثبت شدهاند. تنها شاخص ثبت اسناد — با 31 سطر در مقابل 4439 — دارای این نقص است. خلاصهی هفته شامل گزارشهای جلسات است: 30 ژوئن 2026 یک سهشنبه و یک روز کامل معاملاتی بود.
معنای این موضوع در صورت محاسبه تعداد ثبت اسناد
هر شمارشی که بازه زمانی آن شامل 31 مارس، 30 آوریل یا 30 ژوئن 2026 باشد، با خطایی فراتر از گرد کردن اعداد مواجه است: سه روز پرکار در ثبت اسناد با مقداری نزدیک به صفر جایگزین شدهاند. این مسئله باعث کاهش مجموع ماهانه مارس، آوریل و ژوئن، مجموعهای فصلی Q1 و Q2، و مجموع نیمسال میشود. مرور ژوئن اختصاصی ما، تعداد اسناد ثبتشده را همراه با جزئیات منتشر میکند؛ همین هشدار برای هر پرسشی درباره تعداد اسناد که در ترمینالها — از جمله ترمینال ما — مربوط به آن تاریخها باشد، صدق میکند. اگر تعداد اسناد ماهانه در سال 2026 را درخواست کنید، سه مورد از شش پاسخ، تقریباً به اندازه یک روز کامل از اسناد، کم هستند.
انواع فرمها در هر خط
- 8-K — گزارش رویداد شرکتی: زمانی که یک شرکت اتفاقی را به بازار اطلاع میدهد.
- Form 4 — گزارش معاملات افراد داخل شرکت (مدیر، عضو هیئتمدیره یا سهامدار عمده) در سهام خود.
- 10-Q — گزارش مالی فصلی.
- 424B2 — تکمله اوراق اسناد: سند تعیین قیمت برای عرضه اوراق بهادار.
- NPORT-P — گزارش ماهانه از داراییهای پرتفوی یک صندوق.
- EFFECT / QUALIF / MA-I / ATS-N — اطلاعیههای اداری تولید شده توسط سیستمهای SEC: اعتبار بخشی به ثبت، تایید صلاحیت عرضه، ثبت مشاور شهری، یا ثبت افشای اطلاعات توسط محل معاملات. اینها مواردی هستند که از روزهای وقفهدار باقی ماندهاند. کدام پروندههای SEC بیشتر تکرار میشوند توزیع کامل آنها را بررسی میکند.
سوالات متداول
آیا مشکل شکاف در پروندههای SEC EDGAR برطرف شده است؟
تا زمان این بازبینی، خیر. در نسخه فعلی ما از این شاخص، تاریخهای 31 مارس، 30 آوریل و 30 ژوئن 2026 به ترتیب دارای پروندههای 55، 34 و 31 هستند. این صفحه با تغییر دادهها بازسازی میشود؛ اگر دادهای از گذشته جایگزین شود، محدودههای پایداری آن برای خطا تنظیم شدهاند که هدف آن انتشار رسیدها به جای یادداشتهاست.
آیا این به معنای گم شدن پروندهها توسط SEC است؟
خیر. اسناد در EDGAR وجود دارند؛ آنچه در نسخه پاییندست این شاخص مفقود شده، یک روز کامل از سطرها است. زمانهای ورود نشان میدهند که بارگذار طبق برنامه اجرا شده و یک روز تقریباً خالی را تحویل داده است. اینکه این خطای یکواحدی مربوط به تامینکننده داده است یا بارگذاری ما، بستگی به نهایی شدن فایلهای شاخص روزانه خودِ SEC برای آن سه تاریخ دارد.
شاخص پروندههای SEC EDGAR چیست؟
EDGAR سیستم ثبت عمومی SEC است و شاخص روزانه آن، فهرست تمام اسناد ثبت شده در آن روز را شامل میشود: نام شرکت، نوع فرم، شماره دسترسی (accession number) که پرونده را منحصراً شناسایی میکند، و لینک مربوطه. این سیستم ستون فقرات هر چیزی است که با پروندهها سر و کار دارد؛ از جمله سیستمهای پایش معاملات افراد داخل شرکت، فیدهای رویدادهای 8-K و ردیابهای دفترچه معامله.
چه نوع فرمهایی در 30 ژوئن 2026 مفقود بودند؟
تمام فرمهایی که شرکتها ثبت میکنند. این روز شامل 6 نوع فرم است که همگی اطلاعیههای اداری تولید شده توسط SEC هستند. در روز شکاف، تمامی 926 424B2 پروندههای جلسه قبل، 595 گزارشهای insider Form 4 و 223 8-K گزارشهای رویداد، به سطح 0 کاهش یافتهاند.
آیا این اتفاق پیش از سال 2026 رخ داده است؟
یک بار، به شکلی خفیفتر. تاریخ 30 آوریل 2025 در سطح 19.1% یک روز عادی قرار دارد که به جای خالی بودن، ناقص است و با هیچ تعطیلی رسمی توضیح داده نمیشود. تنها پایانهای ماه دیگر که در روزهای کاری زیر 1,000 مورد داشتهاند، 31 مه 2021 (Memorial Day) و 31 دسامبر 2021 (تعطیل رسمی فدرال برای سال نو میلادی) هستند که هر دو تعطیلات واقعی بودند و نه خطای دادهای.
روششناسی
- تمام شمارشها بر اساس شماره دسترسی (accession number) بدون تکرار انجام میشوند: یک پرونده میتواند تحت چندین نهاد فهرست شود.
- «میانگین روزهای مجاور» برابر است با میانگین شمارش روزهای شاخص در بازه پنج روز تقویمی قبل و بعد از روز مورد نظر، بدون احتساب خود آن روز.
- زمانهای ورود، مقادیر
_ingest_timeمربوط به این انبار هستند، نه مقادیر SEC؛ این مقادیر جریان دادهای را که یک خواننده در این صفحه واقعاً تجربه میکند، اندازهگیری میکنند. - پایانهای ماه در روزهای هفته، آخرین روز تقویمی هر ماه است که بین دوشنبه تا جمعه قرار میگیرد؛ دو مورد از این روزها تعطیلات رسمی فدرال هستند که در بالا با همین عنوان مشخص شدهاند.
- این یادداشت در همان محل بهروزرسانی میشود؛ چارچوب اصلی پایان فصل توسط شواهد پایان ماه در همان URL جایگزین شده است. هر عدد، نتیجه یک پرسوجوی ذخیرهشده است که در هر بار بازسازی، از طریق مسیر محدود و فقط-خواندنی اجرا میشود — میتوانید خودتان همان پرسوجوها را در ترمینال Strasmore اجرا کنید.