diff --git a/README.md b/README.md
index f5b3142f..02622b83 100644
--- a/README.md
+++ b/README.md
@@ -27,7 +27,10 @@
-
+
+
+
+
@@ -35,6 +38,9 @@
+
+
+
@@ -47,15 +53,9 @@
-
-
-
-
+
-
-
-
---
@@ -147,20 +147,19 @@ QLIB_DATA_DIR=~/.qlib/qlib_data/eurusd_1min_data
```bash
~/llama.cpp/build/bin/llama-server \
--model ~/models/qwen3.6/Qwen3.6-35B-A3B-UD-Q3_K_XL.gguf \
- --n-gpu-layers 26 \
+ --n-gpu-layers 24 \
--no-mmap \
--port 8081 \
--ctx-size 240000 \
- --parallel 3 \
+ --parallel 2 \
--batch-size 512 --ubatch-size 512 \
--host 0.0.0.0 \
-ctk q4_0 -ctv q4_0 \
- --reasoning-budget 0 \
- --chat-template-kwargs '{"enable_thinking":false}'
+ --reasoning off
```
> **Important flags and token budget:**
-> - `--ctx-size 240000 --parallel 3` — allocates **3 slots × 80,000 tokens each**. This is required because `fin_quant` hypothesis prompts include up to `MAX_FACTOR_HISTORY` past experiments and can reach **25,000–35,000 tokens**. With less context per slot (e.g. 33 k from `--ctx-size 100000 --parallel 3`) prompts overflow silently and produce empty/invalid responses.
+> - `--ctx-size 240000 --parallel 2` — allocates **2 slots × 120,000 tokens each**. `fin_quant` prompts can reach 80k+ tokens with full factor history; a smaller slot causes silent overflow and empty/invalid responses.
>
> **Token budget breakdown per fin_quant request:**
> | Component | Approx. tokens |
@@ -168,13 +167,13 @@ QLIB_DATA_DIR=~/.qlib/qlib_data/eurusd_1min_data
> | System prompt + scenario description | ~3,000 |
> | `MAX_FACTOR_HISTORY=5` past experiments × ~2,500 | ~12,500 |
> | RAG context + instructions | ~2,000 |
-> | **Total** | **~17,500** (safe under 80k slot) |
+> | **Total** | **~17,500** (well within 120k slot) |
>
-> Formula: `ctx_size / parallel` must be at least `MAX_FACTOR_HISTORY × 2500 + 8000`.
+> Formula: `ctx_size / parallel` must satisfy `n_ctx_slot > MAX_FACTOR_HISTORY × 2500 + 5000`.
>
-> - `--reasoning-budget 0` — disables chain-of-thought. Without this, Qwen3 spends 15–22 s per request, causing rdagent to time out after 10 retries.
-> - `--n-gpu-layers 26` — use 26 on RTX 5060 Ti (16 GB) when Ollama is also running. Frees ~500 MB VRAM needed for the larger KV cache (1.3 GB at 240k ctx Q4_0).
-> - `-ctk q4_0 -ctv q4_0` — quantise the KV cache to 4-bit, reducing VRAM from ~5 GB to ~1.3 GB at 240k context.
+> - `--reasoning off` — **critical**: completely disables Qwen3 chain-of-thought. `--reasoning-budget 0` is not sufficient — it still starts and immediately aborts reasoning, producing empty JSON responses. Only `--reasoning off` prevents this entirely.
+> - `--n-gpu-layers 24` — 4 fewer than maximum on RTX 5060 Ti (16 GB), freeing ~500 MB VRAM for the larger KV cache.
+> - `-ctk q4_0 -ctv q4_0` — quantises the KV cache to 4-bit, reducing VRAM from ~5 GB to ~1.3 GB at 240k context.
---
@@ -247,6 +246,9 @@ done
| Command | Description |
|---------|-------------|
+| `python predix.py best` | Show top strategies by composite score (Sharpe × DD × trade penalty) |
+| `python predix.py best -n 20 -m sharpe` | Top 20 by Sharpe ratio |
+| `python predix.py best --show NAME` | Full metadata for one strategy |
| `python predix_strategy_report.py` | Generate reports for ALL strategies |
| `python predix_strategy_report.py results/strategies_new/123_MyStrategy.json` | Report for single strategy |
@@ -281,17 +283,6 @@ done
## Configuration
-```bash
-# Start the UI dashboard
-rdagent ui --port 19899 --log-dir log/ --data-science
-```
-
-Then open `http://127.0.0.1:19899` in your browser.
-
----
-
-## Configuration
-
### Data Configuration
Edit [`data_config.yaml`](data_config.yaml) to customize:
@@ -535,10 +526,10 @@ See [`ATTRIBUTION.md`](ATTRIBUTION.md) for detailed guidelines and examples.
Contributions are welcome! Please:
1. Fork the repository
-2. Create a feature branch (`git checkout -b feature/amazing-feature`)
-3. Commit your changes (`git commit -m 'Add amazing feature'`)
-4. Push to the branch (`git push origin feature/amazing-feature`)
-5. Open a Pull Request
+2. Create a feature branch (`git checkout -b feat/my-feature`)
+3. Commit using [Conventional Commits](https://www.conventionalcommits.org/) (`git commit -m 'feat: add my feature'`)
+4. Push to the branch (`git push origin feat/my-feature`)
+5. Open a Pull Request with a conventional commit title
For major changes, please open an issue first to discuss your approach.