The next-generation quantitative agent platform that turns Chinese natural language into risk-checked trading strategies — trained, served, and backtested entirely on AMD Radeon GPUs.
T+1 settlement, 100-share lot sizes, and ±10% price limits invalidate strategies built for US or crypto markets. A domestic-market agent must encode these rules natively.
Most demo agents generate strategies but never enforce a decision. Ours ends every pipeline with an independent PASS / REVIEW / REJECT risk veto.
The LLM stack shouldn't depend on CUDA. With ROCm, AMD Radeon is a first-class citizen for inference, fine-tuning, and backtesting.
What if one agent handled all of it — on AMD hardware?
Describe your idea in Chinese; the agent writes the executable strategy DSL.
Seven domestic-market constraint rules injected at inference time.
Auto-fix lot_size, short, exchange, and risk fields; 100% parseable output.
T+1, 100-share lots, no short, ±10% limits, fees & slippage.
A dedicated risk agent decides PASS / REVIEW / REJECT before any execution.
vLLM serving + LoRA training + backtest on one gfx1100 GPU.
Inference, fine-tuning, RAG, and backtesting all execute on AMD Radeon gfx1100 — no NVIDIA CUDA.
Qwen2.5-7B · rank 64 / alpha 128 · 3 epochs · FP16 LoRA
{
"strategy": {
"name": "CN_EMA_20_50",
"market": {
"exchange": "cn_stock",
"instrument": "510300.SH",
"timeframe": "1d"
},
"indicators": [
{"name": "ema_fast", "type": "EMA", "params": {"period": 20}},
{"name": "ema_slow", "type": "EMA", "params": {"period": 50}}
],
"entry": {"long": "ema_fast > ema_slow", "short": null},
"exit": {"long": "ema_fast < ema_slow", "short": null},
"constraints": {
"t_plus_one": true,
"price_limit": 0.1,
"allow_short": false,
"lot_size": 100
},
"risk": {
"stop_loss": -0.05,
"max_position_pct": 0.3,
"max_drawdown": -0.15
}
}
}
Overall evaluation pass rate improved from 45.83% to 100% — 24/24 across 4 ETFs × 6 strategy templates, after the DSL canonicalizer was introduced.
285 unit & integration tests passing · 2 async integration checks documented separately
All green — hover a cell for the ETF × template pair.
Try the running agent: natural-language strategy → DSL → backtest → risk decision. Register and chat in the hosted Open WebUI (the fine-tuned model runs on the AMD ROCm box — see the demo video).
AMD ROCm is a first-class target here — vLLM, PEFT, Dify, and the entire pipeline run on gfx1100. Zero CUDA dependency by design, with training and inference both measured on the same GPU.
Deterministic synthetic OHLCV provides reproducible system-closure demos; a paper-trading API is available for execution. Sources and timestamps are disclosed in every response.
An independent veto: REJECT blocks execution at the boundary. It validates instrument legality, hard constraints (T+1, no short, lot size), and risk parameters before any decision is emitted.
Full pipeline is in the repo: train_qlora.py → merge → serve. The 400-pair dataset and all configs are version-controlled.
From Chinese words to a risk-vetoed, backtested strategy — entirely on AMD Radeon.