Metadata-Version: 2.4
Name: rexilion-engine
Version: 0.0.4a3
Classifier: License :: Other/Proprietary License
Requires-Dist: aiohttp>=3.9,<4
Requires-Dist: numpy>=1.26,<3
Requires-Dist: requests>=2.31,<3
Requires-Dist: websockets>=12,<17
License-File: LICENSE
Summary: Rexilion Engine local Rust-backed execution package
Author-email: Rexilion Technologies <fkh714@gmail.com>
Requires-Python: >=3.12
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM

# Rexilion Engine

Rexilion Engine is a local Rust-backed execution package with a Python facade.

Target install flow:

```bash
pip install rexilion-engine
```

Minimal local usage:

```python
from rexilion_engine import Engine

engine = Engine()
engine.set_position("BTCUSDT", 0)
report = engine.target_position(
    command_id="cmd-example",
    strategy_id="strategy-example",
    symbol="BTCUSDT",
    target_qty_units=125,
)
```

For migration checks, `Engine.base_engine_plan(...)` and
`BaseEngine.rust_compatibility_plan()` report which legacy Python `BaseEngine`
startup steps are Rust-ready versus still Python-backed. They do not start live
exchange/provider calls.

`Engine.base_engine_local_runtime_plan(...)`,
`Engine.datasource_poll_decision(...)`, `Engine.drawdown_decision(...)`, and
`Engine.strategy_event_decision(...)` expose the Rust-owned local BaseEngine
runtime decisions without live network side effects.

The native wheel contains the Rust extension module `rexilion_engine._native`.
If no platform wheel exists, pip may try to build from source and the user will
need a compatible Rust/Python build environment.

The Python datasource package surface includes `DataProvider.REXILION_TEST`,
which routes the Rexilion client to `https://testapi.rexilion.com/v1/metrics/` while
keeping `DataProvider.REXILION` on the production API host.

