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
Customizing Visual Styles in Plotly

Customizing Visual Styles in Plotly Code for a workshop originally developed for an Unconference session during the Outlier Conference hosted by Data

Data Design Dimension 9 Aug 03, 2022
Massively parallel self-organizing maps: accelerate training on multicore CPUs, GPUs, and clusters

Somoclu Somoclu is a massively parallel implementation of self-organizing maps. It exploits multicore CPUs, it is able to rely on MPI for distributing

Peter Wittek 239 Nov 10, 2022
A gui application to visualize various sorting algorithms using pure python.

Sorting Algorithm Visualizer A gui application to visualize various sorting algorithms using pure python. Language : Python 3 Libraries required Tkint

Rajarshi Banerjee 19 Nov 30, 2022
This is a small program that prints a user friendly, visual representation, of your current bsp tree

bspcq, q for query A bspc analyzer (utility for bspwm) This is a small program that prints a user friendly, visual representation, of your current bsp

nedia 9 Apr 24, 2022
Open-source demos hosted on Dash Gallery

Dash Sample Apps This repository hosts the code for over 100 open-source Dash apps written in Python or R. They can serve as a starting point for your

Plotly 2.7k Jan 07, 2023
Lumen provides a framework for visual analytics, which allows users to build data-driven dashboards from a simple yaml specification

Lumen project provides a framework for visual analytics, which allows users to build data-driven dashboards from a simple yaml specification

HoloViz 120 Jan 04, 2023
Visualize tensors in a plain Python REPL using Sparklines

Visualize tensors in a plain Python REPL using Sparklines

Shawn Presser 43 Sep 03, 2022
Python package that generates hardware pinout diagrams as SVG images

PinOut A Python package that generates hardware pinout diagrams as SVG images. The package is designed to be quite flexible and works well for general

336 Dec 20, 2022
NumPy and Pandas interface to Big Data

Blaze translates a subset of modified NumPy and Pandas-like syntax to databases and other computing systems. Blaze allows Python users a familiar inte

Blaze 3.1k Jan 01, 2023
Declarative statistical visualization library for Python

Altair http://altair-viz.github.io Altair is a declarative statistical visualization library for Python. With Altair, you can spend more time understa

Altair 8k Jan 05, 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
a python function to plot a geopandas dataframe

Pretty GeoDataFrame A minimum python function (~60 lines) to draw pretty geodataframe. Based on matplotlib, shapely, descartes. Installation just use

haoming 27 Dec 05, 2022
Data Analysis: Data Visualization of Airlines

Data Analysis: Data Visualization of Airlines Anderson Cruz | London-UK | Linkedin | Nowa Capital Project: Traffic Airlines Airline Reporting Carrier

Anderson Cruz 1 Feb 10, 2022
100 Days of Code The Complete Python Pro Bootcamp for 2022

100-Day-With-Python 100 Days of Code - The Complete Python Pro Bootcamp for 2022. In this course, I spend with python language over 100 days, and I up

Rajdip Das 8 Jun 22, 2022
Scientific Visualization: Python + Matplotlib

An open access book on scientific visualization using python and matplotlib

Nicolas P. Rougier 8.6k Dec 31, 2022
Param: Make your Python code clearer and more reliable by declaring Parameters

Param Param is a library providing Parameters: Python attributes extended to have features such as type and range checking, dynamically generated valu

HoloViz 304 Jan 07, 2023
A Python function that makes flower plots.

Flower plot A Python 3.9+ function that makes flower plots. Installation This package requires at least Python 3.9. pip install

Thomas Roder 4 Jun 12, 2022
A Python package for caclulations and visualizations in geological sciences.

geo_calcs A Python package for caclulations and visualizations in geological sciences. Free software: MIT license Documentation: https://geo-calcs.rea

Drew Heasman 1 Jul 12, 2022
eoplatform is a Python package that aims to simplify Remote Sensing Earth Observation by providing actionable information on a wide swath of RS platforms and provide a simple API for downloading and visualizing RS imagery

An Earth Observation Platform Earth Observation made easy. Report Bug | Request Feature About eoplatform is a Python package that aims to simplify Rem

Matthew Tralka 4 Aug 11, 2022
web application for flight log analysis & review

Flight Review This is a web application for flight log analysis. It allows users to upload ULog flight logs, and analyze them through the browser. It

PX4 Drone Autopilot 145 Dec 20, 2022