Skip to main content

A statistic package for python with enphasis on timeseries analysis. Built around numpy, it provides several back-end timeseries classes including R-based objects via rpy2. It is shipped with a domain specific language for timeseries analysis and manipulation built on to of ply. It requires Python 2.6 and up, including Python 3 versions.

Documentation:

http://packages.python.org/dynts/

Dowloads:

http://pypi.python.org/pypi/dynts/

Source:

http://github.com/quantmind/dynts

Keywords:

timeseries, quantitative, finance, statistics, numpy, R, web

Timeserie Object

To create a timeseries object directly:

>>> from dynts import timeseries
>>> ts = timeseries('test')
>>> ts.type
'zoo'
>>> ts.name
'test'
>>> ts
TimeSeries:zoo:test
>>> str(ts)
'test'

DSL

At the core of the library there is a Domain-Specific-Language (DSL) dedicated to timeserie analysis and manipulation. DynTS makes timeserie manipulation easy and fun. This is a simple multiplication:

>>> import dynts
>>> e = dynts.parse('2*GOOG')
>>> e
2.0 * goog
>>> len(e)
2
>>> list(e)
[2.0, goog]
>>> ts = dynts.evaluate(e).unwind()
>>> ts
TimeSeries:zoo:2.0 * goog
>>> len(ts)
251

Requirements

There are few requirements that must be met:

  • python 2.6 up to python 3.2.

  • numpy version 1.5.1 or higher for arrays and matrices.

  • ply version 3.3 or higher, the building block of the DSL.

  • ccy for date and currency manipulation.

R backend

Depending on the back-end used, additional dependencies need to be met. For example, there are back-ends depending on the following R packages:

Installing rpy2 on Linux is straightforward, on windows it requires the python for windows extension library.

Optional Requirements

  • cython for performance. The library is not strictly dependent on cython, however its usage is highly recommended. If available several python modules will be replaced by more efficient compiled C code.

  • xlwt to create spreadsheet from timeseries.

  • matplotlib for plotting.

  • djpcms for the web.views module.

Running Tests

There are three types of tests available:

  • regression for unit and regression tests.

  • profile for analysing performance of different backends and impact of cython.

  • bench same as profile but geared towards speed rather than profiling.

From the distribution directory type:

python runtests.py

This will run by default the regression tests. To run a profile test type:

python runtests.py -t profile <test-name>

where <test-name> is the name of a profile test. To obtain a list of available tests for each test type, run:

python runtests.py --list

for regression, or:

python runtests.py -t profile --list

for profile, or:

python runtests.py -t bench --list

from benchmarks.

If you access the internet behind a proxy server, pass the -p option, for example:

python runtests.py -p http://myproxy.com:80

It is needed since during tests some data is fetched from google finance.

To access coverage of tests you need to install the coverage package and run the tests using:

coverage run runtests.py

and to check out the coverage report:

coverage report -m

Kudos

Community

Trying to use an IRC channel #dynts on irc.freenode.net (you can use the webchat at http://webchat.freenode.net/).

If you find a bug or would like to request a feature, please submit an issue.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dynts-0.4.1.tar.gz (324.5 kB view details)

Uploaded Source

File details

Details for the file dynts-0.4.1.tar.gz.

File metadata

  • Download URL: dynts-0.4.1.tar.gz
  • Upload date:
  • Size: 324.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for dynts-0.4.1.tar.gz
Algorithm Hash digest
SHA256 4250ed7848eee6257b4aa757ded37088ec6767b33d78d90f587e19d965730a19
MD5 287a0333fe201108d052ba5bc6f32ded
BLAKE2b-256 c5ad9eba13efcd4fd811d9a94efeab02a5a7c1e8cda45590ac7a911b4416ccda

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.4.1 This release

1 file

0.4.0

1 file

0.3.3

1 file

0.3.2

1 file

0.3.1

1 file

0.3

1 file

0.2

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page