This release is a pre-release and may not be stable for production use.
pip install signalslite
Why:
-
I wanted a pipeline that can generate features quickly so I can add, remove, build more features whenever needed. So it should be able to do everything from scratch in couple of hours. A relational DB would increase workload of setting things up. So I decided to use parquet files split into daily structure. This is fast without any additional setup.
-
Least friction to get started. It should effortlessly run on consumer grade laptops. Consequently, automate the whole pipeline on cloud, so makes sense to make it "lite", use parallelization when possible, allow for free data sources. It can utilize cuda if available, but is able to run on cpu as well.
-
It should be able to run in Colab default runtime. One way to setup a pipeline is to save all data to mounted drive with more storage.
-
Under 1000 LoC possible? Goal is not to build the best pipeline, but instead, a wrapper on top of flexible code that new users can easily understand and modify as needed.
Stages:
- Daily Data Collection/updation:
- Yahoo/EODHD (Thanks to https://github.com/degerhan/dsignals)
- Save in daily parquet files
- Update daily parquet files
- Colab seem to be slow in loading data from yahoo. Will update.
- Generate primary features:
- Technicla indicators (RSI, MACD, SMA, EMA, etc on various timeframes)
- flexible enough to accomodate fundamental data and news vectors data since things are independent of each other
- Secondary features:
- Generate features from primary features
- like crossovers, ratios between technical features, etc
- Scaling:
- bringing the cross sectional features to same scale [0, 1]
- Now data looks similar to Numerai classic data
- Targets:
- Generate your own targets for trading strategies
- or use Numerai Signals targets
- Modelling:
- your best models in Numerai classic should work here
- Scheduling:
- Run the pipeline daily
- should be able to run on cloud
Notes:
- This is a work in progress. I will keep adding more features and examples.
- more tests,
- more documentation,
- more examples,
- more flexibility,
- more speed,
- more parallelization,
- more cloud support,
- more data sources,
- more targets,
- more models,
- more everything
Hope you like it and find it useful. Please let me know if you have any suggestions or feedback. Thanks!
Release files for signalslite 0.1a4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| signalslite-0.1a4.tar.gz | 15.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| signalslite-0.1a4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.8 kB
Release files / signalslite-0.1a4.tar.gz
| Download URL | signalslite-0.1a4.tar.gz |
|---|---|
| Size | 15.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
da80285079e7d895054585825365428b5eb8b38f351a121103193194c6e3c462
|
|
BLAKE2b-256 checksum How to use checksums |
e80aa260c2b26f21c81012778e4791f3ea074fe25e9793d9025cd0e1044c7dd9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.17
|
Release files / signalslite-0.1a4-py3-none-any.whl
| Download URL | signalslite-0.1a4-py3-none-any.whl |
|---|---|
| Size | 17.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ffd575190adf0186d2d3cdf97f0890125783bd722b4ae0399a5529802535fd3f
|
|
BLAKE2b-256 checksum How to use checksums |
b3cf3eddc4ab87c6ff096987c1a4d241928dd6d505ec66a308c31af64c9688bc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.17
|