← Назад к главному
# types.rs - Типы данных ## 📋 Назначение модуля `Tick` - структура для единичного тика рынка, который читает/пишет Redis и Feed. **Основная логика:** - Хранит данные о цене, объёме и волатильности - Сериализуется/десериализуется в JSON - Используется для передачи данных между модулями **Используется в:** - `src/feed.rs` - чтение/публикация тиков через Redis - `src/monitor.rs` - формирование тиков для Redis --- ## 🏗️ Структура модуля ### Структура `Tick` **Строки:** 10-20 ```rust #[derive(Clone, Debug, Serialize, Deserialize)] pub struct Tick { pub symbol: String, pub mid: f64, pub chg_pct: f64, pub ts: i64, pub bid: f64, pub ask: f64, pub bid_qty: f64, pub ask_qty: f64, } ``` **Назначение:** Единичный тик рынка **Поля:** | Поле | Тип | Описание | Пример | |------|-----|----------|--------| | `symbol` | String | Символ контракта | "MEMES_USDT" | | `mid` | f64 | Средняя цена (bid + ask) / 2 | 0.002000 | | `chg_pct` | f64 | Изменение цены за 24ч (%) | 45.5 | | `ts` | i64 | Timestamp (Unix) | 1771747635 | | `bid` | f64 | Лучшая цена bid | 0.001990 | | `ask` | f64 | Лучшая цена ask | 0.002010 | | `bid_qty` | f64 | Объём bid-уровней (0.5% вокруг mid) | 50000.0 | | `ask_qty` | f64 | Объём ask-уровней (0.5% вокруг mid) | 48000.0 | --- ## 📊 Пример JSON ```json { "symbol": "MEMES_USDT", "mid": 0.00200050, "chg_pct": 45.5, "ts": 1771747635, "bid": 0.001990, "ask": 0.002010, "bid_qty": 50000.0, "ask_qty": 48000.0 } ``` --- ## 📚 Связанные файлы | Файл | Связь | |------|-------| | `src/feed.rs` | Использует Tick для чтения/публикации тиков | | `src/monitor.rs` | Создаёт Tick и записывает в Redis | --- ## 🎯 Резюме **Что делает types.rs:** 1. ✅ Определяет структуру `Tick` для тиков рынка 2. ✅ Поддерживает сериализацию/десериализацию в JSON **Tick поля:** - `symbol` - символ контракта - `mid` - средняя цена - `chg_pct` - изменение за 24ч (%) - `ts` - timestamp - `bid`, `ask` - лучшие bid/ask - `bid_qty`, `ask_qty` - глубина (0.5% вокруг mid) --- **Дата создания:** 2026-02-22 **Автор:** Claude Code Assistant **Версия:** 1.0