26 lines
1.7 KiB
Markdown
26 lines
1.7 KiB
Markdown
# Quant Investment Engine - Project Guidelines
|
|
|
|
## Core Mandate: Separation of Concerns
|
|
|
|
To ensure deterministic results and maintain clear architectural boundaries, the project strictly enforces the following separation of concerns:
|
|
|
|
1. **Data Collection (GAS)**: All factor collection, raw data harvesting (Naver Finance, Yahoo Finance, etc.), and initial normalization happen in the Google Apps Script (`.gs`) layer.
|
|
2. **Engine Processing & Decision (Python)**: Data extraction, complex processing, alpha signal analysis, risk management, and final decision-making are strictly performed by the Quant Investment Engine in Python.
|
|
* **Supplemental Collection**: For advanced metrics (Beta, 52W High, etc.) missing in GAS, Python scripts (e.g., `tools/ingest_fundamental_raw.py`) may supplement the data feed.
|
|
|
|
**Rule**: No business logic, decision-making, or portfolio sizing logic should be added to the `.gs` files. They serve as an adapter layer to supply clean data to the Python engine.
|
|
|
|
## Roadmap Task Completion Workflow
|
|
|
|
When a roadmap task (WBS) is completed:
|
|
1. **Data Verification**: Must prove success using actual data (e.g., JSON outputs, log results).
|
|
2. **Set Completion**: Once verified, perform a "Set" of:
|
|
* `git commit`: With a descriptive message including the WBS ID.
|
|
* `git push`: To the remote repository.
|
|
* **PR Creation**: Notify completion and prepare for PR.
|
|
|
|
## File Mapping Clarification (WBS-2.1)
|
|
The relationship is **GAS (Primary) → Python (Supplement/Engine)**.
|
|
* `src/gas/collection/gdc_01_fetch_fundamentals.gs` is the primary feeder.
|
|
* `tools/ingest_fundamental_raw.py` is the supplemental collector and processor.
|