Свечи в трейдинге: как из сделок рождается основа анализа рынка
Свечные графики — везде: от профессиональных терминалов до мемных крипто-ботов. Но что такое "свеча" и как она строится из потока сделок? В этой статье мы разберём процесс, выделим сложные случаи и дадим интерактивный визуализатор, чтобы вы могли наблюдать формирование свечей в реальном времени.
Попробуйте визуализатор: candle-trade-visualizer.vercel.app
Кратко
- Свеча — компактное резюме цены и объёма за фиксированный интервал времени (например, 1 минута).
- Агрегация — процесс превращения потока сделок в свечи.
- Сложные случаи (дубликаты, пропуски, неупорядоченные сделки) важны для точности.
- Визуализатор: играйте с сделками и смотрите, как формируются свечи!
Что такое свеча?
Свеча (или японская свеча) — это сводка рыночной активности за определённый период (например, 1 минута, 1 час, 1 день). Каждая свеча содержит:
- Open — цена первой сделки в интервале
- High — максимальная цена
- Low — минимальная цена
- Close — цена последней сделки
- Volume — общий объём
- Trade count — количество сделок
Выглядит просто, но дьявол в деталях.
Как из сделок строятся свечи: процесс агрегации
1. Поток сделок
Каждую миллисекунду биржи генерируют сделки:
{
"timestamp": 1714000000000,
"price": 50000.0,
"amount": 0.1,
"side": "Buy"
}
В секунду может быть тысячи сделок — каждая просто запись о покупке или продаже.
2. Группировка по времени
Чтобы построить свечи, группируем сделки по времени. Например, все сделки с 12:00:00 по 12:00:59 попадают в одну минутную (m1) свечу.
Алгоритм:
- Для каждой сделки определяем, в какой интервал она попадает (усекаем timestamp).
- Если свеча для этого интервала уже есть — обновляем high/low/close/volume.
- Если нет — начинаем новую свечу.
3. Сложные случаи: почему всё не так просто
- Неупорядоченные сделки: сделки могут приходить не по порядку (задержки сети и т.д.).
- Дубликаты: одна и та же сделка может появиться дважды.
- Граничные сделки: что если сделка ровно на границе интервала?
- Пробелы: что если в интервале нет сделок?
Надёжная агрегация должна учитывать все эти случаи. В индустрии это критично для точной аналитики и алготрейдинга.
Пример: агрегация свечей в коде
Минимальный пример на Rust (логика одинакова для любого языка):
for trade in trades {
let ts = truncate_to_tf(trade.timestamp, timeframe);
if let Some(candle) = current_candle {
if candle.timestamp == ts {
// обновляем high/low/close/volume
} else {
// сохраняем текущую свечу, начинаем новую
}
} else {
// первая свеча
}
}
Важно: для корректной агрегации поток сделок должен быть отсортирован по времени. Если нет — нужно сначала отсортировать или использовать алгоритм, устойчивый к неупорядоченным данным.
Зачем это нужно?
- Графики: все платформы (TradingView, Binance и др.) строят графики на основе свечей.
- Алготрейдинг: стратегии работают со свечами, а не с сырыми сделками.
- Аналитика: индикаторы, сигналы и статистика — всё строится на OHLCV.
- AGI и автоматизация: для машинного анализа нужны строгие, однозначные данные.
Попробуйте сами: интерактивный визуализатор свечей
Мы сделали интерактивный визуализатор:
👉 candle-trade-visualizer.vercel.app
- Добавляйте сделки вручную или случайно.
- Смотрите, как они агрегируются в свечи.
- Экспериментируйте с таймфреймами и сложными случаями.
Вывод
Свечи — основа любого рыночного анализа. За каждой простой свечой — сложный процесс агрегации, устойчивый к ошибкам и сложным случаям. Если строите свои системы — учитывайте все нюансы, иначе графики и стратегии могут ввести в заблуждение.
Попробуйте визуализатор, разберитесь в деталях и делайте честные свечи!
Ссылки:
- Визуализатор: candle-trade-visualizer.vercel.app
- Что такое OHLCV: Wikipedia
- Код и библиотека: GitHub
Если статья была полезна — поделитесь с коллегами и давайте делать рыночные данные прозрачнее для всех!
Цитирование
@software{soloviov2025tradingcandlesdemystified,
author = {Soloviov, Eugen},
title = {Свечи в трейдинге: как из сделок рождается основа анализа рынка},
year = {2025},
url = {https://marketmaker.cc/ru/blog/post/trading-candles-demystified},
version = {0.1.0},
description = {Как строятся свечи из сделок? Объясняем процесс агрегации, подводные камни и даём интерактивный визуализатор для наблюдения за формированием свечей в реальном времени.}
}
MarketMaker.cc Team
Количественные исследования и стратегии