The statio statistical library in Python.
Project description
statio is a statistical Python libary geared towards running computations across a sliding window of values.
- Download:
- Source:
Usage Model
Most statistical libraries are based on a single point in time. The -1 index of a list of values is the point in time in which the calculation is made.
statio is based on multiple points in time. Each index is considered a point in time in which the calculation is made.
Useful for simulation application types.
Useful for plotting or graphing applications types.
Overview
The major functions of statio:
- sum_values():
Builds a list of Running Sums over a sliding list of values.
- sma_values():
Builds a list of Simple Moving Averages over a sliding list of values.
- ema_values():
Builds a list of Exponential Moving Averages over a sliding list of values.
- wwma_values():
Builds a list of Welles Wilder Moving Averages over a sliding list of values.
- psa_values():
Builds a list of Power Sum Averages over a sliding list of values.
- varp_values():
Builds a list of Population Variances over a sliding list of values.
- var_values():
Builds a list of Sample Variances over a sliding list of values.
- stdp_values():
Builds a list of Population Standard Deviations over a sliding list of values.
- std_values():
Builds a list of Sample Standard Deviations over a sliding list of values.
- max_values():
Builds a list of the Maximum Values over a sliding list of values.
- min_values():
Builds a list of the Minimum Values over a sliding list of values.
- top_values():
Builds a list of the Top X Values over a sliding list of values.
- bottom_values():
Builds a list of the Bottom X Values over a sliding list of values.
License
Made available under the MIT License.
Usage
Import the library:
>>> import statio
Build list of running sums using a 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> statio.sum_values(values, 3) [34, 64, 93, 93, 101, 97, 98]
Build list of Simple Moving Averages using a 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> results = statio.sma_values(values, 3) >>> ["%.2f" % x for x in results] ['34.00', '32.00', '31.00', '31.00', '33.67', '32.33', '32.67']
Build list of Exponential Moving Averages using a 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> results = statio.ema_values(values, 3) >>> ["%.2f" % x for x in results] ['34.00', '32.00', '31.00', '32.50', '35.25', '30.13', '32.56']
Build list of Welles Wilder Averages using a 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> results = statio.wwma_values(values, 3) >>> ["%.2f" % x for x in results] ['34.00', '32.00', '31.00', '32.00', '34.00', '31.00', '32.33']
Build list of Population Variances using a 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> results = statio.varp_values(values, 3) >>> ["%.2f" % x for x in results] ['0.00', '4.00', '4.67', '4.67', '13.56', '29.56', '30.89']
Build list of Sample Variances using a 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> results = statio.var_values(values, 3) >>> ["%.2f" % x for x in results] ['0.00', '8.00', '7.00', '7.00', '20.33', '44.33', '46.33']
Build list of Population Standard Deviations using a 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> results = statio.stdp_values(values, 3) >>> ["%.2f" % x for x in results] ['0.00', '2.00', '2.16', '2.16', '3.68', '5.44', '5.56']
Build list of Sample Standard Deviations using a 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> results = statio.std_values(values, 3) >>> ["%.2f" % x for x in results] ['0.00', '2.83', '2.65', '2.65', '4.51', '6.66', '6.81']
Build list of the Maximum Value of 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> results = statio.max_values(values, 3) >>> ["%.2f" % x for x in results] ['34.00', '34.00', '34.00', '34.00', '38.00', '38.00', '38.00']
Build list of the Minimum Value of 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> statio.min_values(values, 3) [34, 30, 29, 29, 29, 25, 25]
Build list of the Top X Values of 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> statio.top_values(values, 3, 2) [[34], [30, 34], [30, 34], [30, 34], [34, 38], [34, 38], [35, 38]]
Build list of the Bottom X Values of 3 period window:
>>> values = [34, 30, 29, 34, 38, 25, 35] >>> statio.bottom_values(values, 3, 2) [[34], [30, 34], [29, 30], [29, 30], [29, 34], [25, 34], [25, 35]]
Roadmap
Add median_values.
Add recentmax_values: the index of the most recent max value.
Add sincemax_values: the number of bars since recent max value.
Add recentmin_values: the index of the most recent min value.
Add sincemin_values: the number of bars since recent min value.
Add covariance, correlation, alpha, beta computations.
- For additional information, please email:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.