TSP: open-source AI-платформа для квантового трейдинга на китайском фондовом рынке

На GitHub набирает популярность проект Tick Stock Panel (TSP) — самохостируемая, не требующая администрирования квантовая рабочая станция для рынка акций A-класса (Китай), разработанная специально для частных розничных инвесторов и любителей количественного анализа. Проект объединяет скринер акций, бэктестинг, мониторинг аномалий и AI-ассистента в одном Docker-контейнере — и всё это полностью локально.

Репозиторий в настоящее время находится в трендах GitHub, набрав более 4700 звёзд и 1200 форков.

Что умеет TSP

Платформа обеспечивает сквозной рабочий процесс: сбор данных, скрининг стратегий, бэктестинг, мониторинг в реальном времени и AI-анализ. Система построена на высокопроизводительном стеке с использованием Polars для миллисекундной обработки данных и DuckDB/Parquet для эффективного локального хранения.

ℹ Ключевые модули
TSP включает: скринер (25+ стратегий), бэктестинг с T+1/комиссии/проскальзывание, фактор-платформу с DSL, мониторинг аномалий трёх типов, AI-ассистент с 18 инструментами и автоматический AI-разбор торгового дня.

Скринер и бэктестинг

Движок стратегий сканирует весь A-рынок за миллисекунды. Система считает 68 индикаторов и сигналов, сохраняя только 15 базовых колонок в Parquet — остальные вычисляются на лету. Бэктестинг запускается в изолированном дочернем процессе (spawn worker), что позволяет переподключаться к задаче после обновления страницы без потери прогресса.

Скринер и движок стратегий позволяют сканировать весь рынок за миллисекунды, используя встроенные стратегии, пользовательские сигналы или логику, сгенерированную ИИ. Поддерживается факторный майнинг с вложенной валидацией на out-of-sample данных.

AI-ассистент

Встроенный LLM-ассистент вызывается через плавающую кнопку, боковую панель или горячую клавишу ⌘K. Он работает исключительно с локальными данными пользователя и охватывает 18 инструментов только для чтения.

💡 Совместимые LLM
Ассистент поддерживает любой OpenAI-совместимый API: DeepSeek, Tongyi (Qwen), Ollama и другие. Для работы инструментов обязательна поддержка function calling.
КатегорияВозможности
АкцииКотировки, история, ключевые уровни, финансовая отчётность
РынокОбзор дашборда, индексы, режим рынка, аномалии
СекторыРотация секторов, лидеры/аутсайдеры, потоки капитала
Мои данныеWatchlist, позиции, библиотека сигналов
СтратегииКаталог, запуск скринера, факторный рейтинг, бэктест

Мониторинг аномалий

Система отслеживает три типа событий в течение всего торгового дня:

  • Pre-market (竞价) — предторговый аукцион с маркировкой риска погони за ценой
  • Intraday (盘中) — лимитные движения, пробои, новые максимумы/минимумы, объёмные всплески
  • Offset (偏移) — отклонения по методологии биржи (±20–40% за 3 дня, ±100–200% за 30 дней)

При срабатывании правила — всплывающее уведомление, голосовое оповещение или push в Feishu (корпоративный мессенджер).

Архитектура


graph TB
    A[Источники данных\nTickFlow / fuyao / plugins] --> B[Роутер возможностей\n6 датасетов × независимый маршрут]
    B --> C[Хранилище\nParquet + DuckDB]
    C --> D[Вычисления\nPolars: 68 индикаторов]
    D --> E[Исследования\nФакторы / Бэктест / Майнинг]
    E --> F[FastAPI Backend\nREST + SSE]
    F --> G[React 18 Frontend\nграфики + real-time]

Ключевая идея архитектуры — ability routing (маршрутизация по возможностям): каждый из 6 типов датасетов независимо маршрутизируется к источнику данных, который умеет его предоставить. Смена источника не ломает ни один индикатор или бэктест.

⚠ Важно
Проект создан для обучения и исследований. Авторы прямо указывают: TSP не является торговым или биржевым терминалом, не предоставляет рекомендаций к покупке/продаже и не конкурирует с TongDaXin / TongHuaShun. Результаты бэктеста не гарантируют будущую доходность.

Быстрый старт

Запустить TSP можно одной командой Docker — многоархитектурные образы (linux/amd64 и arm64) публикуются автоматически через CI, без необходимости устанавливать Python или Node локально.

docker run -d --name tsp -p 3018:3018 \
  -v ${PWD}/data:/app/data \
  ghcr.io/shy3130/tick-stock-panel:latest

После запуска интерфейс доступен по адресу http://localhost:3018. Все данные хранятся локально в формате Parquet — никакой передачи на внешние серверы.

Способ запускаКому подходитТребования
GHCR-образ (рекомендован)Большинству пользователейDocker
Docker Compose (локальная сборка)Разработчики со своими изменениямиDocker
Dev-режимРазработка и расширенияPython ≥ 3.11, Node ≥ 20, uv, pnpm

Почему это важно

TSP закрывает типичную боль частного квантового трейдера: разрозненные инструменты с несовместимой методологией, привязка к конкретному поставщику данных и необходимость сидеть у экрана весь торговый день. Проект предлагает единый pipeline от скринера до разбора торгового дня с AI — и всё это в одном self-hosted контейнере без подписок.

Данные полностью остаются на локальной машине пользователя — это редкость для инструментов подобного класса.

Rепозиторий: github.com/shy3130/tick-stock-panel