Git Product home page Git Product logo

mlfinlab's Introduction



Machine Learning Financial Laboratory (mlfinlab)

Build Status codecov pylint Score Documentation Status

PyPi Downloads Python

MLFinLab is an open-source* package based on the research of Dr. Marcos Lopez de Prado (QuantResearch.org) in his new books Advances in Financial Machine Learning, Machine Learning for Asset Managers, as well as various implementations from the Journal of Financial Data Science. This implementation started out as a spring board for a research project in the Masters in Financial Engineering programme at WorldQuant University and has grown into a mini research group called Hudson and Thames Quantitative Research (not affiliated with the university).

The following is the online documentation for the package: read-the-docs

Sponsors and Donating


A special thank you to our sponsors! It is because of your contributions that we are able to continue the development of academic research for open source. If you would like to become a sponsor and help support our research, please sign up on Patreon.

Platinum Sponsor:

Gold Sponsors:

Supporter Sponsors:


Getting Started

Recommended versions:

  • Anaconda 3
  • Python 3.6

Installation for users

The package can be installed from the PyPi index via the console:

  1. Launch the terminal and run: pip install mlfinlab

Installation for developers

Clone the package repo to your local machine then follow the steps below.

Installation on Mac OS X and Ubuntu Linux

  1. Make sure you install the latest version of the Anaconda 3 distribution. To do this you can follow the install and update instructions found on this link: https://www.anaconda.com/download/#mac
  2. Launch a terminal
  3. Create a New Conda Environment. From terminal: conda create -n <env name> python=3.6 anaconda accept all the requests to install.
  4. Now activate the environment with source activate <env name>.
  5. From Terminal: go to the directory where you have saved the file, example: cd Desktop/mlfinlab/.
  6. Install Python requirements, by running the command: pip install -r requirements.txt

Installation on Windows

  1. Download and install the latest version of Anaconda 3
  2. Launch Anaconda Navigator
  3. Click Environments, choose an environment name, select Python 3.6, and click Create
  4. Click Home, browse to your new environment, and click Install under Jupyter Notebook
  5. Launch Anaconda Prompt and activate the environment: conda activate <env name>
  6. From Anaconda Prompt: go to the directory where you have saved the file, example: cd Desktop/mlfinlab/.
  7. Install Python requirements, by running the command: pip install -r requirements.txt

How To Run Checks Locally

On your local machine open the terminal and cd into the working dir.

  1. Code style checks: ./pylint
  2. Unit tests: python -m unittest discover
  3. Code coverage: bash coverage

Contact us

We have recently opened access to our Slack channel to help form a community and encourage contributions.

Looking forward to hearing from you!

License

This project is licensed under an all rights reserved licence.

LICENSE.txt file for details.

mlfinlab's People

Contributors

jackal08 avatar proskurin avatar aditya1702 avatar panpip avatar kingfischer16 avatar imcu avatar ashuwemba avatar artem-matiash avatar mislavsag avatar globophobe avatar cristobalmackenzie avatar bukosabino avatar jackbrady avatar wanabro avatar

Stargazers

Mikolaj Pabiszczak avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.