Справочные курсы USD/PLN: NBP и ЕЦБ, 2025 год Python 3.10 или новее, только стандартная библиотека. Источники: NBP и ECB statistics. Классификация и расчеты — работа редакции. Исходные времена загрузки 7 октября 2026 года сохранены в provenance.json. NBP raw и дневное объединение в ZIP НЕ включены. Распакуйте пакет в отдельную папку. Для получения четырех исходников непосредственно из официального API NBP и пересчета выполните: python reproduce.py --download-nbp Это четыре HTTPS GET-запроса по адресам из provenance.json, каждый с диапазоном до 93 дней. Локальные файлы сохраняются в private-nbp/. Если у вас уже есть соответствующие исходники для локального анализа, поместите их туда под именами из provenance.json и выполните без сети: python reproduce.py Источники и результаты проверяются также при python -O. Ожидается PASS: 251 дата NBP, 255 дат ЕЦБ, 250 общих дат, 12 месячных строк, среднее со знаком -0.931 б.п., среднее по модулю 16.815 б.п. Программа использует точные рациональные числа для формулы и агрегирования. Проверка сохраненных 50-значных десятичных агрегатов допускает только абсолютную разность менее 1e-43 б.п.; это не финансовый порог ошибки. XML ЕЦБ в sources/ — неизмененный исходный файл целиком. Сначала проверяются размер и SHA-256 всех пяти источников. Изменившийся ответ NBP НЕ заменяет старый снимок автоматически: проверка останавливается. Для нового снимка потребуется отдельно документировать хеши и пересчет. Само наличие API не означает разрешения повторно размещать его базу. Условия источников: https://api.nbp.pl/ и https://nbp.pl/regulaminy Статистика ЕЦБ: источник ECB statistics; сохраняйте исходную статистику с метаданными без изменения, учитывайте условия: https://www.ecb.europa.eu/stats/ecb_statistics/governance_and_quality_framework/html/usage_policy.en.html Ни NBP, ни ЕЦБ не проверяли и не одобряли эту редакционную публикацию. monthly-aggregates.csv — наша производная таблица, английские имена полей сохранены для машинного сравнения. month — месяц; n_common_dates — общие даты; mean_signed_bps — среднее со знаком; median_signed_bps — медиана со знаком; mean_absolute_bps — среднее модулей; median_absolute_bps — медиана модулей; minimum_signed_bps и maximum_signed_bps — минимум и максимум со знаком; maximum_absolute_bps — максимум модуля; соседние поля date указывают даты экстремумов. positive_days/negative_days/zero_days — количество результатов по знаку. Положительное значение означает, что NBP выше производного курса ЕЦБ. Формула: 10000*(NBP_PLN_per_USD*ECB_USD_per_EUR/ECB_PLN_per_EUR-1). Базисный пункт — 0.01 процентного пункта относительной разности, не пипс. Объединение идет только по одинаковой дате, без заполнения пропусков и сопоставления строк по порядковому номеру. Дневной справочный курс не является одновременной исполнимой двусторонней котировкой. hypothetical_case в results.json — явно условные две записи: при 1.25 USD за EUR и 5.00 PLN за EUR производный курс равен 4.00 PLN за USD. Условные NBP 4.0080 и 3.9920 дают +20 и -20 б.п.; среднее со знаком 0, среднее по модулю 20. Это не реальные даты/курсы/торговые результаты. Расписания публикации не дают точного времени каждого наблюдения 2025 года. Не приписывайте всю разность прошедшему времени: методы и округления тоже могут различаться. Нет реконструкции первого выпуска, внутридневного пути цен, исполнения сделки или исторической доступности сайтов. ИИ помогал подготовить текст и код; тесты не заменяют отдельную экспертизу методологии. Исследование B в этот пакет не включено.