A package for price forecasting using LSTM networks
Foresight is a collection of tools built in Python 3 to forecast the future price movements of industrial metals, using Long Short Term Memory networks. It can take univariate or multivariate datasets and make predictions using single-input single-output (SISO), multi-input single-output (MISO) or multi-input multi-output (MIMO) frameworks.
It was built for the purpose of testing the hypothesis that improved predictive performance can be achieved by applying the multi-task learning paradigm to commodity price forecasting. As such many of the example notebooks are built for this purpose.
The tools can equally be applied to any user chosen datasets, provided the datasets are loaded in the format shown in the example csvs, or are inputed directly as shown in the "generic" notebooks.
Full documentation can be found on https://industrial-metals-forecaster.readthedocs.io/en/latest/.
Read the docs will not show the models module online. For more information on the models module refer to the PDF Documentation1
Docs - Contains all files relating to the documentation
Foresight - Contains the collection of python files relating to Foresight
Data - Contains the time series used to forecast industrial metals prices
Notebooks - Contains example notebooks for SISO, MISO and MIMO regression
Results/Pths - Contains saved model weights
Results/Pickles - Contains saved deeplearning objects
Results/Plots - Contains images of predictions and training/val losses
Continuous integration best practices has been utilized, using Travis CL. With the tests methodology used being unit testing written deveoped using the Pytest library.
Relevant Author and Course Information
Author: Oliver Boom Github: OliverJBoom CID: 01593306
This collection of tools was built as part of the Applied Computational Science & Engineering MSc, completed at Imperial College London. It forms a composite part of the Independent Research Project (Module Code: ASCE9) and was conducted under the supervision of Dr Stephen Neethling. This project is also understaken in partnership with Commodities AI (ChAI), under the supervision of Dr Tristan Fletcher.
With the exception of parts of the ChaiDB class (the init, get_instrument_data, close_db_connection and get_list_datascope_instruments functions), all of the work contained within this repository is my own.
Foresight is licensed under the MIT license. See LICENSE.
1 Pytorch is too heavy a dependency for Read the Docs Docker containers. And so requires mocking when passing through the Sphinx autodocumentation. However, inheritance from mocked classes is not supported. It is a known issue in Read the Docs.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size ForesightPy-1.0.4.tar.gz (17.3 kB)||File type Source||Python version None||Upload date||Hashes View hashes|