Market Oracle — что получилось, когда трейдер-разработчик устал от «битых» данных
Зачем вообще это нужно
Если вы пишете торгового бота, AI-агента или сервис продажи сигналов — вы неизбежно упрётесь в данные. Биржевые API криво отдают свечи, индикаторы считают каждый по-своему, а WebSocket рвёт коннект в самый неподходящий момент. Market Oracle — это попытка решить эти проблемы в одном API
Инструмент для тех, кто уже пишет под SPOT-трейдинг: торговые системы, бэктесты, сигнальные сервисы, скринеры. Целевая аудитория — программисты и вайб-кодеры, которым нужна надёжная подложка из данных, чтобы не отвлекаться на инфраструктуру.
Что можно потрогать бесплатно
Бесплатный тариф существует и он бессрочный:
- 2 000 запросов в день
- 30 RPM (запросов в минуту)
- 1 WebSocket-соединение
- Без срока действия ключа
Для прототипа, обучения или небольшого проекта этого достаточно. Один вызов GET /v1/context/{symbol} возвращает бар с индикаторами, стакан, макро-контекст, деривативы и оценку качества данных — то, что обычно собираешь из 8–10 разных источников.
Поддерживаются основные пары: BTC, ETH, SOL, BNB, DOGE, XRP. Все индикаторы (EMA, RSI, ATR, ADX, VWAP, Bollinger, OBV, MFI, CVD) считаются на нативных таймфреймах и покрыты тестами. Сигнал формируется строго по закрытому бару (closed: true) — никаких «подсмотренных» данных из будущего.
Какие задачи решает
Главная боль, которую решает проект — согласованность данных. Когда ты строишь торговое решение, тебе нужно одновременно знать:
- Закрытый бар с индикаторами
- Текущее состояние стакана
- Макро-фон (Fear&Greed, DXY, yields)
- Деривативы (funding, OI, ликвидации)
- Режим рынка (корреляция с BTC, волатильность)
Всё это в одном запросе, с оценкой data_quality.score. Если score < 70 — система сама говорит: «не торгуй сейчас, данные неполные». Это избавляет от необходимости писать кучу проверок в своём коде.
Кому это подойдёт
- Разработчикам торговых ботов, которые хотят получать готовые данные вместо написания своей пайплайна
- Создателям сигнальных сервисов — можно сосредоточиться на логике, а не на инфраструктуре данных
- AI-агентам и LLM-интеграциям — один endpoint отдаёт всю картину рынка в машинно-читаемом формате
- Вайб-кодерам, которые хотят быстро прототипировать торговую идею без глубокого погружения в биржевые API
Любой может построить своё торговое решение с ChatGPT + Oracle!
Подводные камни реализации
Проект от идеи до рабочего продукта за 6 месяцев. Вот основные проблемы, которые я решал:
1. Дыры в данных. Периодически биржи отваливались или отдавали неполные данные. Это приводило к некорректным индикаторам и ложным сигналам. Пришлось добавлять дополнительные источники котировок и делать консенсус цены (медиана по нескольким источникам с контролем расхождений). Появилось поле data_quality.score — оно показывает, насколько данные сейчас надёжны.
2 Потребление памяти. Первое, что начало «рвать» систему — это хранение исторических данных. JSON и обычные структуры съедали RAM при масштабировании. Решение — перевёл хранение в бинарный формат. Свечи и индикаторы стали занимать в разы меньше места, а скорость чтения выросла.
3. Тестирование индикаторов. Каждый индикатор покрыт тестами, чтобы быть уверенным в корректности расчётов. Особенно tricky моменты — это прогрев (warm-up period), когда индикатор ещё не накопил достаточно данных. Вместо нуля в таких случаях возвращается null, что заставляет разработчика явно обрабатывать это состояние.
Что дальше
Сейчас работаю над торговой платформой с AI, которая будет использовать Market Oracle в качестве источника данных.