Сервисы (tinvest_signal_engine.services)¶
Точки входа console_scripts из pyproject.toml.
ingestor¶
tinvest_signal_engine.services.ingestor ¶
Инжестор: подписка на MarketDataStream и публикация в топик сырых событий.
detector_service¶
tinvest_signal_engine.services.detector_service ¶
Сервис детектора: чтение raw-топика, запись сигналов в Postgres и Kafka.
api¶
tinvest_signal_engine.services.api ¶
HTTP API поверх Postgres: последние сигналы и сводки по типам.
HealthResponse ¶
Bases: BaseModel
Ответ проверки живости процесса (без запроса к Postgres).
Source code in src/tinvest_signal_engine/services/api.py
ReadyResponse ¶
Bases: BaseModel
Готовность к трафику: проверка соединения с Postgres.
Source code in src/tinvest_signal_engine/services/api.py
RecentSignalsResponse ¶
Bases: BaseModel
Список последних сигналов из таблицы Postgres.
Source code in src/tinvest_signal_engine/services/api.py
SignalSummaryRow ¶
Bases: BaseModel
Одна строка агрегированной статистики по типу сигнала.
Source code in src/tinvest_signal_engine/services/api.py
SignalSummaryResponse ¶
Bases: BaseModel
Сводка по типам сигналов за последние minutes минут.
Source code in src/tinvest_signal_engine/services/api.py
AdminFeedbackIn ¶
Bases: BaseModel
Разметка сигнала в админке.
Source code in src/tinvest_signal_engine/services/api.py
DeliverySimulationIn ¶
Bases: BaseModel
Dry-run delivery settings over recent stored signals.
Source code in src/tinvest_signal_engine/services/api.py
require_admin ¶
require_admin(request: Request, token: Annotated[str | None, Query(description='Значение ADMIN_API_TOKEN')] = None, x_admin_token: Annotated[str | None, Header(alias='X-Admin-Token')] = None) -> None
Проверка токена для JSON-эндпоинтов админки.
Source code in src/tinvest_signal_engine/services/api.py
local_notifier¶
tinvest_signal_engine.services.local_notifier ¶
Потребитель топика сигналов на хосте; показ desktop-уведомлений (Windows).
threshold_cron¶
tinvest_signal_engine.services.threshold_cron ¶
Пересчёт порогов по истории свечей и запись YAML overrides.
Основной сценарий в compose — вызов :func:run_recalc_once из Dagster
(threshold_recalc_job). :func:main оставлен для legacy-сервиса
tinvest-threshold-cron (бесконечный цикл).
run_recalc_once ¶
Один прогон пересчёта порогов (Dagster, тесты, ручной вызов).
Source code in src/tinvest_signal_engine/services/threshold_cron.py
Вспомогательные модули¶
logging_utils¶
tinvest_signal_engine.logging_utils ¶
Единообразная настройка логирования для CLI-сервисов.
desktop_notifications¶
tinvest_signal_engine.desktop_notifications ¶
Всплывающие уведомления на рабочем столе Windows для локального нотификатора.