This repo is a lightweight research workspace for WorldQuant BRAIN IQC Stage 1.
It is not a full local backtesting engine.
Use this repo to:
- organize alpha families
- write down hypotheses and settings
- preview ledger rows before testing
- log what you tested
- keep a learning history of major changes
codex.md: repo operating policyresearch/competition_notes.md: workflow, screening rubric, and execution orderresearch/alpha_ledger.csv: tracking table for tested variantsresearch/simulation_results.csv: simulation metrics, ranking state, and rerun quarantineresearch/reversal_status.md: current confirmed ranking and next queued reversal testresearch/change_learning_log.md: major-change learning logoutput/jupyter-notebook/iqc-stage1-research.ipynb: main research notebook
Open PowerShell and run:
cd "C:\Users\User\All my projects\Quant"
& ".\.venv\Scripts\python.exe" -m jupyter labThen open:
output/jupyter-notebook/iqc-stage1-research.ipynb- choose the kernel
Quant (py313)if Jupyter asks
Run the cells from top to bottom.
The notebook does four main things:
- defines the helper structures for alpha families and ledger rows
- loads the starter alpha slate
- gives three concrete starter variants for the first family
- prepares preview ledger rows before you write anything to the CSV
For the first session:
- run all cells
- inspect
first_family_variants - start with
baseline_reversal_1d - review
variant_rows[0] - if the row looks correct, uncomment the matching
append_ledger_row(...)line - log the variant
- test the same formula manually in WorldQuant BRAIN
- write down the result and next action
Use this when you want the simplest check:
- open the notebook
- run all cells without errors
- confirm
starter_familiesexists - confirm
first_family_variantscontains 3 variants - confirm
variant_rowscontains 3 rows
Use this when you want to verify the notebook code outside Jupyter without changing the repo:
cd "C:\Users\User\All my projects\Quant"
& ".\.venv\Scripts\python.exe" -c "import json, pathlib, os; nb=pathlib.Path(r'C:\Users\User\All my projects\Quant\output\jupyter-notebook\iqc-stage1-research.ipynb'); data=json.load(nb.open('r', encoding='utf-8')); g={}; os.chdir(nb.parent); [exec(''.join(cell['source']), g, g) for cell in data['cells'] if cell.get('cell_type')=='code']; print('cells_executed'); print(len(g['starter_families'])); print(len(g['first_family_variants'])); print(g['variant_rows'][0]['family_name']);"Expected result:
cells_executed- a starter family count
3variantspv_reversal_outsized_move
This repo uses:
- local interpreter:
.venv\Scripts\python.exe - notebook kernel:
Quant (py313)
Reason:
- it avoids ambiguity with the global
python3kernel - it keeps this repo on a stable Python 3.13 interpreter
- it makes the documented run and test commands match the notebook environment
Log tested variants in:
research/alpha_ledger.csv
Log simulation metrics and clean ranking state in:
research/simulation_results.csv
Use only these statuses:
plannedscreenedsimulatedsubmittablesubmittedretired
For ranking hygiene:
- count only
confirmedresult rows inresearch/simulation_results.csv - set
include_in_rankingtonofor mislabeled or duplicated attempts - rerun suspicious entries cleanly before comparing them against the current leader
Log major changes in:
research/change_learning_log.md
A major change includes:
- workflow changes
- notebook structure changes
- new durable files
- logging changes
- material research-process changes
For every major change:
- add a learning-log entry
- explain it normally
- explain it again in simple language
- it does not simulate directly on BRAIN
- it does not submit alphas automatically
- it does not replace the official WorldQuant platform
Use this repo to prepare better tests, not to replace platform execution.