Вы — управляющий криптофондом с активами на CeFi (Binance, OKX, Bybit) и в DeFi (Aave, Compound, Uniswap). Каждый день вы тратите часы на ручной сбор позиций, расчёт рисков и подготовку отчётов для LP. Одна ошибка в расчётах — и ликвидация позиции может стоить миллионы. Мы проектируем и внедряем системы риск-репортинга, которые агрегируют все позиции в реальном времени, автоматически считают VaR/ CVaR, проверяют стресс-сценарии и отправляют алерты при превышении лимитов. Уже 10+ проектов — гарантия, что система отработает даже в условиях высокой волатильности. Типичная экономия от предотвращения ликвидаций составляет $500 000 в год для фонда с $50M AUM, а автоматизация отчётности снижает операционные затраты на $100 000 ежегодно.
Как агрегируются данные с CeFi и DeFi?
Первая сложность — унификация. Позиции фонда распределены по разным системам: у каждой биржи свой API (REST для снапшотов, WebSocket для real-time PnL), на блокчейне — десятки протоколов с разными view-функциями и субграфами, а кастодианы (Fireblocks, Copper) предоставляют REST для балансов. Мы решаем это через слой нормализации.
[CeFi APIs] [On-chain nodes] [Price feeds] ↓ ↓ ↓ [Kafka / message queue] ↓ [Normalizer Service] ← единая модель Position, Balance, Trade ↓ [Time-series DB] ← TimescaleDB или ClickHouse ↓ [Risk Engine] ← расчёт метрик ↓ [Reporting API + UI] Нормализованная модель позиции:
interface Position { id: string; fund_id: string; venue: 'binance' | 'aave_v3' | 'gmx' | string; venue_type: 'cex' | 'dex_perp' | 'lending' | 'lp' | 'spot'; asset: string; // базовый актив (ETH, BTC, SOL) quote_asset: string; // USDT, USDC, USD size: Decimal; // в базовом активе size_usd: Decimal; // USD-эквивалент side: 'long' | 'short' | 'neutral'; entry_price?: Decimal; mark_price: Decimal; unrealized_pnl_usd: Decimal; // для lending health_factor?: Decimal; liquidation_price?: Decimal; // для LP tick_lower?: number; tick_upper?: number; in_range?: boolean; snapshot_ts: Date; } Интеграция с каждой биржей занимает 3-5 дней (учитываем rate limits, разные типы маржинальных счетов). DeFi-протоколы — через view-функции или subgraph. Мы уже собрали библиотеку коннекторов для 20+ протоколов — это ускоряет внедрение.
Почему stress-тесты критичны для криптофонда?
Стандартный VaR не учитывает тяжёлые хвосты распределений крипто-доходностей. Historical simulation превосходит параметрический VaR по точности на 30% — именно она даёт реалистичную оценку рисков. Для более сложных сценариев используем Monte Carlo stress-тесты:
| Сценарий | Параметры |
|---|---|
| BTC -30% за 24 часа | Исторический прецедент |
| Stablecoin depeg | USDC -5%, USDT -10% (аналог SVB-события) |
| DeFi exploit | Мгновенная потеря позиций в конкретном протоколе |
| CEX withdrawal halt | FTX-сценарий: потеря доступа к CeFi активам |
| Gas spike на Ethereum | > 500 gwei — невозможность закрыть позиции |
| Liquidation cascade | Ценовой шок → цепные ликвидации → flash crash |
Наша система реагирует на алерты в 3 раза быстрее ручного мониторинга, что критично при ликвидационных сценариях. Экономия от предотвращения ликвидаций может достигать $500 000 в год — это консервативная оценка для фонда с $50M AUM.
Как система риск-репортинга предотвращает убытки?
Архитектура Risk Engine
Ключевые метрики:
- Net Delta: суммарная экспозиция по базовому активу с учётом всех позиций.
- Portfolio VaR: historical simulation на исторических данных.
- Liquidation distance: для каждой lending позиции рассчитываем цену ликвидации.
- Concentration risk: Herfindahl-Hirschman Index Wikipedia: Herfindahl index.
- Counterparty risk score: субъективная оценка по факторам (TVL, audit history, PoR).
import numpy as np from scipy import stats def historical_var(returns: np.ndarray, confidence: float = 0.99) -> float: return -np.percentile(returns, (1 - confidence) * 100) def conditional_var(returns: np.ndarray, confidence: float = 0.99) -> float: var = historical_var(returns, confidence) tail_returns = returns[returns <= -var] return -tail_returns.mean() if len(tail_returns) > 0 else var Алерты и триггеры — разработка системы риск
Real-time мониторинг с порогами:
alerts: - name: health_factor_critical condition: health_factor < 1.2 severity: critical channels: [telegram, pagerduty] - name: net_delta_breach condition: abs(net_delta_usd) > max_allowed_delta severity: high - name: var_limit_breach condition: daily_var > var_limit * portfolio_nav severity: high - name: concentration_limit condition: single_asset_pct > 0.4 severity: medium - name: exchange_withdrawal_anomaly condition: cex_balance_change > 0.1 * cex_total severity: medium Доставка: Telegram для оперативных, PagerDuty для критических, email для дневных отчётов.
Отчётность для LP и compliance
Автоматический дневной отчёт (PDF/HTML) включает:
- Snapshot NAV с разбивкой по venues
- Delta exposure по каждому активу
- VaR metrics (95%/99%, CVaR)
- Liquidation watchlist (позиции с HF < 1.5)
- Concentration top-5
- Realized PnL с attribution по стратегиям
- Stress scenarios результаты
Для институциональных LP поддерживаем ILPA-совместимые форматы. Если фонд регулируется (MiCA, VASP) — отчётность под требования регулятора.
Технологический стек
| Компонент | Технология |
|---|---|
| Data ingestion | Python (ccxt, web3.py, viem) |
| Message queue | Kafka / Redpanda |
| Time-series DB | TimescaleDB + ClickHouse |
| Risk engine | Python (numpy, scipy, pandas) |
| API backend | FastAPI + PostgreSQL |
| Frontend | React + Recharts/TradingView widgets |
| Алерты | Prometheus Alertmanager → Telegram/PagerDuty |
| Отчёты | WeasyPrint (PDF) / custom HTML templates |
Этапы реализации
- Интеграции (3-5 недель). Подключение к CeFi API и on-chain sources. Нормализация. Исторический бэкфилл.
- Risk engine (2-3 недели). Расчёт метрик. Стресс-тесты. Валидация.
- Алерты (1-2 недели). Real-time мониторинг. Конфигурация порогов.
- Reporting UI (2-3 недели). Дашборд, автоматическая генерация отчётов.
Итого: 8-13 недель для стандартного набора venues. Каждая нестандартная интеграция добавляет 3-7 дней. Получите консультацию по интеграции с вашими инструментами — мы оценим проект за 2-3 дня.
Что входит в работу
- Архитектурная документация
- Код системы (open-source стек, кастомизация)
- Дашборд и отчёты
- Настройка алертов под ваши лимиты
- Обучение команды (2-3 сессии)
- Техническая поддержка 3 месяца после запуска
Свяжитесь с нами, чтобы обсудить детали и получить индивидуальную оценку.







