semvec/pypi-packages huggingface dataset:
xignitegh 0.2.1
A wrapper to the XigniteGlobalHistorical API
License: MIT
Requires Python: >=3
Keywords: xignite api wrapper

# XigniteGH

![GitHub Workflow Status](https://img.shields.io/github/workflow/status/xignite-python/xignitegh/release)
![PyPI](https://img.shields.io/pypi/v/xignitegh)
![GitHub last commit](https://img.shields.io/github/last-commit/xignite-python/xignitegh)
![GitHub issues](https://img.shields.io/github/issues/xignite-python/xignitegh)
![GitHub](https://img.shields.io/github/license/xignite-python/xignitegh)

*Python module to get historical stock data from the XigniteGlobalHistorical API*

XigniteGH is a wrapper to the XigniteGlobalHistorical API. This module implements a python interface to the API provided by [Xignite](https://www.xignite.com/product/historical-stock-prices#/productoverview). A token is required.

## Install
To install the package use:
```shell
pip install xignitegh
```

## Usage
```python
import pandas as pd
from xignitegh import Xignite

xgh = Xignite(_token="TOKEN", _token_userid=USERID)

quotes = xgh.get_quotes(ticker="AAPL", years=1)
if quotes["Outcome"] == "Success":
    name = quotes["Security"]["Name"]

dividends = xgh.get_dividends(ticker="AAPL", years=1)
if dividends["Outcome"] == "Success":
    df = pd.json_normalize(dividends["CashDividends"])
```

The token may also be stored in the environment variable ``XIGNITE_TOKEN``. The token userid is optional and used only with encrypted tokens.
rust-dtw 0.1.14
A rust implementation of dynamic time warping with python bindings!
License: MIT
Keywords: dtw timeseries neuroimaging

<h1 align="center">
  RustDTW
</h1>
<p align="center">Python extension backed by a multi-threaded Rust implementation of Dynamic Time Warping (DTW).</p>
<div align="center">
<img src="https://img.shields.io/pypi/v/rust-dtw?style=flat-square"/><br/>  
</div>

## ⚡️ Quick Install
To install rustDTW, simply:

```shell
pip install rust-dtw
```

## ❓ What is Dynamic Time Warping
In time series analysis, dynamic time warping (DTW) is one of the algorithms for measuring similarity between two temporal sequences, which may vary in speed [1](https://en.wikipedia.org/wiki/Dynamic_time_warping). This has applications in speech recognition, time series classification and neuroscience.

## Example Usage
  
rustDTW was designed for usage with timeseries data from functional brain regions. However any data represented as a numpy matrix can be provided.
```python
import numpy as np
import rust_dtw
  
rust_dtw.dtw(
  s=np.array([0., 1., 2.]), 
  t=np.array([3., 4., 5.]), 
  window=50, 
  distance_mode="euclidean"
  )
>>> 5.0990195
```
For more examples please see `examples/` or explore the [wiki](https://github.com/FL33TW00D/rustDTW/wiki).
  
## Developing

### Built With
- PyO3
- Maturin
- rust-numpy
- Rayon

### Setting up Dev
To get started with development, simply clone the repository and edit the main library code in `src/`. Once done, simply build and test the code with `./build.sh`.

```shell
git clone https://github.com/FL33TW00D/rustDTW.git
cd rust-dtw/
./build.sh
```

## Tests

All tests are implemented using pytest.
```shell
poetry run pytest
```

## 📈 Performance
<div align="center">
<img src="https://raw.githubusercontent.com/FL33TW00D/rustDTW/master/examples/speed/time.png" width=60%/><br/>  
</div>
The above shows the performance of the rustdtw implementation vs the DTAIDistance OpenMP Python version (more benchmarks vs C implementation coming soon).

## ⚠️ License

`rustDTW` is free and open-source software licensed under the [MIT License](https://github.com/FLE33TW00D/rustDTW/blob/master/LICENSE).