Базовая валютаENA
Котируемая валютаUSDT
Статус на биржеtrading
Состояние жизненного циклаdiscovered
Чёрный списокНет
Принудительно отключёнНет
Первое обнаружение27.05.2026 22:02
Последнее обнаружение27.07.2026 02:33

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

Контур Включён Причина
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 29.06.2026 13:59
Collection Start 23.07.2026 02:35
Coverage Ready 22.07.2026 23:49
Historical Ready 13.07.2026 12:14
Freshness Passed 23.07.2026 07:54
Dropped From Selection 30.06.2026 03:37
Followup Started 29.06.2026 13:59
Followup Released 30.06.2026 10:01

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

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

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

TradeabilityГотов
Статус metadataready
ПричинаБиржевые торговые ограничения известны и пригодны для проверки новых входов.
Обновлено2026-07-27 02:36:22
Exchange symbol ENA-USDT
Trading enabled Да
Tick size 0.000100000000
Lot size 0.010000000000
Min order size 1.000000000000
Max order size 10000000000.000000000000
Min notional 0.100000000000
Price precision 4
Quantity precision 2

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

Primary timeframe5m
Статусstale_data
НаправлениеUnknown
Samples48
Последняя завершённая свеча устарела, тренд неактуален.
Timeframe Status Direction Strength Confidence Samples Last completed candle Message
1m stale_data Unknown 60 2026-07-24 03:06:00 Последняя завершённая свеча устарела, тренд неактуален.
5m stale_data Unknown 48 2026-07-24 03:10:00 Последняя завершённая свеча устарела, тренд неактуален.
15m stale_data Unknown 32 2026-07-24 03:15: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 03:05:38

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 03:10 Свежесть обязательных рыночных данных ниже допустимого уровня. discover
Символ находится в registry.
selection disabled NOT_SELECTED v11 23.07.2026 23:53 Свежесть обязательных рыночных данных ниже допустимого уровня. manual review
Символ не участвует в active selection.
followup disabled FOLLOWUP_STATE v11 Свежесть обязательных рыночных данных ниже допустимого уровня. none
collection disabled COLLECTION_SCOPE v11 24.07.2026 03:05 Свежесть обязательных рыночных данных ниже допустимого уровня. collect
Сбор данных отключён.
coverage disabled COVERAGE_SCOPE v11 24.07.2026 03:10 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh coverage
Coverage refresh отключён.
readiness enabled HISTORY_READY v1 24.07.2026 03:10 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh history
Исторические данные соответствуют требованиям слоя.
freshness disabled TICKER_STALE v1 24.07.2026 03:05 Свежесть обязательных рыночных данных ниже допустимого уровня. collect / refresh
Свежесть обязательных рыночных данных ниже допустимого уровня.
trend stale_data TREND_STALE_DATA v5 2026-07-24 03:10: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 03:05:38 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh liquidity profile
Order book устарел, liquidity profile неактуален.
exchange_constraints ready EXCHANGE_METADATA_READY v11 27.07.2026 02:36 Свежесть обязательных рыночных данных ниже допустимого уровня. refresh exchange metadata
Биржевые торговые ограничения известны и пригодны для проверки новых входов.
execution_readiness blocked EXECUTION_READINESS_BLOCKED v2 27.07.2026 02:37 Свежесть обязательных рыночных данных ниже допустимого уровня. manual review / adjust config
Готовность к исполнению заблокирована критичными проверками.
pipeline disabled SELECTION_OR_CRITERIA_FAILED v11 24.07.2026 03:10 Свежесть обязательных рыночных данных ниже допустимого уровня. run pipeline
Символ не прошёл active selection или soft criteria.
entries disabled ENTRIES_BLOCKED v11 24.07.2026 03:10 Свежесть обязательных рыночных данных ниже допустимого уровня. manual review
Готовность к исполнению заблокирована критичными проверками.
position_management disabled POSITION_MANAGEMENT v11 24.07.2026 03:10 Свежесть обязательных рыночных данных ниже допустимого уровня. none
Сопровождение позиции не требуется.

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

Запуск Старт Завершение Статус Запрошено Собрано Сколько записей Gap / Ошибки / Warning Версия глобальных параметров
#105368 24.07.2026 03:05 24.07.2026 03:05 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
#105314 24.07.2026 02:44 24.07.2026 02: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
#105282 24.07.2026 02:33 24.07.2026 02: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
#105250 24.07.2026 02:23 24.07.2026 02: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
#105217 24.07.2026 02:12 24.07.2026 02: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
#105165 24.07.2026 01:51 24.07.2026 01:51 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
#105132 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
#105098 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
#105064 24.07.2026 01:08 24.07.2026 01:08 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
#105031 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
#104997 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
#104946 24.07.2026 00:25 24.07.2026 00: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
#104913 24.07.2026 00:15 24.07.2026 00: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
#104880 24.07.2026 00:04 24.07.2026 00: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
#104846 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
#104813 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
#104781 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
#104747 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
#104715 23.07.2026 23:05 23.07.2026 23:05 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
#104682 23.07.2026 22:54 23.07.2026 22:54 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
#104650 23.07.2026 22:43 23.07.2026 22: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
#104618 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
#104585 23.07.2026 22:17 23.07.2026 22: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
#104552 23.07.2026 22:07 23.07.2026 22: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
#104519 23.07.2026 21:56 23.07.2026 21: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
#104486 23.07.2026 21:36 23.07.2026 21: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
#104453 23.07.2026 21:25 23.07.2026 21: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
#104420 23.07.2026 21:14 23.07.2026 21: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
#104387 23.07.2026 21:03 23.07.2026 21: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
#104354 23.07.2026 20:51 23.07.2026 20:51 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
#104322 23.07.2026 20:40 23.07.2026 20: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
#104291 23.07.2026 20:29 23.07.2026 20: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
#104259 23.07.2026 20:18 23.07.2026 20: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
#104227 23.07.2026 20:07 23.07.2026 20: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
#104195 23.07.2026 19:56 23.07.2026 19: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
#104163 23.07.2026 19:45 23.07.2026 19:45 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
#104131 23.07.2026 19:34 23.07.2026 19:34 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
#104099 23.07.2026 19:23 23.07.2026 19: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
#104067 23.07.2026 19:12 23.07.2026 19: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
#104035 23.07.2026 18:55 23.07.2026 18:55 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
#104000 23.07.2026 18:44 23.07.2026 18: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
#103966 23.07.2026 18:27 23.07.2026 18:27 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
#103933 23.07.2026 18:16 23.07.2026 18: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
#103900 23.07.2026 18:05 23.07.2026 18:05 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
#103867 23.07.2026 17:54 23.07.2026 17:54 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
#103835 23.07.2026 17:43 23.07.2026 17: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
#103802 23.07.2026 17:32 23.07.2026 17: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
#103768 23.07.2026 17:21 23.07.2026 17: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
#103733 23.07.2026 17:08 23.07.2026 17:08 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
#103701 23.07.2026 16:57 23.07.2026 16: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

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

Последний запуск 24.07.2026 00:05
Последнее успешное завершение 24.07.2026 00:05
Последняя ошибка
Тип ошибки Тип ошибки пока неизвестен.
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 03:10 candles 15m 178 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 03:10 candles 5m 379 / 120 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 03:10 candles 1m 1475 / 180 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 03:05 candles 15m 178 / 64 100.00 100.00 ready COVERAGE_OK +2 / 0.00
24.07.2026 03:05 candles 5m 379 / 120 100.00 100.00 ready COVERAGE_OK +5 / 0.00
24.07.2026 03:05 candles 1m 1475 / 180 100.00 100.00 ready COVERAGE_OK +24 / 0.00
24.07.2026 02:55 candles 15m 176 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:55 candles 5m 374 / 120 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:55 candles 1m 1451 / 180 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:53 candles 15m 176 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:53 candles 5m 374 / 120 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:53 candles 1m 1451 / 180 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:50 candles 15m 176 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:50 candles 5m 374 / 120 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:50 candles 1m 1451 / 180 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:44 candles 15m 176 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:44 candles 5m 374 / 120 100.00 100.00 ready COVERAGE_OK +2 / 0.00
24.07.2026 02:44 candles 1m 1451 / 180 100.00 100.00 ready COVERAGE_OK +10 / 0.00
24.07.2026 02:40 candles 15m 176 / 64 100.00 100.00 ready COVERAGE_OK +0 / 0.00
24.07.2026 02:40 candles 5m 372 / 120 100.00 100.00 ready COVERAGE_OK +0 / 0.00

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

Время Тип данных Таймфрейм Время последней записи Свежесть, % Статус Изменение
24.07.2026 03:10 candles 15m 24.07.2026 03:00 100.00 ready 0.00
24.07.2026 03:10 candles 5m 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 03:10 candles 1m 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 03:05 candles 15m 24.07.2026 03:00 100.00 ready 0.00
24.07.2026 03:05 candles 5m 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 03:05 candles 1m 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 03:05 volatility_metrics 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 03:05 liquidity_metrics 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 03:05 spread_metrics 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 03:05 order_book 24.07.2026 03:05 99.64 ready -0.13
24.07.2026 03:05 24h_stats 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 03:05 ticker 24.07.2026 03:05 100.00 ready 0.00
24.07.2026 02:55 candles 15m 24.07.2026 02:30 100.00 ready 0.00
24.07.2026 02:55 candles 5m 24.07.2026 02:40 100.00 ready 0.00
24.07.2026 02:55 candles 1m 24.07.2026 02:41 100.00 ready 0.00
24.07.2026 02:53 candles 15m 24.07.2026 02:30 100.00 ready 0.00
24.07.2026 02:53 candles 5m 24.07.2026 02:40 100.00 ready 0.00
24.07.2026 02:53 candles 1m 24.07.2026 02:41 100.00 ready 0.00
24.07.2026 02:50 candles 15m 24.07.2026 02:30 100.00 ready 0.00
24.07.2026 02:50 candles 5m 24.07.2026 02:40 100.00 ready 0.00

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

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

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

Запуск пайплайна Слой Версия параметров слоя Статус Решение Код причины Объяснение Версия глобальных параметров Длительность Когда
#68318 Свежесть рыночных данных v1 Пройден true MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя. v4 3 мс 24.07.2026 00:05
#68318 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 2 мс 24.07.2026 00:05
#68297 Свежесть рыночных данных v1 Отклонён false TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. v4 3 мс 23.07.2026 23:55
#68297 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 2 мс 23.07.2026 23:55
#68296 Свежесть рыночных данных v1 Отклонён false TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. v4 5 мс 23.07.2026 23:55
#68296 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 4 мс 23.07.2026 23:55
#68295 Свежесть рыночных данных v1 Отклонён false TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. v4 3 мс 23.07.2026 23:54
#68295 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 2 мс 23.07.2026 23:54
#68294 Свежесть рыночных данных v1 Отклонён false CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня. v4 8 мс 23.07.2026 23:50
#68294 Готовность исторических данных v1 Пройден true HISTORY_READY Исторические данные соответствуют требованиям слоя. v4 7 мс 23.07.2026 23:50

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

Когда Запуск обнаружения Решение Код причины Сообщение Критерии
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"
    }
}
26.07.2026 13:45 #15700 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 13:29 #15699 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 03:05 24.07.2026 03:05 1 1 100.00 100.00 ready
candles 15m 22.07.2026 06:45 24.07.2026 03:00 178 64 100.00 100.00 ready
candles 1m 23.07.2026 02:31 24.07.2026 03:05 1475 180 100.00 100.00 ready
candles 5m 22.07.2026 19:35 24.07.2026 03:05 379 120 100.00 100.00 ready
liquidity_metrics 24.07.2026 03:05 24.07.2026 03:05 1 1 100.00 100.00 ready
order_book 24.07.2026 03:05 24.07.2026 03:05 1 1 100.00 99.64 ready
spread_metrics 24.07.2026 03:05 24.07.2026 03:05 1 1 100.00 100.00 ready
ticker 24.07.2026 03:05 24.07.2026 03:05 1 1 100.00 100.00 ready
volatility_metrics 24.07.2026 03:05 24.07.2026 03:05 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

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

Время Запуск пайплайна Слой Версия параметров слоя Решение Код причины Объяснение Входные значения Использованные параметры Длительность
23.07.2026 21:05 68318 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T00:04:06+03:00",
            "age_seconds": 56.456230000000005,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T00:04:06+03:00",
            "age_seconds": 56.456447,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T00:03:00+03:00",
            "age_seconds": 122.45662300000001,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T00:00:00+03:00",
            "age_seconds": 302.45678399999997,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T00:04:06+03:00",
            "age_seconds": 56.456951000000004,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-24T00:04:06+03:00",
            "age_seconds": 56.457107,
            "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
23.07.2026 21:05 68318 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1293,
            "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": 342,
            "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": 166,
            "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
23.07.2026 20:55 68297 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 308.025848,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 308.02603600000003,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:47:00+03:00",
            "age_seconds": 530.026197,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:45:00+03:00",
            "age_seconds": 650.026371,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 308.02653200000003,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 308.026686,
            "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
23.07.2026 20:55 68297 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1277,
            "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": 339,
            "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": 165,
            "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
23.07.2026 20:55 68296 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 260.390403,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 260.390603,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:47:00+03:00",
            "age_seconds": 482.390766,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:45:00+03:00",
            "age_seconds": 602.391883,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 260.392221,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 260.392757,
            "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
}
5
23.07.2026 20:55 68296 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1277,
            "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": 339,
            "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": 165,
            "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
23.07.2026 20:54 68295 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 205.508051,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 205.508256,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:47:00+03:00",
            "age_seconds": 427.50844,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:45:00+03:00",
            "age_seconds": 547.508599,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 205.508757,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 205.508912,
            "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
23.07.2026 20:54 68295 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1277,
            "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": 339,
            "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": 165,
            "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
23.07.2026 20:50 68294 market_data_freshness 18 rejected CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 1.812473,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 1.812678,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:47:00+03:00",
            "age_seconds": 223.81286799999998,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:45:00+03:00",
            "age_seconds": 343.81303399999996,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 1.8131959999999998,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:50:42+03:00",
            "age_seconds": 1.8133679999999999,
            "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
23.07.2026 20:50 68294 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1277,
            "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": 339,
            "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": 165,
            "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
23.07.2026 20:47 68274 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 479.81300300000004,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 479.813219,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:00+03:00",
            "age_seconds": 515.81341,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:35:00+03:00",
            "age_seconds": 755.813572,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 479.813731,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 479.81388799999996,
            "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
23.07.2026 20:47 68274 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1269,
            "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": 337,
            "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": 164,
            "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
23.07.2026 20:45 68273 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 361.97562300000004,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 361.975865,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:00+03:00",
            "age_seconds": 397.97605599999997,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:35:00+03:00",
            "age_seconds": 637.9762169999999,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 361.976395,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 361.976553,
            "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
23.07.2026 20:45 68273 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1269,
            "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": 337,
            "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": 164,
            "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
23.07.2026 20:39 68269 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 1.8236389999999998,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 1.8238530000000002,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:00+03:00",
            "age_seconds": 37.824014000000005,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:35:00+03:00",
            "age_seconds": 277.82417399999997,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 1.8243340000000001,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:39:36+03:00",
            "age_seconds": 1.824509,
            "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
23.07.2026 20:39 68269 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1269,
            "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": 337,
            "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": 164,
            "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
23.07.2026 20:35 68252 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:30+03:00",
            "age_seconds": 392.65537800000004,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:30+03:00",
            "age_seconds": 392.655691,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:00+03:00",
            "age_seconds": 422.655983,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:25:00+03:00",
            "age_seconds": 602.656248,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:30+03:00",
            "age_seconds": 392.65646399999997,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:30+03:00",
            "age_seconds": 392.65662,
            "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
23.07.2026 20:35 68252 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1258,
            "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": 335,
            "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": 163,
            "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
23.07.2026 20:28 68246 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:30+03:00",
            "age_seconds": 2.460915,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:30+03:00",
            "age_seconds": 2.461119,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:00+03:00",
            "age_seconds": 32.46128,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:25:00+03:00",
            "age_seconds": 212.461453,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:30+03:00",
            "age_seconds": 2.461613,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:28:30+03:00",
            "age_seconds": 2.461769,
            "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
23.07.2026 20:28 68246 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1258,
            "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": 335,
            "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": 163,
            "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
23.07.2026 20:25 68231 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 469.958656,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 469.958842,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:00+03:00",
            "age_seconds": 492.959002,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:15:00+03:00",
            "age_seconds": 612.959163,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 469.959323,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 469.959496,
            "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
}
2
23.07.2026 20:25 68231 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1247,
            "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": 333,
            "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": 163,
            "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
23.07.2026 20:25 68230 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 459.339586,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 459.339833,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:00+03:00",
            "age_seconds": 482.34,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:15:00+03:00",
            "age_seconds": 602.3401600000001,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 459.340321,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 459.340498,
            "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
23.07.2026 20:25 68230 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1247,
            "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": 333,
            "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": 163,
            "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
23.07.2026 20:24 68229 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 424.50519,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 424.505453,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:00+03:00",
            "age_seconds": 447.505619,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:15:00+03:00",
            "age_seconds": 567.505779,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 424.50593699999996,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 424.506091,
            "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
23.07.2026 20:24 68229 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1247,
            "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": 333,
            "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": 163,
            "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
23.07.2026 20:17 68219 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 2.155078,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 2.1552849999999997,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:00+03:00",
            "age_seconds": 25.155462,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:15:00+03:00",
            "age_seconds": 145.15562100000002,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 2.155795,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:17:23+03:00",
            "age_seconds": 2.1559540000000004,
            "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
23.07.2026 20:17 68219 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1247,
            "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": 333,
            "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": 163,
            "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
23.07.2026 20:16 68208 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 640.3110300000001,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 640.3112269999999,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:03:00+03:00",
            "age_seconds": 812.311473,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:00:00+03:00",
            "age_seconds": 992.3116580000001,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 640.311848,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 640.312007,
            "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
23.07.2026 20:16 68208 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1233,
            "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": 330,
            "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": 162,
            "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
23.07.2026 20:15 68207 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 584.623458,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 584.623649,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:03:00+03:00",
            "age_seconds": 756.62383,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:00:00+03:00",
            "age_seconds": 936.624016,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 584.624179,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 584.624334,
            "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
23.07.2026 20:15 68207 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1233,
            "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": 330,
            "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": 162,
            "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
23.07.2026 20:06 68206 market_data_freshness 18 rejected CANDLES_1M_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 24.948921,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 24.949141,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:03:00+03:00",
            "age_seconds": 196.949311,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:00:00+03:00",
            "age_seconds": 376.94949099999997,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 24.949651999999997,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 24.949808,
            "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
23.07.2026 20:06 68206 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1233,
            "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": 330,
            "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": 162,
            "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
23.07.2026 20:05 68194 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 1.7615640000000001,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 1.761769,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:03:00+03:00",
            "age_seconds": 173.761929,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:00:00+03:00",
            "age_seconds": 353.76209600000004,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 1.762262,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T23:05:52+03:00",
            "age_seconds": 1.762445,
            "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
}
10
23.07.2026 20:05 68194 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1233,
            "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": 330,
            "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": 162,
            "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
23.07.2026 19:55 68185 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 50.708054,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 50.708327,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:53:00+03:00",
            "age_seconds": 123.70855800000001,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:50:00+03:00",
            "age_seconds": 303.70874,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 50.708936,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 50.709098,
            "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
}
4
23.07.2026 19:55 68185 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1223,
            "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": 328,
            "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": 161,
            "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
23.07.2026 19:54 68184 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 44.236729,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 44.236912,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:53:00+03:00",
            "age_seconds": 117.23707,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:50:00+03:00",
            "age_seconds": 297.237229,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 44.237406,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 44.237561,
            "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
23.07.2026 19:54 68184 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1223,
            "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": 328,
            "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": 161,
            "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
23.07.2026 19:54 68169 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 2.336266,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 2.3364830000000003,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:53:00+03:00",
            "age_seconds": 75.336643,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:50:00+03:00",
            "age_seconds": 255.336802,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 2.336981,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:54:13+03:00",
            "age_seconds": 2.337151,
            "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
23.07.2026 19:54 68169 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1223,
            "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": 328,
            "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": 161,
            "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
        }
    ]
}
8
23.07.2026 19:53 68163 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 637.763208,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 637.763429,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:42:00+03:00",
            "age_seconds": 706.763594,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:40:00+03:00",
            "age_seconds": 826.763763,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 637.763926,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 637.76411,
            "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
23.07.2026 19:53 68163 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1212,
            "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": 326,
            "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": 160,
            "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
23.07.2026 19:46 68162 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 210.42909400000002,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 210.42929,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:42:00+03:00",
            "age_seconds": 279.429486,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:40:00+03:00",
            "age_seconds": 399.429655,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 210.429815,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 210.42997200000002,
            "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
23.07.2026 19:46 68162 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1212,
            "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": 326,
            "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": 160,
            "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
23.07.2026 19:45 68161 market_data_freshness 18 rejected TICKER_STALE Свежесть обязательных рыночных данных ниже допустимого уровня.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 146.713494,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 146.713723,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:42:00+03:00",
            "age_seconds": 215.713887,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:40:00+03:00",
            "age_seconds": 335.714044,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 146.714231,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": false
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 146.714423,
            "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
23.07.2026 19:45 68161 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1212,
            "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": 326,
            "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": 160,
            "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
23.07.2026 19:43 68144 market_data_freshness 18 passed MARKET_DATA_FRESH Свежесть обязательных рыночных данных соответствует требованиям слоя.
{
    "checked_data_types": [
        {
            "data_type": "ticker",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 2.293413,
            "max_allowed_age_seconds": 60,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "24h_stats",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 2.29364,
            "max_allowed_age_seconds": 300,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_1m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:42:00+03:00",
            "age_seconds": 71.293818,
            "max_allowed_age_seconds": 180,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "candles_5m",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:40:00+03:00",
            "age_seconds": 191.293976,
            "max_allowed_age_seconds": 600,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "spread_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 2.294134,
            "max_allowed_age_seconds": 120,
            "freshness_percent": 100,
            "is_fresh": true
        },
        {
            "data_type": "liquidity_metrics",
            "snapshot_status": "ready",
            "last_seen_at": "2026-07-23T22:43:09+03:00",
            "age_seconds": 2.294288,
            "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
23.07.2026 19:43 68144 historical_readiness 16 passed HISTORY_READY Исторические данные соответствуют требованиям слоя.
{
    "checks": [
        {
            "data_type": "candles",
            "timeframe": "1m",
            "required_records": 180,
            "actual_records": 1212,
            "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": 326,
            "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": 160,
            "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
        }
    ]
}
8

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

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

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

Время Тип события Решение Код причины Сообщение Входы Параметры Выходы
26.07.2026 23:36 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:33 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1478843.031978",
    "spread_percent": "0.1103144",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0906",
        "best_ask": "0.0907"
    }
}
26.07.2026 23:33 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1478843.031978",
    "spread_percent": "0.1103144",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0906",
        "best_ask": "0.0907"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1478843.031978",
    "spread_percent": "0.1103144",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0906",
        "best_ask": "0.0907"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1478843.031978",
    "spread_percent": "0.1103144",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0906",
        "best_ask": "0.0907"
    }
}
{
    "volume_24h": "1478843.031978"
}
{
    "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": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:17 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1422701.577508",
    "spread_percent": "0.11104942",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.09",
        "best_ask": "0.0901"
    }
}
26.07.2026 23:17 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1422701.577508",
    "spread_percent": "0.11104942",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.09",
        "best_ask": "0.0901"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1422701.577508",
    "spread_percent": "0.11104942",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.09",
        "best_ask": "0.0901"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1422701.577508",
    "spread_percent": "0.11104942",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.09",
        "best_ask": "0.0901"
    }
}
{
    "volume_24h": "1422701.577508"
}
{
    "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": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:06 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 23:01 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1379138.298718",
    "spread_percent": "0.11280316",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0886",
        "best_ask": "0.0887"
    }
}
26.07.2026 23:01 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1379138.298718",
    "spread_percent": "0.11280316",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0886",
        "best_ask": "0.0887"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1379138.298718",
    "spread_percent": "0.11280316",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0886",
        "best_ask": "0.0887"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1379138.298718",
    "spread_percent": "0.11280316",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0886",
        "best_ask": "0.0887"
    }
}
{
    "volume_24h": "1379138.298718"
}
{
    "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": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:45 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1325622.119352",
    "spread_percent": "0.11318619",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0883",
        "best_ask": "0.0884"
    }
}
26.07.2026 22:45 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1325622.119352",
    "spread_percent": "0.11318619",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0883",
        "best_ask": "0.0884"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1325622.119352",
    "spread_percent": "0.11318619",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0883",
        "best_ask": "0.0884"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1325622.119352",
    "spread_percent": "0.11318619",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0883",
        "best_ask": "0.0884"
    }
}
{
    "volume_24h": "1325622.119352"
}
{
    "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": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:35 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:29 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1256746.47066",
    "spread_percent": "0.11254924",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0888",
        "best_ask": "0.0889"
    }
}
26.07.2026 22:29 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1256746.47066",
    "spread_percent": "0.11254924",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0888",
        "best_ask": "0.0889"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1256746.47066",
    "spread_percent": "0.11254924",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0888",
        "best_ask": "0.0889"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1256746.47066",
    "spread_percent": "0.11254924",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0888",
        "best_ask": "0.0889"
    }
}
{
    "volume_24h": "1256746.47066"
}
{
    "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": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:13 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1195008.657776",
    "spread_percent": "0.11409013",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0876",
        "best_ask": "0.0877"
    }
}
26.07.2026 22:13 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1195008.657776",
    "spread_percent": "0.11409013",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0876",
        "best_ask": "0.0877"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1195008.657776",
    "spread_percent": "0.11409013",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0876",
        "best_ask": "0.0877"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1195008.657776",
    "spread_percent": "0.11409013",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0876",
        "best_ask": "0.0877"
    }
}
{
    "volume_24h": "1195008.657776"
}
{
    "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": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 22:06 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 21:57 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1006577.525164",
    "spread_percent": "0.1170275",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0854",
        "best_ask": "0.0855"
    }
}
26.07.2026 21:57 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1006577.525164",
    "spread_percent": "0.1170275",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0854",
        "best_ask": "0.0855"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1006577.525164",
    "spread_percent": "0.1170275",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0854",
        "best_ask": "0.0855"
    }
}
{
    "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": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1006577.525164",
    "spread_percent": "0.1170275",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0854",
        "best_ask": "0.0855"
    }
}
{
    "volume_24h": "1006577.525164"
}
{
    "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": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 21:41 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1004145.839186",
    "spread_percent": "0.11730205",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0852",
        "best_ask": "0.0853"
    }
}
26.07.2026 21:41 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1004145.839186",
    "spread_percent": "0.11730205",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0852",
        "best_ask": "0.0853"
    }
}
{
    "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:41 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1004145.839186",
    "spread_percent": "0.11730205",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0852",
        "best_ask": "0.0853"
    }
}
{
    "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:41 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "1004145.839186",
    "spread_percent": "0.11730205",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0852",
        "best_ask": "0.0853"
    }
}
{
    "volume_24h": "1004145.839186"
}
{
    "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:41 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 21:35 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "ENA-USDT",
    "is_trading_enabled": true
}
26.07.2026 21:25 symbol_discovered registered Символ обнаружен в discovery run.
null
null
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "939026.495444",
    "spread_percent": "0.11716462",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0853",
        "best_ask": "0.0854"
    }
}
26.07.2026 21:25 symbol_hard_prefilter_checked passed hard_prefilter_passed Символ прошёл hard prefilter discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "939026.495444",
    "spread_percent": "0.11716462",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0853",
        "best_ask": "0.0854"
    }
}
{
    "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:25 symbol_selection_window_checked rejected volume_limit_rejected Символ не попал в selection window по объёму.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "939026.495444",
    "spread_percent": "0.11716462",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0853",
        "best_ask": "0.0854"
    }
}
{
    "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:25 symbol_criteria_checked rejected volume_limit_rejected Soft criteria не применялись, потому что символ не прошёл selection window discovery.
{
    "symbol": "ENAUSDT",
    "base_currency": "ENA",
    "quote_currency": "USDT",
    "exchange": "kucoin",
    "exchange_status": "trading",
    "volume_24h": "939026.495444",
    "spread_percent": "0.11716462",
    "listing_age_days": 0,
    "api_accessible": true,
    "metadata": {
        "exchange_symbol": "ENA-USDT",
        "market": "USDS",
        "is_trading_enabled": true,
        "price_increment": "0.0001",
        "base_increment": "0.01",
        "quote_increment": "0.0001",
        "base_min_size": "1",
        "base_max_size": "10000000000",
        "quote_min_size": "0.1",
        "fee_currency": "USDT",
        "price_limit_rate": "0.03",
        "best_bid": "0.0853",
        "best_ask": "0.0854"
    }
}
{
    "volume_24h": "939026.495444"
}
{
    "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:25 symbol_exchange_metadata_refreshed ready EXCHANGE_METADATA_READY Биржевые торговые ограничения собраны полностью.
null
null
{
    "metadata_status": "ready",
    "exchange_symbol": "ENA-USDT",
    "is_trading_enabled": true
}