All Projects → ArthurBernard → Fynance

ArthurBernard / Fynance

Licence: MIT license
Python and Cython scripts of machine learning, econometrics and statistical tools designed for finance.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Fynance

Strategems.jl
Quantitative systematic trading strategy development and backtesting in Julia
Stars: ✭ 106 (+430%)
Mutual labels:  finance, backtest
Xalpha
基金投资管理回测引擎
Stars: ✭ 683 (+3315%)
Mutual labels:  finance, backtest
Rqalpha
A extendable, replaceable Python algorithmic backtest && trading framework supporting multiple securities
Stars: ✭ 4,425 (+22025%)
Mutual labels:  finance, backtest
Trading Backtest
A stock backtesting engine written in modern Java. And a pairs trading (cointegration) strategy implementation using a bayesian kalman filter model
Stars: ✭ 247 (+1135%)
Mutual labels:  finance, backtest
yahoo-historical
Downloads historical EOD (end of day) prices from yahoo finance
Stars: ✭ 96 (+380%)
Mutual labels:  finance
mtss-gan
MTSS-GAN: Multivariate Time Series Simulation with Generative Adversarial Networks (by @firmai)
Stars: ✭ 77 (+285%)
Mutual labels:  finance
pandas-datareader-gdax
GDAX data for Pandas in the style of DataReader
Stars: ✭ 11 (-45%)
Mutual labels:  finance
cira
Cira algorithmic trading made easy. A Façade library for simpler interaction with alpaca-trade-API from Alpaca Markets.
Stars: ✭ 21 (+5%)
Mutual labels:  finance
pyEX
Python interface to IEX and IEX cloud APIs
Stars: ✭ 407 (+1935%)
Mutual labels:  finance
IBATS HuobiTrader old
【停止维护】新版本更新已迁移到 IBATS 项目组对应名称项目中。Auto Backtest Analysis Trade Framework 支持期货、数字货币进行量化交易,集成回测、分析、交易于一体。当前项目主要用于数字货币使用。
Stars: ✭ 21 (+5%)
Mutual labels:  backtest
nubank-dotnet
Unofficial Nubank Api client for .Net
Stars: ✭ 23 (+15%)
Mutual labels:  finance
binance-downloader
Python tool to download Binance Candlestick (k-line) data from REST API
Stars: ✭ 44 (+120%)
Mutual labels:  backtest
market risk gan tensorflow
Using Bidirectional Generative Adversarial Networks to estimate Value-at-Risk for Market Risk Management using TensorFlow.
Stars: ✭ 63 (+215%)
Mutual labels:  finance
bankster
Money Creation Made Easy
Stars: ✭ 30 (+50%)
Mutual labels:  finance
scan
DeFi Scan, everything one-stop location for DeFi Blockchain. Powered by jellyfish & ocean network.
Stars: ✭ 31 (+55%)
Mutual labels:  finance
app-ui
DEUS app front-end
Stars: ✭ 20 (+0%)
Mutual labels:  finance
moolah-old
The source code for the original version of Moolah
Stars: ✭ 32 (+60%)
Mutual labels:  finance
Mida
The open-source and cross-platform trading framework
Stars: ✭ 263 (+1215%)
Mutual labels:  finance
Scrape-Finance-Data
My code for scraping financial data in Vietnam
Stars: ✭ 13 (-35%)
Mutual labels:  finance
Block Codes
This depository uses SEC EDGAR data in Schedule 13D and Schedule 13G data to find all positions above 5% in all US stocks between 1994 and 2018.
Stars: ✭ 55 (+175%)
Mutual labels:  finance

Fynance - Machine learning tools designed for finance

PyPI - Python Version PyPI Status Build Status license Downloads Documentation Status Language grade: Python

Fynance is Python (and Cython) package, it provides machine learning, econometric and statistical tools designed for financial analysis and backtest of trading strategy. The documentation is available with some examples of the use of functions and objects.

Currently the project is always at a beta level. Some parts of the project can be considered as stable, such that fynance.features (this subpackage is already coded in Cython to be time-efficient), fynance.algorithms.allocation (this subpackage seems stable but have to be cleaned and write in Cython), and the other subpackages are always in progress (subject to deep modifications).

Presentation

The fynance package contains currently five subpackages:

  • Algorithms (fynance.algorithms) contains:

    • Portfolio allocations (e.g. ERC, HRP, IVP, MDP, MVP, etc.).
    • Rolling objects for algorithms (e.g. rolling_allocation, etc.).
  • Backtesting objects (fynance.backtest) contains:

    • Module to plot profit and loss, and measure of performance.
  • Feature tools (fynance.features) contains:

    • Financial indicators (e.g. bollinger_band, cci, hma, macd_hist, macd_line, rsi, etc.).
    • Statistical momentums (e.g. sma, ema, wma, smstd, emstd wmstd, etc.).
    • Metrics (e.g. annual_return, annual_volatility, calmar, diversified_ratio, mdd, sharpe, z_score, etc.).
    • Scale (e.g. Scale object, normalize, standardize, roll_normalize, roll_standardize, etc.).
    • Rolling functions (e.g. roll_min, roll_max).
  • Time-series models (fynance.models) contains:

    • Econometric models (e.g. MA, ARMA, ARMA_GARCH and ARMAX_GARCH, etc.).
    • Neural network models with PyTorch (e.g. MultiLayerPerceptron, etc.).
    • Rolling objects for models, currently work only with neural network models (e.g. _RollingBasis, RollMultiLayerPerceptron, etc.).
  • Neural networks (fynance.neural_networks) with Keras (backend Tensorflow or Theano) contains:

    • Rolling neural network models.

Please refer you to the documentation to see more details on different tools available in fynance package. Documentation contains some descriptions and examples for functions, classes and methods.

Installation

From PyPI

$ pip install fynance

From source (GitHub)

If you want to compile fynance package from cython files you must set USE_CYTHON=True in setup.py file. Otherwise set it to USE_CYTHON=False. By default USE_CYTHON='auto'.

$ git clone https://github.com/ArthurBernard/Fynance.git    
$ cd Fynance   
$ python setup.py build_ext --inplace    
$ python setup.py install --user   

Demo

  • Backtest (performance, drawdown and rolling sharpe ratio) of a trading strategy did with a rolling neural network (see Notebooks/Exemple_Rolling_NeuralNetwork.ipynb for more details):

backtest_RollNeuralNet

  • Loss functions and performances (trading strategy) of five rolling neural networks on the training and testing period (see Notebooks/Exemple_Rolling_NeuralNetwork.ipynb for more details):

loss_RollNeuralNet

Package not achieved, always in progress. All advice is welcome.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].