LHM is the internal, single source of truth for Lighthouse Macro. This repository contains code, datasets, notebooks, and reusable modules powering reproducible macro research.
LHM/
├── data/ # Data storage (excluded from git)
│ ├── raw/ # Raw, immutable data from external sources
│ ├── external/ # External datasets (FRED, Treasury, etc.)
│ ├── interim/ # Intermediate data transformations
│ └── processed/ # Final, analysis-ready datasets
├── src/ # Reusable Python modules and utilities
├── notebooks/ # Jupyter notebooks for analysis and research
├── charts/ # Exported figures and visualizations
├── reports/ # Draft outputs and research reports
├── configs/ # Configuration files (YAML/JSON)
├── tests/ # Unit and integration tests
└── .github/ # GitHub-specific configurations
└── copilot-instructions.md # AI assistant guidelines
- Python 3.8+
- Jupyter Lab/Notebook
- Required packages: pandas, numpy, matplotlib
git clone https://github.com/BobSheehan23/LHM.git
cd LHM
pip install -r requirements.txt # When availableCommon data sources include:
- FRED: Federal Reserve Economic Data
- Treasury Direct: US Treasury data
- OFR: Office of Financial Research
- TIC: Treasury International Capital
- NY Fed: New York Federal Reserve
- Use type hints and docstrings
- Set random seeds for reproducibility
- Store credentials in environment variables
- Keep functions small and pure
- Use relative paths in notebooks
- No gridlines, all spines visible
- Right axis primary for single series
- Color palette: Ocean Blue, Deep Sunset Orange, Neon Carolina Blue, Neon Magenta, Medium-Light Gray
- Line thickness ~3, watermark "MACRO, ILLUMINATED." bottom-right
- Match axes at zero when appropriate
Considering consolidating multiple repositories into LHM?
See docs/repository-consolidation-analysis.md for detailed analysis and recommendations on integrating your external repositories into this monorepo structure.
TL;DR: Selective consolidation of macro research-specific repositories (FRED MCP, SEC EDGAR MCP, Daily Digest, etc.) is recommended, while keeping generic development tools separate.
This is an internal repository. Follow the established coding standards and ensure all data remains confidential.
Internal use only. All rights reserved.
The repository now includes an initial scaffolding for the planned FRED indicator ingestion system. Relevant entry points:
configs/fred_series_catalog.template.yaml– template for mapping stakeholder categories to FRED series identifiers.src/lhm/config/series_catalog.py– loader utilities for the catalog.src/lhm/clients/fred_client.py– stubbed API client to be expanded in the next phase.src/lhm/pipelines/daily_refresh.py– shell for the daily refresh pipeline coordinating ingestion and persistence.
Refer to docs/fred_data_platform.md for additional context and the
roadmap for completing the ingestion workflow.