Modular pipeline for quantitative signal discovery and validation
Project description
๐ง Edge Research Pipeline
The Edge Research Pipeline is a modular, privacy-first research toolkit designed for discovering, validating, and analyzing patterns in tabular datasets. Originally built for quantitative finance, its techniques are broadly applicable to any domain involving structured data and statistical rule discovery.
๐ Key Features
A flexible, modular Python library enabling you to:
- Clean, normalize, and transform tabular datasets
- Engineer features relevant to finance, statistics, and other structured-data domains
- Generate and label custom targets for supervised tasks
- Discover signals using rule mining and pattern search methods
- Perform robust validation tests (e.g., train/test splits, bootstrap, walk-forward analysis, false discovery rate)
- Reproduce results with complete configuration export and local-only processing
- Efficiently execute parameter grids via function calls or a CLI
๐ Privacy by Design
All computations run locallyโno data ever leaves your environment. Designed explicitly for regulated industries, confidential research, and reproducible workflows.
๐ฆ Installation
Install required dependencies using:
pip install -r ./requirements.txt
Note: Dependencies were generated via pipreqs and may need further validation.
๐งฉ Quick Start Example
Run a full pipeline example via the command line:
python edge_research/pipeline/main.py params/grid_params.yaml
Or check the ready-to-run examples in the examples/ directory.
๐ Project Structure
edge-research-pipeline
โโโ data/ # Sample datasets (sandbox only)
โโโ docs/ # Documentation per module
โโโ edge_research/ # Core logic modules
โ โโโ logger/
โ โโโ pipeline/
โ โโโ preprocessing/
โ โโโ rules_mining/
โ โโโ statistics/
โ โโโ utils/
โ โโโ validation_tests/
โโโ examples/ # Copy-pasteable usage examples
โโโ params/ # Configuration files
โโโ tests/ # Unit tests for major functions
โโโ LICENSE
โโโ README.md
โโโ requirements.txt
Detailed explanations for each subfolder are available within their respective READMEs.
โ๏ธ Configuration Philosophy
Configuration files are managed via YAML files within ./params/:
default_params.yaml: Base configuration with mandatory default values (do not modify)custom_params.yaml: Override specific parameters from defaultsgrid_params.yaml: Parameters specifically for orchestrating grid pipeline runs
Precedence hierarchy:
- For pipeline runs (
pipeline.pyor CLI):grid_params > custom_params > default_params - For direct function calls:
custom_params > default_params
Parameters can also be directly overridden by passing a Python dictionary at runtime.
๐งช Testing
Unit tests cover all major logical functions, ensuring correctness and robustness. Tests are written using pytest. Short utility functions, simple wrappers, and internal helpers are generally not included.
Run tests via:
pytest tests/
๐ค Contributing
We welcome contributions! Follow these guidelines:
- Keep your commits focused and atomic
- Always provide clear, descriptive commit messages
- Add or update tests for any new feature or bug fix
- Follow existing code style (e.g., use
blackandflake8for Python formatting) - Document new functionality thoroughly within the relevant
.mdfile indocs/ - Respect privacy-by-design principlesโno logging or external data exposure
Feel free to open issues for discussions or submit pull requests directly.
๐ License
This project is licensed under the Edge Research Personal Use License (ERPUL).
- โ Free for personal, student, and academic use (with citation)
- ๐ผ Commercial use requires approval (temporarily waived)
- ๐ No redistribution without permission
See LICENSE for full terms.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file edge_research_pipeline-0.1.3.tar.gz.
File metadata
- Download URL: edge_research_pipeline-0.1.3.tar.gz
- Upload date:
- Size: 152.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
128fa15ff19df5cacea4587d2d68c528838c6247e346d3abc84bcec0af026dae
|
|
| MD5 |
30b45fbbfaa3cd151f5d31fa1a5acb77
|
|
| BLAKE2b-256 |
9fd61527b79d221b123f78c5c91fd0d465f7cad0c46f69cde6acc5a3b5ed1b4d
|
File details
Details for the file edge_research_pipeline-0.1.3-py3-none-any.whl.
File metadata
- Download URL: edge_research_pipeline-0.1.3-py3-none-any.whl
- Upload date:
- Size: 111.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66ea6c60c4a2ee94ab50a24129ce1f4a26183cd4c62f29e449fd46a343869a3c
|
|
| MD5 |
9226bb7df34998b8474aefd3ce55bdaa
|
|
| BLAKE2b-256 |
541b049c71cc2694fce2c35c93f77089b3e2f8c54df57b26a3e88c79bdce8dac
|