Обучение ML-модели
npx @tradejs/cli ml-train:latest запускает интерактивный/селективный train по актуальным export-файлам и автоматически готовит holdout/prod/walk-forward split.
Внешний интерфейс:
@tradejs/cli- настроенный у вас ML train runtime (container/service)
Что делает команда
- Выбор стратегии и типа модели.
- Выбор latest dataset (или merge нескольких base export, если задано).
- Подготовка derived split-файлов:
*.holdout-train.<key>.jsonl*.holdout-test.<key>.jsonl*.prod.<key>.jsonl*.walk-forward-fold-<N>.train.<key>.jsonl*.walk-forward-fold-<N>.test.<key>.jsonl
- Кэширование split по детерминированному ключу/hash.
- Проверка causality guard по timestamp-like фичам.
- Запуск настроенного ML train runtime.
Команды
npx @tradejs/cli ml-train:latest
npx @tradejs/cli ml-train:latest --strategy TrendLine --model xgboost
Неинтерактивные опции:
--strategy--model(catboost|random_forest|extra_trees|xgboost|lightgbm)--latestOnly
Основные env-параметры
Окна и split:
ML_TRAIN_RECENT_DAYSML_TRAIN_TEST_DAYSML_TRAIN_WALK_FORWARD_FOLDS
Ensemble/profile:
ML_TRAIN_ENSEMBLEML_TRAIN_FORCE_ENSEMBLEML_TRAIN_NO_ENSEMBLEML_TRAIN_FEATURE_PROFILE
Causality:
ML_TRAIN_DISABLE_CAUSALITY_GUARD=1(только для отладки)
Incremental mode:
ML_TRAIN_INCREMENTAL_THRESHOLD_GBML_TRAIN_INCREMENTALML_TRAIN_NO_INCREMENTALML_TRAIN_CHUNK_SIZEML_TRAIN_INCREMENTAL_ITERATIONS
Логи/отладка:
ML_TRAIN_DEBUG=1ML_TRAIN_HEARTBEAT_SECML_TRAIN_DOCKER_NO_OUTPUT_TIMEOUT_SEC
Безопасный режим Redis
В референсном deployment используется safety-wrapper:
- Redis приостанавливается перед train
- Redis поднимается обратно при любом завершении (успех/ошибка/interrupt)
Артефакты на выходе
- model aliases (
<Strategy>.joblib, ensemble aliases) - eval/prod snapshots
- sidecar metrics JSON
- markdown/html отчеты
- metadata split (
*.windows.<key>.meta.json)