Metadata-Version: 2.1
Name: StatArbTools
Version: 0.0.1
Summary: A set of tools useful in exploring statistical arbitrage
Home-page: https://github.com/mattfirth7/cointegratedpairstest
Author: Matthew Firth
Author-email: mmf001x@yahoo.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown

# StatArbTools

StatArbTools is a Python library primarily for determining if a pair of time series are cointegrated.
It also includes tools for generating an array of log returns from a price array, looking for a linear relationship,
and creating a potentially stationary distribution.

## Installation

Use the package manager [pip](https://pip.pypa.io/en/stable/) to install StatArbTools

```bash
pip install StatArbTools
```

## Usage

```python
import StatArbTools

StatArbTools.gen_log_returns(numpy_time_series_1, numpy_time_series_2) # returns numpy arrays of the log returns for each time series
StatArbTools.gen_linear_relationship(numpy_log_returns_1, numpy_log_returns_2) # returns the coefficient from a linear regression between the two log returns arrays
StatArbTools.gen_stationary_distr(numpy_log_returns_1, numpy_log_returns_2, coefficient) # returns the linear combination of the two log returns arrays based on a linear regression coefficient
StatArbTools.test_stationarity(numpy_time_series_1, numpy_time_series_2) # returns True if the null hypothesis of an Augmented Dickey Fuller test is rejected and False otherwise. It also returns the p-value of the ADF test.
StatArbTools.plot(stationary_distribution) # plots the passed distribution
```

## Contributing
For changes, please open an issue first to discuss what you would like to change.

## License
[MIT](https://choosealicense.com/licenses/mit/)

