Dev2506's picture
Add files using upload-large-folder tool
2bbc43c verified
Raw
History Blame Contribute Delete
1.92 kB
.PHONY: help install test lint clean build run-live run-backtest docker-up docker-down
PYTHON := python3
PIP := pip3
CARGO := cargo
help: ## Show this help
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[36m%-20s\033[0m %s\n", $$1, $$2}'
install: install-python install-rust ## Install all dependencies
install-python: ## Install Python dependencies
cd ml && $(PIP) install -r requirements.txt && $(PIP) install -e .
install-rust: ## Build the Rust proxy
cd proxy && $(CARGO) build --release
test: ## Run the test suite
cd ml && $(PYTHON) -m pytest tests/ -v --cov=flash_crash_watchdog
lint: ## Lint Python code
cd ml && $(PYTHON) -m flake8 flash_crash_watchdog/ tests/
run-live: ## Run the live detector against Binance WebSocket
cd ml && $(PYTHON) -m flash_crash_watchdog.cli live --symbol BTCUSDT
run-backtest: ## Run the backtest on sample data
cd ml && $(PYTHON) -m flash_crash_watchdog.cli backtest --data ../data/sample.parquet
download-data: ## Download sample Binance data (May 19, 2021 BTC crash)
cd ml && $(PYTHON) -m flash_crash_watchdog.data.download_binance --symbol BTCUSDT --date 2021-05-19 --out ../data/
train-tcn: ## Train the TCN model on FI-2010
cd ml && $(PYTHON) -m flash_crash_watchdog.cli train --data ../data/fi2010/ --model ../configs/tcn_baseline.yml
dashboard: ## Start the Next.js dashboard
cd dashboard && npm install && npm run dev
docker-up: ## Start all services via Docker Compose
docker-compose up -d
docker-down: ## Stop all Docker services
docker-compose down
clean: ## Clean build artifacts
find . -type d -name __pycache__ -exec rm -rf {} +
find . -type d -name .pytest_cache -exec rm -rf {} +
rm -rf ml/*.egg-info ml/build ml/dist
cd proxy && $(CARGO) clean
build: ## Build everything (Python wheel + Rust binary)
cd ml && $(PYTHON) setup.py bdist_wheel
cd proxy && $(CARGO) build --release