71QuantLab manual
Applies to v0.2.7 · last updated 2026-10-10
What it is
71QuantLab packages three things into one locally deployed Windows app:
- Data collection: daily bars, indices, limit pools, news and fund flows
- 9 AI masters: each with its own input shape and knowledge base, consultable on its own
- The roundtable: seats debate → the decision master concludes
The knowledge base ships inside the installer. The model API and data sources are yours to configure; by default it uses public sources that need no key.
Requirements
| Item | Requirement |
|---|---|
| Operating system | Windows 10 1809+ / Windows 11 (x64). macOS is not supported |
| Installer | 71QuantLab-Setup-0.2.7.exe, 129.9 MB, Python runtime included |
| Disk | 2 GB free recommended; market data grows with each sync |
| Network | Needed for the first sync. The sources are public endpoints; a direct connection is best |
| Model API | Optional. Without one the data features work and the AI features are greyed out |
Installing
- Get the installer from the download page.
- Run it. Windows may show "Windows protected your PC" — the installer isn't code-signed yet, so click "More info → Run anyway".
- Don't install into
Program Files. Data is written to adata\folder inside the install directory, and system folders aren't writable. Something likeD:\71QuantLabis better. - Launch it from the Start menu or the desktop shortcut.
<install dir>\data\. Uninstalling
leaves the data area alone by default, but back it up before reinstalling.First run
On first launch, work through it in this order:
1. Environment check
Go to "Settings → Diagnostics", or run the check from the command line:
runtime\python.exe engine\cli.py doctor
Twelve checks; anything that fails explains the cause and the next step.
2. Create the database
Offline, a few seconds, schema only:
runtime\python.exe engine\cli.py db init
3. First data pull
Choose a data range under "Settings → Data", or use the command line:
runtime\python.exe engine\cli.py sync bootstrap --mode quick
This fetches 8 indices plus the CSI 300 constituents and takes about 5–10 minutes. You can interrupt it and it will resume from where it stopped.
4. Daily increments
runtime\python.exe engine\cli.py sync daily
The app also runs an incremental sync each time it starts.
Data sync
Source strategy: AKShare as the primary source, BaoStock as a supplement, with Tushare optional. The engine has fallbacks and timeout guards built in.
| Data | Notes |
|---|---|
| Index and stock daily bars | Sina endpoints first (measured as stable), Eastmoney as a second attempt |
| Trading calendar | Used to compute "last N trading days" |
| Limit-up / limit-down pools | Enable the corresponding data domain in settings |
| News and fund flows | Can be toggled independently |
| Financial data | Updated on the 1st of each month with the automatic sync, with a manual switch |
The Overview and Settings pages show the latest date in each table, source availability, sync history and failure reasons.
Ask a Master
The left rail holds 9 masters, each with a fixed input shape:
| Master | Input | Tier |
|---|---|---|
| Short-term Sentiment | Index sentiment (no ticker) / stock sentiment | Free |
| Technical Analysis | A stock or an index | Free |
| Factor Analysis | Pick built-in factors plus a stock | Free |
| Master Investor | Index analysis / stock analysis | Free |
| Macro Strategist | Macro analysis (no ticker) | Free |
| News Analyst | News analysis (no ticker) | Free |
| Value Investing | Index analysis / stock analysis | Free |
| Market Leader | Current session / next-day projection (no ticker needed) | VIP |
| Trading Pattern | Import a trade statement, analyse the pattern | VIP |
Codes and names support fuzzy matching. The flow:
- Select a master on the left
- Fill in the ticker or question in the shape that master expects
- Wait for the answer — waiting shows a breathing state, not a spinner
Data is pre-checked before a run: anything missing is flagged first and you decide whether to continue. A running task keeps going while you switch pages; a progress bar sits at the top and can be cancelled.
What an answer looks like
Answers aren't chat bubbles; they're research reports:
- Byline: persona + model + data date + confidence scale
- Body: 40em measure for readability
- Sources: collapsible, expand when you want the basis
- Actions: follow-up, save to archive (VIP)
Confidence is shown as a scale (high ▮▮▮ / medium ▮▮▯ / low ▮▯▯), not a progress ring.
Roundtable
Enter a code or name to open a session. The stages are visible as they run:
| Stage | What happens |
|---|---|
| 1 · Seats speak | A bull researcher, a bear researcher and several analysts give their views in turn |
| 2 · Rounds of debate | A neutral moderator runs the exchange and flags conflicts and consensus live |
| 3 · Decision | The calm decision maker weighs every seat and outputs a conclusion with its basis |
Three sessions a day on the free tier, unlimited with VIP. Every seat uses the same model configured in Settings.
Decision archive
Indexed by month on the left, with a memo-style detail view in the middle: the original question, each seat's view, and the later review.
- Stored long term, reviewable and searchable
- Outcome reconciliation: expected range vs actual result vs deviation
- Exportable (VIP)
Configuring the model API
The AI features need a model. The app speaks the OpenAI protocol, so one
base URL + key + model name covers DeepSeek / Qwen (dashscope) / Kimi (moonshot) /
OpenAI / a local Ollama.
- Open "Settings → Model API"
- Click a vendor preset to fill in the URL and model name
- Paste your own API key
- Click Save, then Test connection
Keys are encrypted with Windows DPAPI and written to config\settings.json;
the interface only echoes the last four characters.
Free vs VIP
Licensing is "free for everyone, plus VIP": install it and use it, with no trial period that locks you out.
| Capability | Free | VIP |
|---|---|---|
| Data sync and market board | ✓ | ✓ |
| Ask a Master (7 masters) | ✓ | ✓ |
| Ask a Master · Market Leader, Trading Pattern | — | ✓ |
| Roundtable | 3 a day | Unlimited |
| Rule screening | Default rules | + custom, long-vs-short |
| Factors | Basic | Full (incl. financial) |
| Default screening rules + basic factors | ✓ | ✓ |
| History length | 60 trading days | Unlimited |
| Decision archive / copy and export | — | ✓ |
| Custom rules / full factors / financials | — | ✓ |
VIP comes in monthly, yearly and lifetime tiers. Monthly and yearly fall back to the free tier when they expire rather than locking you out: Ask a Master, the roundtable and default screening keep working, and only the VIP items are withdrawn. The lifetime tier has no expiry date.
Full comparison and pricing are on the 71QuantLab product page.
Activation and changing machines
Licensing uses an activation code plus a one-time online check. Enter it once in Settings and it keeps working offline afterwards.
Activating
- Open "Settings → Licensing" and copy the device code (it looks like
F916-CD9A-4FE5-ED44) - Send the device code and the tier you want to me (see the purchase request)
- Once payment is confirmed I send you the activation code; enter it in Settings and activate — it verifies online and takes effect immediately
Settings → Licensing also shows the activation service address, the activation code field, activation and renewal status, days remaining, the last online check, your device code and the feature matrix.
Changing machines / renewing
| Situation | What to do |
|---|---|
| New computer | Send me the device code from the new machine and I'll issue a code bound to it |
| Renewing | Buy again and enter the new activation code over the old one — no reinstall needed |
| Activation fails | First check whether the device code changed, and that the activation service address is correct |
The device fingerprint hashes the motherboard serial, CPU ID and system install ID together, so a single hardware change doesn't invalidate it immediately; if none can be read it falls back to the install path.
Folders and data
The layout after installation:
<install dir>\
├── app\ program (Electron / Node / front-end build)
├── runtime\ embedded Python
├── assets\ persona and knowledge base (read-only)
├── data\ ← your data lives here by default
│ ├── quantcanvas.db market database
│ ├── research.db research database
│ └── backup\ automatic backups, last 3 kept
├── config\settings.json user settings (keys encrypted with DPAPI)
└── logs\ reports\ cache\
Program Files will make sync fail.Troubleshooting
| Symptom | Cause and fix |
|---|---|
| "Local service not connected" | The Node service didn't start. Usually a port conflict or missing dependencies — check the console output |
dep:akshare not installed | Wrong Python interpreter. Put an absolute path in config\python-path.txt |
Sync reports RemoteDisconnected | Source rate limiting. Retry later |
| Data directory not writable | Installed into Program Files. Move it somewhere like D:\71QuantLab |
| Antivirus flags it | The installer isn't signed yet, so this is a false positive. Allow-list it, or wait for the signing certificate |
| AI features do nothing | No model API configured. Set one up under "Settings → Model API" and test the connection |
The most useful thing to send me is the error from the logs\ folder, plus which data source and model you were using.
Not available
| Feature | Notes |
|---|---|
| First-run wizard | Not yet — follow the manual steps above on first use |
| Automatic updates | Not yet — download and install over the old version |
| Code-signing certificate | Not yet — antivirus may flag the installer |
Still stuck?
Go to the contact page with the version, the error message and what you did. Buying VIP and changing machines are handled there too.