Metadata-Version: 2.4
Name: eoms
Version: 1.5.0
Summary: A modular Execution & Order Management System built for systematic trading desks
Author: Atwater Financial
License: Apache-2.0
Project-URL: Homepage, https://github.com/AtwaterFinancial/EOMS
Project-URL: Repository, https://github.com/AtwaterFinancial/EOMS
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pyyaml>=6.0
Requires-Dist: watchdog>=3.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: black>=23.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Requires-Dist: mypy>=1.0; extra == "dev"
Requires-Dist: pre-commit>=3.0; extra == "dev"
Requires-Dist: sphinx>=7.0; extra == "dev"
Requires-Dist: furo>=2023.0; extra == "dev"
Provides-Extra: gui
Requires-Dist: PySide6>=6.5.0; extra == "gui"
Provides-Extra: fix
Requires-Dist: quickfix>=1.15.1; extra == "fix"
Provides-Extra: websocket
Requires-Dist: websockets>=11.0; extra == "websocket"
Provides-Extra: monitoring
Requires-Dist: prometheus-client>=0.16.0; extra == "monitoring"
Provides-Extra: docs
Requires-Dist: sphinx>=7.0; extra == "docs"
Requires-Dist: furo>=2023.0; extra == "docs"
Provides-Extra: testing
Requires-Dist: pytest>=7.0; extra == "testing"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "testing"
Requires-Dist: pytest-cov>=4.0; extra == "testing"
Provides-Extra: security
Requires-Dist: bandit>=1.7.0; extra == "security"
Requires-Dist: safety>=2.0.0; extra == "security"
Requires-Dist: pip-audit>=2.5.0; extra == "security"
Dynamic: license-file

# EOMS
# 🚀 Quant‑EOMS

A modular Execution & Order Management System built for systematic trading desks.  
*Broker‑agnostic · Datafeed‑agnostic · GUI‑centric.*

## Features
| Module | Purpose |
|--------|---------|
| **Dashboard** | At‑a‑glance PNL, risk, latency stats |
| **Order Ticket** | Live quotes + smart routing |
| **Positions Mgr** | Real‑time net positions & exposures |
| **Order Mgr** | State machine for every order, amend/cancel |
| **Algo Mgr** | Load/run param‑driven algos |
| **PNL Window** | Tick‑level & aggregated PNL |

## Quick Start
```bash
git clone https://github.com/your‑org/quant‑eoms.git
cd quant‑eoms
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
uvicorn quanteoms.api:app --reload   # optional REST gateway
python -m quanteoms.gui              # launch dashboard
```
## Architecture
```lua
                   +------------------+
   Market Data --> | DataFeed Plugin* |---+
                   +------------------+   |
                                           v
+-----------+    events     +------------------+
|  Brokers* | <-----------> | Event Bus (async)|
+-----------+               +------------------+
           ^                       |
           |                       v
           |               +---------------+
           +---------------| GUI Modules   |
                           +---------------+
(* = pluggable via entry_points)
```

## Adding a New Plugin
```bash
Create package quanteoms_<provider> implementing BrokerBase or FeedBase.
```

Add to setup.py:

```python
entry_points={
    "quanteoms.brokers": ["<name>=quanteoms_<provider>.broker:Broker"],
}
pip install -e . – the system auto‑discovers it.
```

## Roadmap
See TASKS.MD.
