Skip to content

Latest commit

 

History

History
85 lines (67 loc) · 1.85 KB

File metadata and controls

85 lines (67 loc) · 1.85 KB

Contributing

Thanks for contributing.

This repository is maintained as a compact learning and engineering demo, so the contribution bar is simple:

  • keep changes focused
  • prefer reproducible examples over broad claims
  • avoid adding heavy dependencies without a clear need
  • preserve the repo's positioning as a GPU quant modeling demo, not a production trading system

Development Setup

python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install -U pip
python3 -m pip install -e '.[viz]'

Optional extras:

python3 -m pip install -e '.[profiling]'
python3 -m pip install -e '.[qlib]'
python3 -m pip install -e '.[triton]'

Before Opening a PR

Please run the smallest relevant checks locally.

Minimum smoke path:

python3 -m qlib_gpu_model.train \
  --data-source synthetic \
  --device cpu \
  --seq-len 16 \
  --num-features 8 \
  --model-dim 32 \
  --num-heads 4 \
  --num-layers 1 \
  --ff-dim 64 \
  --batch-size 32 \
  --epochs 1 \
  --num-workers 0 \
  --amp-dtype fp32 \
  --use-compile false \
  --out-dir outputs/contrib_smoke

python3 -m qlib_gpu_model.infer \
  --checkpoint outputs/contrib_smoke/best.pt \
  --device cpu \
  --batch-size 16 \
  --iters 10 \
  --warmup 2

If you touch parquet evaluation logic, also run:

python3 -m compileall src

Scope Guidelines

Good fits:

  • training or inference performance improvements
  • data pipeline fixes
  • backtest and walk-forward correctness fixes
  • reproducibility improvements
  • documentation and figure generation improvements

Needs stronger justification:

  • new modeling stacks unrelated to the current pipeline
  • large framework migrations
  • features that imply live trading readiness

Pull Request Notes

In your PR description, include:

  • what changed
  • why it changed
  • how you validated it
  • any metric impact if performance behavior changed