Metadata-Version: 2.4
Name: dxlib
Version: 2.0.0
Summary: dxlib description here
Author-email: Rafael Zimmer <rzimmerdev@gmail.com>
License: MIT
Project-URL: homepage, https://github.com/divergex/dxlib
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=2.1.3
Requires-Dist: pandas>=2.2.2
Requires-Dist: requests>=2.32.3
Requires-Dist: livereload~=2.7.1
Requires-Dist: matplotlib~=3.9.4
Requires-Dist: attrs~=25.1.0
Requires-Dist: scipy~=1.15.1
Requires-Dist: uvicorn~=0.34.0
Requires-Dist: fastapi~=0.115.8
Requires-Dist: ibapi~=9.81.1.post1
Requires-Dist: httpx~=0.28.1
Requires-Dist: cloudscraper~=1.2.71
Requires-Dist: starlette~=0.45.3
Requires-Dist: pygments~=2.19.1
Requires-Dist: numba~=0.61.0
Requires-Dist: statsmodels~=0.14.4
Dynamic: license-file

<div style="margin-top: 16px; display: flex; align-items: center;">
    <img src="dxlib.png" alt="image" width="64" style="margin-right: 10px;" />
    <h1 style="margin: 0;">dxlib - A Quantitative Finance Library</h1>
</div>


Built using Python, **dxlib** focuses on providing a comprehensive set of tools for quantitative finance. 

The library is designed to be easily adapted and used with other libraries such as **pandas** and **numpy**, 
and inserted into existing workflows.

For low-level development and *HFT*, look at the companion library **dxcore**. **dxlib** is an interface to **dxcore**,
with additional API and network interfacing, QPM, and other tools.

## Motivation

Seeing as some existing libraries targeting quantitative development already exist, 
the goal of **dxlib** is to provide easier and act as a more maintainable library for both
big and small projects.

- **QuandL** has been archived, and **dxlib** is a great alternative.
- **QuantLib** is a great library, and should be used in conjunction with **dxlib**, but its focus differs. 
Eventually, `dxcore` should replace `QuantLib` within the context of **dxlib**.
- **pandas** and **numpy** are great, and should be used in conjunction with **dxlib**.

All modules and classes are built using Domain Driven Design, and are designed to be easily understood and used.
I myself come from a computer science background, 
and whenever starting a new quant project, always found my code to end up extremely convoluted and messy.
Therefore, I believe creating a library with a strong foundation rather than a collection of scripts is the way to go.

All classes and methods are supposed to be easily serializable, deserializable, and extendable - to be freely used in a distributed and/or parallel environment.
For now, the cache system uses both HDF5 and JSON, and the networking system allow for
easily interfacing with other systems. Current inbuilt handlers include **REST** and **Websockets**.
Future encodings are planned to include **FIX**, **SBE**.
Future handlers are planned to include **ZeroMQ**, **gRPC** and rough **UDP**.

In the future, **dxlib** will be able to interface with **dxcore** for low-level development, and **dxforge** for high-level network development.
Look at **dxhft** for implementation-specific high-frequency trading tools.

## Quick Start
