Files
chinese-equity-quant/cli.py
T
2026-06-16 13:57:17 +08:00

54 lines
1.4 KiB
Python

#!/usr/bin/env python3
"""Chinese Equity Quant Pipeline — decoupled phase CLI.
Phases:
data — Download daily bars to parquet
alpha — Compute alpha weights from data
feature — Compute daily features from minute bars
combo — Combine alphas into a single weight
portfolio — Build tradable positions and simulate execution
"""
import logging
import click
from pipeline.data.cli import data
from pipeline.alpha.cli import alpha
from pipeline.features.cli import feature
from pipeline.combo.cli import combo
from pipeline.portfolio.cli import portfolio
from tools.pqcat import pqcat
from tools.alphaview import alphaview
@click.group()
@click.option(
"--log-level", default="INFO",
type=click.Choice(["DEBUG", "INFO", "WARNING", "ERROR"], case_sensitive=False),
help="Logging verbosity (default INFO shows download/compute progress)",
)
def cli(log_level):
"""Chinese Equity Quant Pipeline.
Each phase is independent: read from parquet, write to parquet.
"""
logging.basicConfig(
level=getattr(logging, log_level.upper()),
format="%(asctime)s %(levelname)s %(name)s: %(message)s",
datefmt="%H:%M:%S",
)
cli.add_command(data)
cli.add_command(alpha)
cli.add_command(feature)
cli.add_command(combo)
cli.add_command(portfolio)
cli.add_command(pqcat)
cli.add_command(alphaview)
if __name__ == "__main__":
cli()