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
The Timescale NFT Starter Kit is a step-by-step guide to get up and running with collecting, storing, analyzing and visualizing NFT data from OpenSea, using PostgreSQL and TimescaleDB.

Timescale NFT Starter Kit The Timescale NFT Starter Kit is a step-by-step guide to get up and running with collecting, storing, analyzing and visualiz

Timescale 102 Dec 24, 2022
Plot and save the ground truth and predicted results of human 3.6 M and CMU mocap dataset.

Visualization-of-Human3.6M-Dataset Plot and save the ground truth and predicted results of human 3.6 M and CMU mocap dataset. human-motion-prediction

Gaurav Kumar Yadav 5 Nov 18, 2022
Debugging, monitoring and visualization for Python Machine Learning and Data Science

Welcome to TensorWatch TensorWatch is a debugging and visualization tool designed for data science, deep learning and reinforcement learning from Micr

Microsoft 3.3k Dec 27, 2022
Visualize and compare datasets, target values and associations, with one line of code.

In-depth EDA (target analysis, comparison, feature analysis, correlation) in two lines of code! Sweetviz is an open-source Python library that generat

Francois Bertrand 2.3k Jan 5, 2023
Visualize and compare datasets, target values and associations, with one line of code.

In-depth EDA (target analysis, comparison, feature analysis, correlation) in two lines of code! Sweetviz is an open-source Python library that generat

Francois Bertrand 1.2k Feb 18, 2021
Smoking Simulation is an app to simulate the spreading of smokers and non-smokers, their interactions and population during certain amount of time.

Smoking Simulation is an app to simulate the spreading of smokers and non-smokers, their interactions and population during certain

Bohdan Ruban 5 Nov 8, 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 7, 2023
This package creates clean and beautiful matplotlib plots that work on light and dark backgrounds

This package creates clean and beautiful matplotlib plots that work on light and dark backgrounds. Inspired by the work of Edward Tufte.

Nico Schlömer 205 Jan 7, 2023
Python module for drawing and rendering beautiful atoms and molecules using Blender.

Batoms is a Python package for editing and rendering atoms and molecules objects using blender. A Python interface that allows for automating workflows.

Xing Wang 1 Jul 6, 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
China and India Population and GDP Visualization

China and India Population and GDP Visualization Historical Population Comparison between India and China This graph shows the population data of Indi

Nicolas De Mello 10 Oct 27, 2021
Dipto Chakrabarty 7 Sep 6, 2022
Exploratory analysis and data visualization of aircraft accidents and incidents in Brazil.

Exploring aircraft accidents in Brazil Occurrencies with aircraft in Brazil are investigated by the Center for Investigation and Prevention of Aircraf

Augusto Herrmann 5 Dec 14, 2021
Python scripts for plotting audiograms and related data from Interacoustics Equinox audiometer and Otoaccess software.

audiometry Python scripts for plotting audiograms and related data from Interacoustics Equinox 2.0 audiometer and Otoaccess software. Maybe similar sc

Hamilton Lab at UT Austin 2 Jun 15, 2022
Analysis and plotting for motor/prop/ESC characterization, thrust vs RPM and torque vs thrust

esc_test This is a Python package used to plot and analyze data collected for the purpose of characterizing a particular propeller, motor, and ESC con

Alex Spitzer 1 Dec 28, 2021
Farhad Davaripour, Ph.D. 1 Jan 5, 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
Fast data visualization and GUI tools for scientific / engineering applications

PyQtGraph A pure-Python graphics library for PyQt5/PyQt6/PySide2/PySide6 Copyright 2020 Luke Campagnola, University of North Carolina at Chapel Hill h

pyqtgraph 3.1k Jan 8, 2023
Tools for writing, submitting, debugging, and monitoring Storm topologies in pure Python

Petrel Tools for writing, submitting, debugging, and monitoring Storm topologies in pure Python. NOTE: The base Storm package provides storm.py, which

AirSage 247 Dec 18, 2021