Private quant research lab for AmiBroker automation and strategy R&D.
This repo currently uses a src layout under research_runner/src and relies on launchers that set PYTHONPATH centrally.
.\run_operator_ui.ps1.\run_tests.ps1The simplest way is through the launcher:
.\run_semi_autonomous_loop.ps1 -CampaignIds c1 -Decision acceptUseful variants:
.\run_semi_autonomous_loop.ps1 -CampaignIds c1,c2 -Decision defer
.\run_semi_autonomous_loop.ps1 -CampaignIds c1 -DecisionsPath .\tmp\operator_decisions.json
.\run_semi_autonomous_loop.ps1 -CampaignIds c1 -Decision accept -MaxIterations 1 -MaxRuns 1Notes:
- The loop writes outputs under
research_runner/results/loops. - If you do not provide operator decisions, the loop may stop in a pending operator approval state.
-Decision accept|reject|defergenerates simple operator decisions for the provided-CampaignIds.
You can also run pytest manually after setting PYTHONPATH to research_runner/src.
python -c "from core.contracts.operator_contract import OperatorCommand; print('OK')"- Streamlit UI imports projection from
core.operator.state_projection. operator_ui/state_projection.pyis only a compatibility wrapper.- The project is not yet packaged as an editable install; launchers provide the stable runtime path.