Investment and risk technologies maintained by Fortitudo Technologies.

Overview

Fortitudo Technologies Open Source

This package allows you to freely explore open-source implementations of some of our fundamental technologies under the GNU General Public License, Version 3.

Fortitudo Technologies is a fintech company offering novel software solutions as well as quantitative and digitalization consultancy to the investment management industry. For more information, please visit our website.

Installation Instructions

Installation can be done via pip:

pip install fortitudo.tech

For best performance, we recommend that you install the package into a conda environment and let conda handle the installation of dependencies before installing the package using pip. You can do this by following these steps:

conda create -n fortitudo.tech python=3.9 scipy -y
conda activate fortitudo.tech
conda install -c conda-forge cvxopt=1.2.6 -y
pip install fortitudo.tech

Contributing

You are very welcome to contribute to this package by forking the github repository and creating pull requests. Pull requests should always be sent to the dev branch. We especially appreciate contributions in relation to packaging, e.g., making the package available on conda-forge or improving pip dependencies.

Using the conda environment specified in the requirements.yml file and located in the root directory is the easiest way to start contributing to the code.

The style guide mostly follows PEP 8, but it uses some important modifications that can be found in .vscode/settings.json. If you use Visual Studio Code, you can use these settings to make sure that your code follows the basic rules of the style guide. The most important modifications/additions are:

  1. We allow line length to be 99 characters for both code and docstrings,
  2. We allow the use of capital I as a variable,
  3. We use type hints introduced in PEP 484.

We generally follow naming conventions with descriptive variable and function names, but we often use short variable names for the very mathematical parts of the code to replicate the variables used in the references. We believe this makes it easier to link the code to the theory.

We encourage you to keep individual contributions small in addition to avoid imposing object-oriented design patterns. We are unlikely to accept contributions that use inheritance without exceptionally good reasons and encourage you to use composition instead.

Code of Conduct

We welcome feedback and bug reports, but we have very limited resources for support and feature requests.

If you experience bugs with some of the upstream packages, please report these directly to the maintainers of these packages.

Disclaimer

This package is completely separate from our proprietary solutions and therefore not representative of the functionality offered therein.

Comments
  • Bump certifi from 2022.9.24 to 2022.12.7

    Bump certifi from 2022.9.24 to 2022.12.7

    Bumps certifi from 2022.9.24 to 2022.12.7.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 4
  • CodeQL implementation

    CodeQL implementation

    A cron'ed , simple code analysis implementation by CodeQL to verify the integrity of the python project. A detailed summary is provided in the details for further analysis or rectification.

    opened by GNRain 4
  • v0.5

    v0.5

    • functions initial commit

    • cov and corr bug fixes

    • Examples updated to use the new functions

    • Removed esbonio from vscode settings

    • docs update

    • import refactor

    • docstring update

    • Added functions unit tests

    • Minor improvements

    • Requirements update

    • poetry update

    opened by antonvorobets 1
  • v0.4.2

    v0.4.2

    • Minor refactor of _dual_equality

    • Minor refactor of _hessian_equality

    • _dual_equality and entropy_pooling refactor

    • Test tol increase

    • Minor TNC improvements

    • Poetry update

    • Docs version update

    opened by antonvorobets 1
  • v0.4.1

    v0.4.1

    • requirements update

    • Minor tests refactor

    • Updated time series data with credit spreads

    • Updated time series example to include credit spreads

    • Poetry update

    • Docs update

    opened by antonvorobets 1
  • v0.4

    v0.4

    • Time series data and load_time_series function

    • European option pricing functionality

    • Renamed derivatives.py to option_pricing.py

    • docs update

    • Updated test_data to include time_series

    • Option pricing tests

    • Updated example names

    • Added time series example

    • Docs and README update

    • Minor examples updates

    • pyproject.toml update

    • poetry.lock update

    opened by antonvorobets 1
  • v0.3

    v0.3

    • Initial MeanVariance commit

    • Added mean-variance efficient frontier

    • Removed mean_scalar

    • Optimization refactor

    • Initial docs update

    • Removed CVaR init ValueError raises

    • Various docs updates

    • Added load_parameters function

    • Added tests for load_pnl and load_parameters

    • Data docs updates

    • poetry updates

    • Examples update

    • Docs and typo update

    opened by antonvorobets 1
Releases(v0.8.1)
Owner
Fortitudo Technologies
Fortitudo Technologies' open-source code will be made available through this organization profile.
Fortitudo Technologies
An application that allows you to design and test your own stock trading algorithms in an attempt to beat the market.

StockBot is a Python application for designing and testing your own daily stock trading algorithms. Installation Use the

Ryan Cullen 280 Dec 19, 2022
A streamlit component for bi-directional communication with bokeh plots.

Streamlit Bokeh Events A streamlit component for bi-directional communication with bokeh plots. Its just a workaround till streamlit team releases sup

Ashish Shukla 123 Dec 25, 2022
Rubrix is a free and open-source tool for exploring and iterating on data for artificial intelligence projects.

Open-source tool for exploring, labeling, and monitoring data for AI projects

Recognai 1.5k Jan 07, 2023
Domain Connectivity Analysis Tools to analyze aggregate connectivity patterns across a set of domains during security investigations

DomainCAT (Domain Connectivity Analysis Tool) Domain Connectivity Analysis Tool is used to analyze aggregate connectivity patterns across a set of dom

DomainTools 34 Dec 09, 2022
Monochromatic colorscheme for matplotlib with opinionated sensible default

Monochromatic colorscheme for matplotlib with opinionated sensible default If you need a simple monochromatic colorscheme for your matplotlib figures,

Aria Ghora Prabono 2 May 06, 2022
A TileDB backend for xarray.

TileDB-xarray This library provides a backend engine to xarray using the TileDB Storage Engine. Example usage: import xarray as xr dataset = xr.open_d

TileDB, Inc. 14 Jun 02, 2021
Tools for calculating and visualizing Elo-like ratings of MLB teams using Retosheet data

Overview This project uses historical baseball games data to calculate an Elo-like rating for MLB teams based on regular season match ups. The Elo rat

Lukas Owens 0 Aug 25, 2021
Apache Superset is a Data Visualization and Data Exploration Platform

Superset A modern, enterprise-ready business intelligence web application. Why Superset? | Supported Databases | Installation and Configuration | Rele

The Apache Software Foundation 50k Jan 06, 2023
Functions for easily making publication-quality figures with matplotlib.

Data-viz utils ๐Ÿ“ˆ Functions for data visualization in matplotlib ๐Ÿ“š API Can be installed using pip install dvu and then imported with import dvu. You

Chandan Singh 16 Sep 15, 2022
TensorDebugger (TDB) is a visual debugger for deep learning. It extends TensorFlow with breakpoints + real-time visualization of the data flowing through the computational graph

TensorDebugger (TDB) is a visual debugger for deep learning. It extends TensorFlow (Google's Deep Learning framework) with breakpoints + real-time visualization of the data flowing through the comput

Eric Jang 1.4k Dec 15, 2022
Make visual music sheets for thatskygame (graphical representations of the Sky keyboard)

sky-python-music-sheet-maker This program lets you make visual music sheets for Sky: Children of the Light. It will ask you a few questions, and does

21 Aug 26, 2022
Define fortify and autoplot functions to allow ggplot2 to handle some popular R packages.

ggfortify This package offers fortify and autoplot functions to allow automatic ggplot2 to visualize statistical result of popular R packages. Check o

Sinhrks 504 Dec 23, 2022
Make sankey, alluvial and sankey bump plots in ggplot

The goal of ggsankey is to make beautiful sankey, alluvial and sankey bump plots in ggplot2

David Sjoberg 156 Jan 03, 2023
This plugin plots the time you spent on a tag as a histogram.

This plugin plots the time you spent on a tag as a histogram.

Tom Dรถrr 7 Sep 09, 2022
Piglet-shaders - PoC of custom shaders for Piglet

Piglet custom shader PoC This is a PoC for compiling Piglet fragment shaders usi

6 Mar 10, 2022
Python package for hypergraph analysis and visualization.

The HyperNetX library provides classes and methods for the analysis and visualization of complex network data. HyperNetX uses data structures designed to represent set systems containing nested data

Pacific Northwest National Laboratory 304 Dec 27, 2022
A program that analyzes data from inertia measurement units installed in aircraft and generates g-exceedance curves.

A program that analyzes data from inertia measurement units installed in aircraft and generates g-exceedance curves.

Pooya 1 Dec 02, 2021
Library for exploring and validating machine learning data

TensorFlow Data Validation TensorFlow Data Validation (TFDV) is a library for exploring and validating machine learning data. It is designed to be hig

688 Jan 03, 2023
Simple implementation of Self Organizing Maps (SOMs) with rectangular and hexagonal grid topologies

py-self-organizing-map Simple implementation of Self Organizing Maps (SOMs) with rectangular and hexagonal grid topologies. A SOM is a simple unsuperv

Jonas Grebe 1 Feb 10, 2022
CPG represent!

CoolPandasGroup CPG represent! Arianna Brandon Enne Luan Tracie Project requirements: use Pandas to clean and format datasets use Jupyter Notebook to

Enne 3 Feb 07, 2022