Базовая валютаO
Котируемая валютаUSDT
Статус на биржеtrading
Состояние жизненного циклаdiscovered
Чёрный списокНет
Принудительно отключёнНет
Первое обнаружение16.06.2026 14:32
Последнее обнаружение27.07.2026 03:05

Операционный охват

Контур Включён Причина
registry Да Символ находится в историческом registry.
tracking Нет Tracking отключён.
collection Нет Collection отключён.
coverage Нет Coverage refresh отключён.
pipeline Нет Символ не участвует в pipeline.
entries Нет Готовность к исполнению заблокирована критичными проверками.
position_management Нет Сопровождение позиций не требуется.
followup Нет Сопровождение вне active selection не требуется.

Почему система приняла текущее решение?

Pipeline CandidateНет
Код причиныSELECTION_OR_CRITERIA_FAILED
Следующая проверка
Новые входыЗапрещены
Проверка Статус Объяснение
История накоплена Да Исторические данные соответствуют требованиям слоя.
Freshness пройден Нет Свежесть обязательных рыночных данных ниже допустимого уровня.
В active selection Нет Символ не входит в active selection.
Trend snapshot Нет Последняя завершённая свеча устарела, тренд неактуален.
Risk profile snapshot Нет Последняя завершённая свеча устарела, volatility profile неактуален.
Liquidity profile snapshot Нет Order book устарел, liquidity profile неактуален.
Pipeline Candidate Нет Символ не прошёл active selection или soft criteria.
Execution readiness Нет Готовность к исполнению заблокирована критичными проверками.
Новые входы разрешены Нет Новые входы запрещены.
Execution: Mode policy allows entries Да Текущий execution mode разрешён для новых входов.
Execution: Not force disabled Да Принудительное отключение отсутствует.
Execution: Not blacklisted Да Символ не находится в чёрном списке.
Execution: Exchange trading enabled Да Биржевые торговые ограничения известны и пригодны для проверки новых входов.
Execution: Min notional known Да Min notional известен.
Execution: Order size constraints known Да Order size constraints известны.
Execution: Price/quantity precision known Да Price и quantity precision известны.
Execution: Data freshness ok Нет Свежесть обязательных рыночных данных ниже допустимого уровня.
Execution: Liquidity sufficient Нет Order book устарел, liquidity profile неактуален.
Execution: Spread within limit Нет Order book устарел, liquidity profile неактуален.
Execution: Estimated slippage within limit Нет Order book устарел, liquidity profile неактуален.
Execution: Cost profile known Нет Недостаточно данных для оценки суммарной стоимости исполнения.
Execution: Estimated total cost within limit Нет Суммарная стоимость исполнения не рассчитана.

Активные блокеры

Категория Объяснение
Устаревшие данные Свежесть обязательных рыночных данных ниже допустимого уровня.
Выпал из selection Символ выпал из active selection.

Timeline

Этап Дата
Discovery 26.06.2026 06:31
Selection 26.06.2026 06:31
Collection Start 23.07.2026 06:38
Coverage Ready 23.07.2026 03:38
Historical Ready 13.07.2026 13:19
Freshness Passed 23.07.2026 06:38
Dropped From Selection 01.07.2026 04:57
Followup Started 13.07.2026 10:50
Followup Released 01.07.2026 08:09

Сопровождение символа

Требуется сопровождение Нет
Причины сопровождения
Новые входы разрешены Нет
Сбор данных продолжается Нет
Coverage продолжается Нет
Position management required Нет
Дата последнего selected state 24.07.2026 05:29
Дата выпадения из selection 24.07.2026 05:45
Cooldown до

Биржевые ограничения и tradeability

TradeabilityГотов
Статус metadataready
ПричинаБиржевые торговые ограничения известны и пригодны для проверки новых входов.
Обновлено2026-07-27 03:15:32
Exchange symbol O-USDT
Trading enabled Да
Tick size 0.000010000000
Lot size 0.100000000000
Min order size 10.000000000000
Max order size 10000000000.000000000000
Min notional 0.100000000000
Price precision 5
Quantity precision 1

Тренд по символу

Primary timeframe5m
Статусstale_data
НаправлениеUnknown
Samples48
Последняя завершённая свеча устарела, тренд неактуален.
Timeframe Status Direction Strength Confidence Samples Last completed candle Message
1m stale_data Unknown 60 2026-07-24 08:48:00 Последняя завершённая свеча устарела, тренд неактуален.
5m stale_data Unknown 48 2026-07-24 08:50:00 Последняя завершённая свеча устарела, тренд неактуален.
15m stale_data Unknown 32 2026-07-24 09:00:00 Последняя завершённая свеча устарела, тренд неактуален.

Volatility / risk profile

Primary timeframe5m
Статусstale_data
РежимUnknown
Confidence
Последняя завершённая свеча устарела, volatility profile неактуален.
Timeframe Status Regime Realized vol ATR Range % Gaps Abnormal move Confidence Explanation
1m stale_data Unknown 0 Нет Последняя завершённая свеча устарела, volatility profile неактуален.
5m stale_data Unknown 0 Нет Последняя завершённая свеча устарела, volatility profile неактуален.
15m stale_data Unknown 0 Нет Последняя завершённая свеча устарела, volatility profile неактуален.

Liquidity / spread / microstructure

СтатусStale
24h volume quote
Spread %
Slippage %
Depth near mid
Liquidity score
Order book устарел, liquidity profile неактуален.
Best bid Best ask
Spread Spread %
Depth near mid, USDT Estimated slippage %
Volume stability Abnormal volume Нет
Stale order book Да Last order book at 2026-07-24 08:47:11

Market regime / correlations

Timeframe5m
Статусstale_data
RegimeUnknown
Market directionНеизвестно
BTC corr
RS vs market %
Последняя завершённая свеча устарела, market regime неактуален.
BTC correlation BTC beta
ETH correlation ETH beta
Market return % Market breadth %
Relative strength vs BTC % Relative strength vs market %
Volume rank Volatility rank

Полнота данных по символу

Общий статусУстарело
Технический статусstale
Unknown sections0
Stale sections9
Критичные данные по символу устарели.
Секция Статус Объяснение
Exchange metadata complete Биржевые торговые ограничения собраны полностью.
Candles coverage complete Покрытие обязательных свечных таймфреймов агрегировано по coverage snapshots.
Candles freshness stale Свежесть обязательных свечных таймфреймов агрегирована по last_record_at.
Ticker stale Ticker: данные устарели.
24h stats stale 24h stats: данные устарели.
Order book complete Order book: ready.
Spread metrics stale Spread metrics: данные устарели.
Liquidity metrics stale Liquidity metrics: данные устарели.
Trend stale Тренд агрегирован по current trend snapshots для 1m/5m/15m.
Volatility / risk profile stale Волатильность агрегирована по current risk profile snapshots для 1m/5m/15m.
Liquidity profile stale Order book устарел, liquidity profile неактуален.
Market regime stale Последняя завершённая свеча устарела, market regime неактуален.
Execution constraints complete Биржевые торговые ограничения известны и пригодны для проверки новых входов.

Готовность к исполнению

Статусblocked
Новые входыЗаблокированы
Source versionv2
Execution modepaper
Spread %
Slippage %
Total cost %
ПричинаГотовность к исполнению заблокирована критичными проверками.
Check Статус Critical Объяснение
Mode policy allows entries pass Да Текущий execution mode разрешён для новых входов.
Not force disabled pass Да Принудительное отключение отсутствует.
Not blacklisted pass Да Символ не находится в чёрном списке.
Exchange trading enabled pass Да Биржевые торговые ограничения известны и пригодны для проверки новых входов.
Min notional known pass Да Min notional известен.
Order size constraints known pass Да Order size constraints известны.
Price/quantity precision known pass Да Price и quantity precision известны.
Data freshness ok fail Да Свежесть обязательных рыночных данных ниже допустимого уровня.
Liquidity sufficient fail Да Order book устарел, liquidity profile неактуален.
Spread within limit unknown Да Order book устарел, liquidity profile неактуален.
Estimated slippage within limit unknown Да Order book устарел, liquidity profile неактуален.
Cost profile known unknown Да Недостаточно данных для оценки суммарной стоимости исполнения.
Estimated total cost within limit unknown Да Суммарная стоимость исполнения не рассчитана.

Derived cohorts

Cohort Availability Included
Active selected ready Нет
Blacklisted ready Нет
Canary eligible ready Нет
Canary excluded ready Да
Collection enabled ready Нет
Coverage enabled ready Нет
Data incomplete ready Да
Execution blocked ready Да
Execution ready ready Нет
Extreme volatility ready Нет
Followup ready Нет
Force disabled ready Нет
Freshness failed ready Да
High liquidity ready Нет
High problem score ready Да
High volatility ready Нет
Low liquidity ready Нет
Market regime unknown ready Да
Market risk off ready Нет
Market risk on ready Нет
Metadata incomplete ready Нет
Pipeline candidates ready Нет
Position management required ready Нет
Readiness failed ready Нет
Slippage high ready Нет
Trend down ready Нет
Trend flat/ranging ready Нет
Trend unknown ready Да
Trend up ready Нет
Trend volatile ready Нет
Wide spread ready Нет

Диагностическая цепочка

Этап Статус Reason code Source version Последнее изменение Latest event Next action
registry enabled SYMBOL_REGISTRY v11 24.07.2026 08:47 Свежесть обязательных рыночных данных ниже допустимого уровня. discover
Символ находится в registry.
selection disabled NOT_SELECTED v11 24.07.2026 05:29 Свежесть обязательных рыночных данных ниже допустимого уровня. manual review
Символ не участвует в active selection.
followup disabled FOLLOWUP_STATE v11 Свежесть обязательных рыночных данных ниже допустимого уровня. none
collection disabled COLLECTION_SCOPE v11 24.07.2026 08:47 Свежесть обязательных рыночных данных ниже допустимого уровня. collect
Сбор данных отключён.
coverage disabled COVERAGE_SCOPE v11 24.07.2026 08:47 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh coverage
Coverage refresh отключён.
readiness enabled HISTORY_READY v1 24.07.2026 08:47 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh history
Исторические данные соответствуют требованиям слоя.
freshness disabled TICKER_STALE v1 24.07.2026 08:47 Свежесть обязательных рыночных данных ниже допустимого уровня. collect / refresh
Свежесть обязательных рыночных данных ниже допустимого уровня.
trend stale_data TREND_STALE_DATA v5 2026-07-24 08:50:00 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh trend
Последняя завершённая свеча устарела, тренд неактуален.
volatility stale_data RISK_PROFILE_STALE_DATA v2 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh risk profile
Последняя завершённая свеча устарела, volatility profile неактуален.
liquidity stale_data LIQUIDITY_PROFILE_STALE_ORDER_BOOK v2 2026-07-24 08:47:11 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh liquidity profile
Order book устарел, liquidity profile неактуален.
exchange_constraints ready EXCHANGE_METADATA_READY v11 27.07.2026 03:15 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh exchange metadata
Биржевые торговые ограничения известны и пригодны для проверки новых входов.
execution_readiness blocked EXECUTION_READINESS_BLOCKED v2 27.07.2026 03:16 Свежесть обязательных рыночных данных ниже допустимого уровня. manual review / adjust config
Готовность к исполнению заблокирована критичными проверками.
pipeline disabled SELECTION_OR_CRITERIA_FAILED v11 24.07.2026 08:47 Свежесть обязательных рыночных данных ниже допустимого уровня. run pipeline
Символ не прошёл active selection или soft criteria.
entries disabled ENTRIES_BLOCKED v11 24.07.2026 08:47 Свежесть обязательных рыночных данных ниже допустимого уровня. manual review
Готовность к исполнению заблокирована критичными проверками.
position_management disabled POSITION_MANAGEMENT v11 24.07.2026 08:47 Свежесть обязательных рыночных данных ниже допустимого уровня. none
Сопровождение позиции не требуется.

История сбора рыночных данных

Запуск Старт Завершение Статус Запрошено Собрано Сколько записей Gap / Ошибки / Warning Версия глобальных параметров
#106312 24.07.2026 08:47 24.07.2026 08:47 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#106277 24.07.2026 08:36 24.07.2026 08:36 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#106223 24.07.2026 08:15 24.07.2026 08:15 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#106187 24.07.2026 08:04 24.07.2026 08:04 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#106132 24.07.2026 07:43 24.07.2026 07:43 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#106097 24.07.2026 07:32 24.07.2026 07:32 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#106043 24.07.2026 07:11 24.07.2026 07:11 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#106007 24.07.2026 07:00 24.07.2026 07:00 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105952 24.07.2026 06:39 24.07.2026 06:39 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105919 24.07.2026 06:28 24.07.2026 06:28 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105884 24.07.2026 06:07 24.07.2026 06:07 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105849 24.07.2026 05:56 24.07.2026 05:56 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105804 24.07.2026 05:44 24.07.2026 05:44 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105770 24.07.2026 05:33 24.07.2026 05:33 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105734 24.07.2026 05:13 24.07.2026 05:13 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105698 24.07.2026 05:03 24.07.2026 05:03 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105643 24.07.2026 04:41 24.07.2026 04:41 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105607 24.07.2026 04:31 24.07.2026 04:31 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105559 24.07.2026 04:16 24.07.2026 04:16 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105524 24.07.2026 03:59 24.07.2026 03:59 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105491 24.07.2026 03:48 24.07.2026 03:48 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105458 24.07.2026 03:37 24.07.2026 03:37 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105425 24.07.2026 03:20 24.07.2026 03:20 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105392 24.07.2026 03:09 24.07.2026 03:09 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105359 24.07.2026 02:58 24.07.2026 02:58 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105328 24.07.2026 02:47 24.07.2026 02:47 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105296 24.07.2026 02:36 24.07.2026 02:36 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105264 24.07.2026 02:25 24.07.2026 02:25 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105232 24.07.2026 02:14 24.07.2026 02:14 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105200 24.07.2026 02:03 24.07.2026 02:03 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105168 24.07.2026 01:52 24.07.2026 01:52 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105135 24.07.2026 01:40 24.07.2026 01:40 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105102 24.07.2026 01:29 24.07.2026 01:29 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105069 24.07.2026 01:18 24.07.2026 01:18 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105036 24.07.2026 00:57 24.07.2026 00:57 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#105003 24.07.2026 00:47 24.07.2026 00:47 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104968 24.07.2026 00:36 24.07.2026 00:36 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104935 24.07.2026 00:23 24.07.2026 00:23 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104902 24.07.2026 00:12 24.07.2026 00:12 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104869 24.07.2026 00:01 24.07.2026 00:01 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104836 23.07.2026 23:50 23.07.2026 23:50 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104803 23.07.2026 23:39 23.07.2026 23:39 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104771 23.07.2026 23:28 23.07.2026 23:28 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104737 23.07.2026 23:17 23.07.2026 23:17 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104702 23.07.2026 23:00 23.07.2026 23:00 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104669 23.07.2026 22:49 23.07.2026 22:49 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104636 23.07.2026 22:32 23.07.2026 22:32 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104604 23.07.2026 22:21 23.07.2026 22:21 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104572 23.07.2026 22:10 23.07.2026 22:10 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0
#104539 23.07.2026 21:59 23.07.2026 21:59 completed ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics, volatility_metrics, candles_15m, order_book ticker, 24h_stats, candles_1m, candles_5m, candles_15m, order_book, spread_metrics, liquidity_metrics, volatility_metrics +9 / ~0 0 / 0 / 0

Жизненный цикл сбора данных

Последний запуск 24.07.2026 05:47
Последнее успешное завершение 24.07.2026 05:47
Последняя ошибка
Тип ошибки Тип ошибки пока неизвестен.
Provider
HTTP status
API code
Exception class

История значений рыночных данных

Когда Run ticker 24h_stats candles_1m candles_5m spread_metrics liquidity_metrics volatility_metrics candles_15m order_book
История значений рыночных данных пока отсутствует.

Суммарное количество рыночных данных

Тип данных Общее кол-во полученных значений Запусков с данными Последнее получение
ticker 0 0
24h_stats 0 0
candles_1m 0 0
candles_5m 0 0
spread_metrics 0 0
liquidity_metrics 0 0
volatility_metrics 0 0
candles_15m 0 0
order_book 0 0

История coverage

Время Тип данных Таймфрейм Records Coverage % Freshness % Status Reason Delta
24.07.2026 08:47 candles 15m 107 / 64 100.00 100.00 ready COVERAGE_OK +1 / 0.00
24.07.2026 08:47 candles 5m 146 / 120 100.00 100.00 ready COVERAGE_OK +2 / 0.00
24.07.2026 08:47 candles 1m 311 / 180 100.00 100.00 ready COVERAGE_OK +12 / 0.00
24.07.2026 08:40 candles 15m 106 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:40 candles 5m 144 / 120 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:40 candles 1m 299 / 180 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:36 candles 15m 106 / 64 100.00 100.00 ready COVERAGE_OK +2 / 0.00
24.07.2026 08:36 candles 5m 144 / 120 100.00 100.00 ready COVERAGE_OK +7 / 0.00
24.07.2026 08:36 candles 1m 299 / 180 100.00 100.00 ready COVERAGE_OK +33 / 0.00
24.07.2026 08:25 candles 15m 104 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:25 candles 5m 137 / 120 100.00 70.86 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:25 candles 1m 266 / 180 100.00 51.08 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:21 candles 15m 104 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:21 candles 5m 137 / 120 100.00 90.40 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:21 candles 1m 266 / 180 100.00 75.51 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:20 candles 15m 104 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:20 candles 5m 137 / 120 100.00 99.51 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:20 candles 1m 266 / 180 100.00 86.89 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:15 candles 15m 104 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 08:15 candles 5m 137 / 120 100.00 100.00 ready COVERAGE_OK +0 / 0.00

История состояния свежести

Время Тип данных Таймфрейм Время последней записи Свежесть, % Статус Изменение
24.07.2026 08:47 candles 15m 24.07.2026 08:45 100.00 ready 0.00
24.07.2026 08:47 candles 5m 24.07.2026 08:45 100.00 ready 0.00
24.07.2026 08:47 candles 1m 24.07.2026 08:47 100.00 ready 0.00
24.07.2026 08:47 volatility_metrics 24.07.2026 08:47 100.00 ready 0.00
24.07.2026 08:47 liquidity_metrics 24.07.2026 08:47 100.00 ready 0.00
24.07.2026 08:47 spread_metrics 24.07.2026 08:47 100.00 ready 0.00
24.07.2026 08:47 order_book 24.07.2026 08:47 99.77 ready 0.25
24.07.2026 08:47 24h_stats 24.07.2026 08:47 100.00 ready 0.00
24.07.2026 08:47 ticker 24.07.2026 08:47 100.00 ready 0.00
24.07.2026 08:40 candles 15m 24.07.2026 08:30 100.00 ready 0.00
24.07.2026 08:40 candles 5m 24.07.2026 08:35 100.00 ready 0.00
24.07.2026 08:40 candles 1m 24.07.2026 08:35 100.00 ready 0.00
24.07.2026 08:36 candles 15m 24.07.2026 08:30 100.00 ready 0.00
24.07.2026 08:36 candles 5m 24.07.2026 08:35 100.00 ready 29.14
24.07.2026 08:36 candles 1m 24.07.2026 08:35 100.00 ready 48.92
24.07.2026 08:36 volatility_metrics 24.07.2026 08:36 100.00 ready 0.00
24.07.2026 08:36 liquidity_metrics 24.07.2026 08:36 100.00 ready 0.00
24.07.2026 08:36 spread_metrics 24.07.2026 08:36 100.00 ready 0.00
24.07.2026 08:36 order_book 24.07.2026 08:36 99.52 ready -0.25
24.07.2026 08:36 24h_stats 24.07.2026 08:36 100.00 ready 0.00

История решений свежести

Время Решение Причина Сообщение Проверенные типы данных Версия слоя
24.07.2026 05:44 Пропущен MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 05:35 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 05:33 Отклонён CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 05:25 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 05:23 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 05:16 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 05:15 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 04:25 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 04:24 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 04:16 Отклонён CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 04:16 Отклонён CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 04:15 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 04:05 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 03:55 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 03:55 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 03:54 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 03:47 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 03:45 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 03:35 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
24.07.2026 03:26 Отклонён TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. ticker, 24h_stats, candles_1m, candles_5m, spread_metrics, liquidity_metrics v18
Когда Тип события Решение Код причины Сообщение Версия слоя
24.07.2026 05:47 symbol_scope_tracking_disabled disabled historical_readiness_refresh Operational scope символа изменён. 22
24.07.2026 05:47 symbol_scope_collection_disabled disabled historical_readiness_refresh Operational scope символа изменён. 22
24.07.2026 05:47 symbol_scope_coverage_disabled disabled historical_readiness_refresh Operational scope символа изменён. 22
24.07.2026 05:47 symbol_scope_followup_disabled disabled historical_readiness_refresh Operational scope символа изменён. 22
24.07.2026 05:47 symbol_followup_released released followup_released Followup-сопровождение по символу снято. 22
24.07.2026 05:47 symbol_scope_tracking_disabled disabled data_collection_refresh Operational scope символа изменён. 22
24.07.2026 05:47 symbol_scope_collection_disabled disabled data_collection_refresh Operational scope символа изменён. 22
24.07.2026 05:47 symbol_scope_coverage_disabled disabled data_collection_refresh Operational scope символа изменён. 22
24.07.2026 05:47 symbol_scope_followup_disabled disabled data_collection_refresh Operational scope символа изменён. 22
24.07.2026 05:47 symbol_followup_released released followup_released Followup-сопровождение по символу снято. 22
24.07.2026 02:45 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
24.07.2026 02:45 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
24.07.2026 02:45 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
24.07.2026 02:45 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
24.07.2026 02:13 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
24.07.2026 01:25 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
24.07.2026 01:25 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
24.07.2026 01:25 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
24.07.2026 01:25 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 16:21 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 16:05 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 16:05 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 16:05 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 16:05 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 15:17 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 15:01 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 15:01 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 15:01 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 15:01 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 13:09 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 12:21 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 12:21 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 12:21 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 12:21 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 11:49 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 11:33 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 11:33 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 11:33 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 11:33 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 10:45 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 10:29 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 10:29 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 10:29 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 10:29 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 10:13 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 09:41 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 09:41 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 09:41 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 09:41 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 09:25 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 07:33 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 07:33 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 07:33 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 07:33 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 07:17 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 05:57 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 05:57 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 05:57 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 05:57 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 05:41 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 05:09 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 05:09 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 05:09 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 05:09 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 04:53 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 04:37 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 04:37 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 22
23.07.2026 04:37 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 22
23.07.2026 04:37 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 22
23.07.2026 03:33 symbol_scope_tracking_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 03:33 symbol_scope_collection_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 03:33 symbol_scope_coverage_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 03:33 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 03:33 symbol_scope_followup_enabled enabled discovery_refresh Operational scope символа изменён. 22
23.07.2026 03:33 symbol_followup_required required followup_required Для символа включено сопровождение followup. 22
13.07.2026 13:19 symbol_scope_tracking_disabled disabled historical_readiness_refresh Operational scope символа изменён. 20
13.07.2026 13:19 symbol_scope_collection_disabled disabled historical_readiness_refresh Operational scope символа изменён. 20
13.07.2026 13:19 symbol_scope_coverage_disabled disabled historical_readiness_refresh Operational scope символа изменён. 20
13.07.2026 13:19 symbol_scope_followup_disabled disabled historical_readiness_refresh Operational scope символа изменён. 20
13.07.2026 13:19 symbol_followup_released released followup_released Followup-сопровождение по символу снято. 20
13.07.2026 10:50 symbol_scope_tracking_enabled enabled discovery_refresh Operational scope символа изменён. 20
13.07.2026 10:50 symbol_scope_collection_enabled enabled discovery_refresh Operational scope символа изменён. 20
13.07.2026 10:50 symbol_scope_coverage_enabled enabled discovery_refresh Operational scope символа изменён. 20
13.07.2026 10:50 symbol_scope_followup_enabled enabled discovery_refresh Operational scope символа изменён. 20
13.07.2026 10:50 symbol_followup_required required followup_required Для символа включено сопровождение followup. 20
01.07.2026 08:09 symbol_scope_tracking_disabled disabled discovery_refresh Operational scope символа изменён. 20
01.07.2026 08:09 symbol_scope_collection_disabled disabled discovery_refresh Operational scope символа изменён. 20
01.07.2026 08:09 symbol_scope_coverage_disabled disabled discovery_refresh Operational scope символа изменён. 20
01.07.2026 08:09 symbol_scope_followup_disabled disabled discovery_refresh Operational scope символа изменён. 20
01.07.2026 08:09 symbol_followup_released released followup_released Followup-сопровождение по символу снято. 20
01.07.2026 04:57 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 20
01.07.2026 04:57 symbol_scope_entries_disabled disabled discovery_refresh Operational scope символа изменён. 20
01.07.2026 04:57 symbol_dropped_from_selection dropped volume_limit_rejected Символ выпал из active selection. 20
01.07.2026 04:57 symbol_collection_continued_after_drop continued followup_collection Сбор данных продолжен после выпадения символа из selection. 20
01.07.2026 04:57 symbol_coverage_continued_after_drop continued followup_coverage Coverage refresh продолжен после выпадения символа из selection. 20
30.06.2026 08:57 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 20
30.06.2026 08:57 symbol_scope_entries_enabled enabled discovery_refresh Operational scope символа изменён. 20
30.06.2026 08:41 symbol_scope_pipeline_disabled disabled discovery_refresh Operational scope символа изменён. 20
30.06.2026 08:41 symbol_scope_entries_disabled disabled discovery_refresh Operational scope символа изменён. 20
30.06.2026 00:09 symbol_scope_pipeline_enabled enabled discovery_refresh Operational scope символа изменён. 20
30.06.2026 00:09 symbol_scope_entries_enabled enabled discovery_refresh Operational scope символа изменён. 20

Решения пайплайна

Запуск пайплайна Слой Версия параметров слоя Статус Решение Код причины Объяснение Версия глобальных параметров Длительность Когда
#68990 Свежесть рыночных данных v1 Пройден true MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя. v4 9 мс 24.07.2026 05:44
#68990 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 6 мс 24.07.2026 05:44
#68982 Свежесть рыночных данных v1 Отклонён false TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. v4 3 мс 24.07.2026 05:35
#68982 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 2 мс 24.07.2026 05:35
#68965 Свежесть рыночных данных v1 Отклонён false CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. v4 8 мс 24.07.2026 05:33
#68965 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 7 мс 24.07.2026 05:33
#68961 Свежесть рыночных данных v1 Отклонён false TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. v4 3 мс 24.07.2026 05:25
#68961 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 2 мс 24.07.2026 05:25
#68960 Свежесть рыночных данных v1 Отклонён false TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. v4 3 мс 24.07.2026 05:23
#68960 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 2 мс 24.07.2026 05:23

История обнаружения

Когда Запуск обнаружения Решение Код причины Сообщение Критерии
27.07.2026 03:05 #15750 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 02:49 #15749 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 02:33 #15748 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 02:17 #15747 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 02:01 #15746 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 01:45 #15745 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 01:29 #15744 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 01:13 #15743 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 00:57 #15742 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 00:41 #15741 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 00:25 #15740 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 00:09 #15739 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 23:53 #15738 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 23:37 #15737 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 23:21 #15736 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 23:05 #15735 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 22:49 #15734 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 22:33 #15733 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 22:17 #15732 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 22:01 #15731 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 21:45 #15730 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 21:29 #15729 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 21:13 #15728 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 20:57 #15727 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 20:41 #15726 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 20:25 #15725 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 20:09 #15724 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 19:53 #15723 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 19:37 #15722 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 19:21 #15721 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 19:05 #15720 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 18:49 #15719 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 18:33 #15718 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 18:17 #15717 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 18:01 #15716 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 17:45 #15715 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 17:29 #15714 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 17:13 #15713 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 16:57 #15712 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 16:41 #15711 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 16:25 #15710 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 16:09 #15709 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 15:53 #15708 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 15:37 #15707 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 15:21 #15706 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 15:05 #15705 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 14:49 #15704 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 14:33 #15703 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 14:17 #15702 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 14:01 #15701 rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}

Сбор данных

Тип данных Таймфрейм Первая запись Последняя запись Кол-во записей Ожидаемое кол-во Покрытие % Последний gap Актуальность Статус
24h_stats 24.07.2026 08:47 24.07.2026 08:47 1 1 100.00 100.00 ready
candles 15m 23.07.2026 06:15 24.07.2026 08:45 107 64 100.00 100.00 ready
candles 1m 24.07.2026 03:37 24.07.2026 08:47 311 180 100.00 100.00 ready
candles 5m 23.07.2026 20:40 24.07.2026 08:45 146 120 100.00 100.00 ready
liquidity_metrics 24.07.2026 08:47 24.07.2026 08:47 1 1 100.00 100.00 ready
order_book 24.07.2026 08:47 24.07.2026 08:47 1 1 100.00 99.77 ready
spread_metrics 24.07.2026 08:47 24.07.2026 08:47 1 1 100.00 100.00 ready
ticker 24.07.2026 08:47 24.07.2026 08:47 1 1 100.00 100.00 ready
volatility_metrics 24.07.2026 08:47 24.07.2026 08:47 1 1 100.00 100.00 ready

Готовность истории

Параметр Значение
history.max_data_gap_minutes 15
history.min_coverage_percent 95
history.min_freshness_percent 95.00
history.required_15m_candles 64
history.required_1m_candles 180
history.required_5m_candles 120
history.required_hours 24

Реакция слоёв

Время Запуск пайплайна Слой Версия параметров слоя Решение Код причины Объяснение Входные значения Использованные параметры Длительность
24.07.2026 02:44 68990 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:44:16+03:00",
            "age_seconds": 2.133907,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:44:16+03:00",
            "age_seconds": 2.134202,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:43:00+03:00",
            "age_seconds": 78.13444199999999,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:40:00+03:00",
            "age_seconds": 258.134638,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:44:16+03:00",
            "age_seconds": 2.134878,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:44:16+03:00",
            "age_seconds": 2.135135,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
9
24.07.2026 02:44 68990 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1565,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 397,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 191,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
6
24.07.2026 02:35 68982 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:33:08+03:00",
            "age_seconds": 133.494021,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:33:08+03:00",
            "age_seconds": 133.494217,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:25:00+03:00",
            "age_seconds": 621.494403,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:25:00+03:00",
            "age_seconds": 621.494564,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:33:08+03:00",
            "age_seconds": 133.494723,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:33:08+03:00",
            "age_seconds": 133.494879,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 02:35 68982 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1547,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 394,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 190,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 02:33 68965 market_data_freshness 18 rejected CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:33:08+03:00",
            "age_seconds": 2.557494,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:33:08+03:00",
            "age_seconds": 2.557698,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:25:00+03:00",
            "age_seconds": 490.557875,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:25:00+03:00",
            "age_seconds": 490.55804700000004,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:33:08+03:00",
            "age_seconds": 2.558208,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:33:08+03:00",
            "age_seconds": 2.5583780000000003,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
8
24.07.2026 02:33 68965 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1547,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 394,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 190,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
7
24.07.2026 02:25 68961 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 677.992334,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 677.99255,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:00+03:00",
            "age_seconds": 722.99274,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:10:00+03:00",
            "age_seconds": 902.992901,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 677.99306,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 677.993216,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 02:25 68961 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1535,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 391,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 189,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 02:23 68960 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 608.2112020000001,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 608.211424,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:00+03:00",
            "age_seconds": 653.21162,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:10:00+03:00",
            "age_seconds": 833.211818,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 608.212071,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 608.212235,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 02:23 68960 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1535,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 391,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 189,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 02:16 68939 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 157.67779199999998,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 157.677981,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:00+03:00",
            "age_seconds": 202.67813800000002,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:10:00+03:00",
            "age_seconds": 382.678295,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 157.678472,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 157.67865799999998,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 02:16 68939 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1535,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 391,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 189,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 02:15 68938 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 112.786755,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 112.78694800000001,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:00+03:00",
            "age_seconds": 157.787109,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:10:00+03:00",
            "age_seconds": 337.787269,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 112.78746799999999,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T05:13:45+03:00",
            "age_seconds": 112.787644,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 02:15 68938 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1535,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 391,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 189,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 01:25 68830 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 568.6852319999999,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 568.6854599999999,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:12:00+03:00",
            "age_seconds": 814.6856389999999,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:10:00+03:00",
            "age_seconds": 934.6858000000001,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 568.6859919999999,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 568.686168,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 01:25 68830 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1474,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 379,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 185,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 01:24 68829 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 483.203761,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 483.203956,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:12:00+03:00",
            "age_seconds": 729.204116,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:10:00+03:00",
            "age_seconds": 849.204275,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 483.204471,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 483.204629,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 01:24 68829 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1474,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 379,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 185,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 01:16 68828 market_data_freshness 18 rejected CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 42.058104,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 42.058298,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:12:00+03:00",
            "age_seconds": 288.05848599999996,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:10:00+03:00",
            "age_seconds": 408.058647,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 42.058807,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 42.058964,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 01:16 68828 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1474,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 379,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 185,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 01:16 68810 market_data_freshness 18 rejected CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 2.631335,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 2.631551,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:12:00+03:00",
            "age_seconds": 248.63177900000002,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:10:00+03:00",
            "age_seconds": 368.63195,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 2.63211,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T04:16:06+03:00",
            "age_seconds": 2.632266,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
9
24.07.2026 01:16 68810 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1474,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 379,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 185,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
6
24.07.2026 01:15 68807 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:13+03:00",
            "age_seconds": 980.388809,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:13+03:00",
            "age_seconds": 980.389012,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:00+03:00",
            "age_seconds": 993.389174,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:55:00+03:00",
            "age_seconds": 1233.389335,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:13+03:00",
            "age_seconds": 980.389515,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:13+03:00",
            "age_seconds": 980.389694,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 01:15 68807 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1461,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 376,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 184,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 01:05 68806 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:13+03:00",
            "age_seconds": 391.84617,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:13+03:00",
            "age_seconds": 391.846403,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:00+03:00",
            "age_seconds": 404.846571,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:55:00+03:00",
            "age_seconds": 644.846733,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:13+03:00",
            "age_seconds": 391.846896,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:59:13+03:00",
            "age_seconds": 391.847064,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 01:05 68806 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1461,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 376,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 184,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
3
24.07.2026 00:55 68785 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 456.453893,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 456.454088,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:00+03:00",
            "age_seconds": 463.454296,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:45:00+03:00",
            "age_seconds": 643.4544930000001,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 456.454656,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 456.454814,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:55 68785 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1450,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 374,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 184,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 00:55 68784 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 416.112179,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 416.112392,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:00+03:00",
            "age_seconds": 423.112556,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:45:00+03:00",
            "age_seconds": 603.1127369999999,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 416.112898,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 416.113055,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:55 68784 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1450,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 374,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 184,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 00:54 68783 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 404.209983,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 404.210259,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:00+03:00",
            "age_seconds": 411.210537,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:45:00+03:00",
            "age_seconds": 591.210793,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 404.211055,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:48:07+03:00",
            "age_seconds": 404.211315,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
4
24.07.2026 00:54 68783 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1450,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 374,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 184,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 00:47 68762 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:35+03:00",
            "age_seconds": 568.791946,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:35+03:00",
            "age_seconds": 568.792249,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:00+03:00",
            "age_seconds": 603.7925110000001,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:35:00+03:00",
            "age_seconds": 723.792675,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:35+03:00",
            "age_seconds": 568.79286,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:35+03:00",
            "age_seconds": 568.7930200000001,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:47 68762 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1439,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 372,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 183,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
3
24.07.2026 00:45 68761 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:35+03:00",
            "age_seconds": 482.293767,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:35+03:00",
            "age_seconds": 482.293978,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:00+03:00",
            "age_seconds": 517.294143,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:35:00+03:00",
            "age_seconds": 637.2943029999999,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:35+03:00",
            "age_seconds": 482.294482,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:37:35+03:00",
            "age_seconds": 482.294639,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:45 68761 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1439,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 372,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 183,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 00:35 68740 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 863.8317979999999,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 863.832091,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 902.832328,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 902.832605,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 863.8328590000001,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 863.833108,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
4
24.07.2026 00:35 68740 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1421,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 369,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 182,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
3
24.07.2026 00:26 68719 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 376.447027,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 376.447218,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 415.447401,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 415.447561,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 376.447737,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 376.447895,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:26 68719 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1421,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 369,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 182,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
2
24.07.2026 00:26 68718 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 368.44007500000004,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 368.440268,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 407.44044799999995,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 407.440636,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 368.44090600000004,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 368.441104,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:26 68718 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1421,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 369,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 182,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
3
24.07.2026 00:25 68717 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 264.10484399999996,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 264.105038,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 303.10522499999996,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 303.10547499999996,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 264.10569799999996,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 264.105882,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:25 68717 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1421,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 369,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 182,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
4
24.07.2026 00:20 68715 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 2.500124,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 2.500326,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 41.500521,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:00+03:00",
            "age_seconds": 41.500682999999995,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 2.500844,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:20:39+03:00",
            "age_seconds": 2.501018,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
7
24.07.2026 00:20 68715 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1421,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 369,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 182,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
6
24.07.2026 00:17 68696 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:09:34+03:00",
            "age_seconds": 479.859692,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:09:34+03:00",
            "age_seconds": 479.859911,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:08:00+03:00",
            "age_seconds": 573.8600729999999,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:05:00+03:00",
            "age_seconds": 753.860233,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:09:34+03:00",
            "age_seconds": 479.86041700000004,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:09:34+03:00",
            "age_seconds": 479.860589,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:17 68696 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1410,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 366,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 181,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
3
24.07.2026 00:15 68695 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:09:34+03:00",
            "age_seconds": 361.872125,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:09:34+03:00",
            "age_seconds": 361.872376,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:08:00+03:00",
            "age_seconds": 455.872566,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:05:00+03:00",
            "age_seconds": 635.872729,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:09:34+03:00",
            "age_seconds": 361.872944,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T03:09:34+03:00",
            "age_seconds": 361.873124,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        }
    ]
}
{
    "required_data_types": [
        "ticker",
        "24h_stats",
        "candles_1m",
        "candles_5m",
        "spread_metrics",
        "liquidity_metrics"
    ],
    "max_ticker_age_seconds": 60,
    "max_24h_stats_age_seconds": 300,
    "max_1m_candle_age_seconds": 180,
    "max_5m_candle_age_seconds": 600,
    "max_15m_candle_age_seconds": 1800,
    "max_spread_metrics_age_seconds": 120,
    "max_liquidity_metrics_age_seconds": 120,
    "fail_on_missing_required_data_type": true,
    "allow_partial_optional_data": true
}
3
24.07.2026 00:15 68695 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1410,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120,
            "actual_records": 366,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64,
            "actual_records": 181,
            "coverage_percent": 100,
            "freshness_percent": 100,
            "gap_too_large": false,
            "coverage_too_low": false,
            "freshness_too_low": false,
            "records_too_low": false,
            "status": "ready"
        }
    ]
}
{
    "required_hours": 24,
    "max_data_gap_minutes": 15,
    "min_coverage_percent": 95,
    "min_freshness_percent": 95,
    "requirements": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180
        },
        {
            "data_type": "candles",
            "timeframe": "5m",
            "required_records": 120
        },
        {
            "data_type": "candles",
            "timeframe": "15m",
            "required_records": 64
        }
    ]
}
3

Открытые lifecycle-сущности

Тип Идентификатор Статус Направление Количество Цена Требует сопровождения Открыт

Полное логирование

Время Тип события Решение Код причины Сообщение Входы Параметры Выходы
27.07.2026 00:15 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
27.07.2026 00:05 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "99770.868934",
    "spread_percent": "0.11744966",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47652",
        "best_ask": "0.47708"
    }
}
27.07.2026 00:05 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "99770.868934",
    "spread_percent": "0.11744966",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47652",
        "best_ask": "0.47708"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
27.07.2026 00:05 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "99770.868934",
    "spread_percent": "0.11744966",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47652",
        "best_ask": "0.47708"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
27.07.2026 00:05 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "99770.868934",
    "spread_percent": "0.11744966",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47652",
        "best_ask": "0.47708"
    }
}
{
    "volume_24h": "99770.868934"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
27.07.2026 00:05 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:49 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "96413.938088",
    "spread_percent": "0.12476347",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48061",
        "best_ask": "0.48121"
    }
}
26.07.2026 23:49 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "96413.938088",
    "spread_percent": "0.12476347",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48061",
        "best_ask": "0.48121"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
26.07.2026 23:49 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "96413.938088",
    "spread_percent": "0.12476347",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48061",
        "best_ask": "0.48121"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
26.07.2026 23:49 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "96413.938088",
    "spread_percent": "0.12476347",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48061",
        "best_ask": "0.48121"
    }
}
{
    "volume_24h": "96413.938088"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 23:49 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:43 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:33 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "96374.677188",
    "spread_percent": "0.10850061",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.479",
        "best_ask": "0.47952"
    }
}
26.07.2026 23:33 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "96374.677188",
    "spread_percent": "0.10850061",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.479",
        "best_ask": "0.47952"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
26.07.2026 23:33 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "96374.677188",
    "spread_percent": "0.10850061",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.479",
        "best_ask": "0.47952"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
26.07.2026 23:33 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "96374.677188",
    "spread_percent": "0.10850061",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.479",
        "best_ask": "0.47952"
    }
}
{
    "volume_24h": "96374.677188"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 23:33 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:17 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "95730.03898",
    "spread_percent": "0.11661079",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47995",
        "best_ask": "0.48051"
    }
}
26.07.2026 23:17 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "95730.03898",
    "spread_percent": "0.11661079",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47995",
        "best_ask": "0.48051"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
26.07.2026 23:17 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "95730.03898",
    "spread_percent": "0.11661079",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47995",
        "best_ask": "0.48051"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
26.07.2026 23:17 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "95730.03898",
    "spread_percent": "0.11661079",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47995",
        "best_ask": "0.48051"
    }
}
{
    "volume_24h": "95730.03898"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 23:17 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:13 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:01 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "94188.839776",
    "spread_percent": "0.16506305",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47821",
        "best_ask": "0.479"
    }
}
26.07.2026 23:01 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "94188.839776",
    "spread_percent": "0.16506305",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47821",
        "best_ask": "0.479"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
26.07.2026 23:01 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "94188.839776",
    "spread_percent": "0.16506305",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47821",
        "best_ask": "0.479"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
26.07.2026 23:01 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "94188.839776",
    "spread_percent": "0.16506305",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47821",
        "best_ask": "0.479"
    }
}
{
    "volume_24h": "94188.839776"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 23:01 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:45 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "93197.4531",
    "spread_percent": "0.10612729",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.4803",
        "best_ask": "0.48081"
    }
}
26.07.2026 22:45 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "93197.4531",
    "spread_percent": "0.10612729",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.4803",
        "best_ask": "0.48081"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
26.07.2026 22:45 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "93197.4531",
    "spread_percent": "0.10612729",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.4803",
        "best_ask": "0.48081"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
26.07.2026 22:45 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "93197.4531",
    "spread_percent": "0.10612729",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.4803",
        "best_ask": "0.48081"
    }
}
{
    "volume_24h": "93197.4531"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 22:45 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:43 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:29 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "92676.970208",
    "spread_percent": "0.13902001",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48161",
        "best_ask": "0.48228"
    }
}
26.07.2026 22:29 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "92676.970208",
    "spread_percent": "0.13902001",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48161",
        "best_ask": "0.48228"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
26.07.2026 22:29 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "92676.970208",
    "spread_percent": "0.13902001",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48161",
        "best_ask": "0.48228"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
26.07.2026 22:29 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "92676.970208",
    "spread_percent": "0.13902001",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48161",
        "best_ask": "0.48228"
    }
}
{
    "volume_24h": "92676.970208"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 22:29 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:13 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "92408.008628",
    "spread_percent": "0.12662563",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48143",
        "best_ask": "0.48204"
    }
}
26.07.2026 22:13 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "92408.008628",
    "spread_percent": "0.12662563",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48143",
        "best_ask": "0.48204"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
26.07.2026 22:13 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "92408.008628",
    "spread_percent": "0.12662563",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48143",
        "best_ask": "0.48204"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
26.07.2026 22:13 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "92408.008628",
    "spread_percent": "0.12662563",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.48143",
        "best_ask": "0.48204"
    }
}
{
    "volume_24h": "92408.008628"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 22:13 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:13 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}
26.07.2026 21:57 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "90610.83772",
    "spread_percent": "0.09379397",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47955",
        "best_ask": "0.48"
    }
}
26.07.2026 21:57 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "90610.83772",
    "spread_percent": "0.09379397",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47955",
        "best_ask": "0.48"
    }
}
{
    "allowed_quote_currency": "USDT"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    }
}
26.07.2026 21:57 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "90610.83772",
    "spread_percent": "0.09379397",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47955",
        "best_ask": "0.48"
    }
}
{
    "max_selected_symbols": 30
}
{
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    }
}
26.07.2026 21:57 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "OUSDT",
    "base_currency": "O",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "90610.83772",
    "spread_percent": "0.09379397",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "O-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.00001",
        "base_increment": "0.1",
        "quote_increment": "0.01",
        "base_min_size": "10",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.05",
        "best_bid": "0.47955",
        "best_ask": "0.48"
    }
}
{
    "volume_24h": "90610.83772"
}
{
    "hard_prefilter.quote_currency": {
        "passed": true,
        "actual": "USDT",
        "expected": "USDT"
    },
    "hard_prefilter.exchange_status": {
        "passed": true,
        "actual": "trading",
        "expected": [
            "trading",
            "active"
        ]
    },
    "hard_prefilter.api_accessible": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "hard_prefilter.force_disabled": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "hard_prefilter.blacklisted": {
        "passed": true,
        "actual": false,
        "expected": false
    },
    "selection_window.hard_prefilter_passed": {
        "passed": true,
        "actual": true,
        "expected": true
    },
    "selection_window.volume_rank_selected": {
        "passed": false,
        "actual": false,
        "expected": true
    },
    "soft_criteria.skipped": {
        "passed": false,
        "actual": "volume_limit_rejected",
        "expected": "selected_by_volume_limit"
    }
}
26.07.2026 21:57 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "O-USDT",
    "is_trading_enabled": true
}