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
Shaded 😎 quantile plots

shadyquant 😎 This python package allows you to quantile and plot lines where you have multiple samples, typically for visualizing uncertainty. Your d

Mehrad Ansari 13 Sep 29, 2022
Create matplotlib visualizations from the command-line

MatplotCLI Create matplotlib visualizations from the command-line MatplotCLI is a simple utility to quickly create plots from the command-line, levera

Daniel Moura 46 Dec 16, 2022
Implementation of SOMs (Self-Organizing Maps) with neighborhood-based map topologies.

py-self-organizing-maps Simple implementation of self-organizing maps (SOMs) A SOM is an unsupervised method for learning a mapping from a discrete ne

Jonas Grebe 6 Nov 22, 2022
Schema validation just got Pythonic

Schema validation just got Pythonic schema is a library for validating Python data structures, such as those obtained from config-files, forms, extern

Vladimir Keleshev 2.7k Jan 06, 2023
Create SVG drawings from vector geodata files (SHP, geojson, etc).

SVGIS Create SVG drawings from vector geodata files (SHP, geojson, etc). SVGIS is great for: creating small multiples, combining lots of datasets in a

Neil Freeman 78 Dec 09, 2022
Practical-statistics-for-data-scientists - Code repository for O'Reilly book

Code repository Practical Statistics for Data Scientists: 50+ Essential Concepts Using R and Python by Peter Bruce, Andrew Bruce, and Peter Gedeck Pub

1.7k Jan 04, 2023
Create a visualization for Trump's Tweeted Words Using Python

Data Trump's Tweeted Words This plot illustrates twitter word occurences. We already did the coding I needed for this plot, so I was very inspired to

7 Mar 27, 2022
Material for dataviz course at university of Bordeaux

Material for dataviz course at university of Bordeaux

Nicolas P. Rougier 50 Jul 17, 2022
Custom Plotly Dash components based on Mantine React Components library

Dash Mantine Components Dash Mantine Components is a Dash component library based on Mantine React Components Library. It makes it easier to create go

Snehil Vijay 239 Jan 08, 2023
Rockstar - Makes you a Rockstar C++ Programmer in 2 minutes

Rockstar Rockstar is one amazing library, which will make you a Rockstar Programmer in just 2 minutes. In last decade, people learned C++ in 21 days.

4k Jan 05, 2023
Simple Python interface for Graphviz

Simple Python interface for Graphviz

Sebastian Bank 1.3k Dec 26, 2022
HW 02 for CS40 - matplotlib practice

HW 02 for CS40 - matplotlib practice project instructions https://github.com/mikeizbicki/cmc-csci040/tree/2021fall/hw_02 Drake Lyric Analysis Bar Char

13 Oct 27, 2021
Data-FX is an addon for Blender (2.9) that allows for the visualization of data with different charts

Data-FX Data-FX is an addon for Blender (2.9) that allows for the visualization of data with different charts Currently, there are only 2 chart option

Landon Ferguson 20 Nov 21, 2022
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
With Holoviews, your data visualizes itself.

HoloViews Stop plotting your data - annotate your data and let it visualize itself. HoloViews is an open-source Python library designed to make data a

HoloViz 2.3k Jan 04, 2023
Streaming pivot visualization via WebAssembly

Perspective is an interactive visualization component for large, real-time datasets. Originally developed for J.P. Morgan's trading business, Perspect

The Fintech Open Source Foundation (www.finos.org) 5.1k Dec 27, 2022
Python wrapper for Synoptic Data API. Retrieve data from thousands of mesonet stations and networks. Returns JSON from Synoptic as Pandas DataFrame

☁ Synoptic API for Python (unofficial) The Synoptic Mesonet API (formerly MesoWest) gives you access to real-time and historical surface-based weather

Brian Blaylock 23 Jan 06, 2023
A high-level plotting API for pandas, dask, xarray, and networkx built on HoloViews

hvPlot A high-level plotting API for the PyData ecosystem built on HoloViews. Build Status Coverage Latest dev release Latest release Docs What is it?

HoloViz 694 Jan 04, 2023
Attractors is a package for simulation and visualization of strange attractors.

attractors Attractors is a package for simulation and visualization of strange attractors. Installation The simplest way to install the module is via

Vignesh M 45 Jul 31, 2022
A simple python tool for explore your object detection dataset

A simple tool for explore your object detection dataset. The goal of this library is to provide simple and intuitive visualizations from your dataset and automatically find the best parameters for ge

GRADIANT - Centro Tecnolóxico de Telecomunicacións de Galicia 142 Dec 25, 2022