High-performance TensorFlow library for quantitative finance.


TF Quant Finance: TensorFlow based Quant Finance Library

Build Status

Table of contents

  1. Introduction
  2. Installation
  3. TensorFlow training
  4. Development roadmap
  5. Examples
  6. Contributing
  7. Development
  8. Community
  9. Disclaimers
  10. License


This library provides high-performance components leveraging the hardware acceleration support and automatic differentiation of TensorFlow. The library will provide TensorFlow support for foundational mathematical methods, mid-level methods, and specific pricing models. The coverage is being expanded over the next few months.

The library is structured along three tiers:

  1. Foundational methods. Core mathematical methods - optimisation, interpolation, root finders, linear algebra, random and quasi-random number generation, etc.

  2. Mid-level methods. ODE & PDE solvers, Ito process framework, Diffusion Path Generators, Copula samplers etc.

  3. Pricing methods and other quant finance specific utilities. Specific Pricing models (e.g., Local Vol (LV), Stochastic Vol (SV), Stochastic Local Vol (SLV), Hull-White (HW)) and their calibration. Rate curve building, payoff descriptions, and schedule generation.

We aim for the library components to be easily accessible at each level. Each layer will be accompanied by many examples that can run independently of higher-level components.


The easiest way to get started with the library is via the pip package.

Note that the library requires Python 3.7 and Tensorflow >= 2.4.

First, please install the most recent version of TensorFlow by following the TensorFlow installation instructions. For example, you could install TensorFlow

pip3 install --upgrade tensorflow

Then run

pip3 install --upgrade tf-quant-finance

You maybe also have to use the option --user.

TensorFlow training

If you are not familiar with TensorFlow, an excellent place to get started is with the following self-study introduction to TensorFlow notebooks:

Development roadmap

We are working on expanding the coverage of the library. Areas under active development are:

  • Ito Processes: Framework for defining Ito processes. Includes methods for sampling paths from a process and for solving the associated backward Kolmogorov equation.
  • Implementation of the following specific processes/models:
    • Brownian Motion
    • Geometric Brownian Motion
    • Ornstein-Uhlenbeck
    • One-Factor Hull-White model
    • Heston model
    • Local volatility model.
    • Quadratic Local Vol model.
    • SABR model
  • Copulas: Support for defining and sampling from copulas.
  • Model Calibration:
    • Dupire local vol calibration.
    • SABR model calibration.
  • Rate curve fitting: Hagan-West algorithm for yield curve bootstrapping and the Monotone Convex interpolation scheme.
  • Support for dates, day-count conventions, holidays, etc.


See tf_quant_finance/examples/ for end-to-end examples. It includes tutorial notebooks such as:

The above links will open Jupyter Notebooks in Colab.


We're eager to collaborate with you! See CONTRIBUTING.md for a guide on how to contribute. This project adheres to TensorFlow's code of conduct. By participating, you are expected to uphold this code.


This section is for developers who want to contribute code to the library. If you are only interested in using the library, please follow the instructions in the Installation section.

Development dependencies

This library has the following dependencies:

  1. Bazel
  2. Python 3 (Bazel uses Python 3 by default)
  3. TensorFlow version >= 2.4
  4. TensorFlow Probability version between v0.11.0 and v0.12.1
  5. Numpy version 1.19.2 or higher
  6. Attrs
  7. Dataclasses (not needed if your Python version >= 3.7)

This library requires the Bazel build system. Please follow the Bazel installation instructions for your platform.

You can install TensorFlow and related dependencies using the pip3 install command:

pip3 install --upgrade tf-nightly tensorflow-probability==0.12.1 numpy==1.19.2 attrs dataclasses

Commonly used commands

Clone the GitHub repository:

git clone https://github.com/google/tf-quant-finance.git

After you run

cd tf_quant_finance

you can execute tests using the bazel test command. For example,

bazel test tf_quant_finance/math/random_ops/sobol:sobol_test

will run tests in sobol_test.py .

Tests run using Python version 3. Please make sure that you can run import tensorflow in the Python 3 shell. Otherwise, tests might fail.

Building a custom pip package

The following commands will build custom pip package from source and install it:

# sudo apt-get install bazel git python python-pip rsync # For Ubuntu.
git clone https://github.com/google/tf-quant-finance.git
cd tf-quant-finance
bazel build :build_pip_pkg
./bazel-bin/build_pip_pkg artifacts
pip install --user --upgrade artifacts/*.whl


  1. GitHub repository: Report bugs or make feature requests.

  2. TensorFlow Blog: Stay up to date on content from the TensorFlow team and best articles from the community.

  3. [email protected]: Open mailing list for discussion and questions of this library.

  4. TensorFlow Probability: This library will leverage methods from TensorFlow Probability (TFP).


Google does not officially support this product. This library is under active development, and interfaces may change at any time.


This library is licensed under the Apache 2 license (see LICENSE). This library uses Sobol primitive polynomials and initial direction numbers which are licensed under the BSD license.

  • Bjerksund-Stensland analytic approximation for American options

    Bjerksund-Stensland analytic approximation for American options

    Bjerksund-Stensland approximation is an alternative to the Baron-Adesi Whaley approximation for American options pricing formula under Black-Scholes.

    The module implementing this method should live under tf_quant_finance/volatility/american_option.py. It should support both puts and calls. Tests should be in american_option_test.py in the same folder.

    good first issue 
    opened by cyrilchim 34
  • XLA compilation error of a TARF payoff with MC

    XLA compilation error of a TARF payoff with MC

    I'm trying to replicate the TARF payoff from this paper. So far, i've been able to write a payoff that can be evaluated with MC and GPU, but i get an error with the XLA compilation. https://colab.research.google.com/github/arthurpham/google_colab/blob/7d5715c2b0f988c8d7d544fea0ff741e63272056/TARF_MC_Performance_TQF.ipynb I understand that the payoff code style might not be the best, but i wasn't able to find an example of a path-dependent payoff with MC. Any pointer would be helpful.



    InvalidArgumentError                      Traceback (most recent call last)
    <ipython-input-7-945d7282d2b1> in <module>()
          1 device = "/gpu:0"
          2 with tf.device(device):
    ----> 3     tarf_price = price_eu_options_xla(strikes, spot, sigma)
          4     print('price', tarf_price)
    1 frames
    /usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/execute.py in quick_execute(op_name, num_outputs, inputs, attrs, ctx, name)
         53     ctx.ensure_initialized()
         54     tensors = pywrap_tfe.TFE_Py_Execute(ctx._handle, device_name, op_name,
    ---> 55                                         inputs, attrs, num_outputs)
         56   except core._NotOkStatusException as e:
         57     if name is not None:
    InvalidArgumentError: Detected unsupported operations when trying to compile graph __inference_price_eu_options_9107[_XlaMustCompile=true,config_proto=6001324581131673121,executor_type=11160318154034397263] on XLA_GPU_JIT: TensorListReserve (No registered 'TensorListReserve' OpKernel for XLA_GPU_JIT devices compatible with node {{function_node __inference_while_fn_9086}}{{node while_init/TensorArrayV2_7}}
    	 (OpKernel was found, but attributes didn't match) Requested Attributes: element_dtype=DT_VARIANT, shape_type=DT_INT32){{function_node __inference_while_fn_9086}}{{node while_init/TensorArrayV2_7}}
    The op is created at: 
    File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
      "__main__", mod_spec)
    File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
      exec(code, run_globals)
    File "/usr/local/lib/python3.7/dist-packages/ipykernel_launcher.py", line 16, in <module>
    File "/usr/local/lib/python3.7/dist-packages/traitlets/config/application.py", line 846, in launch_instance
    File "/usr/local/lib/python3.7/dist-packages/ipykernel/kernelapp.py", line 499, in start
    File "/usr/local/lib/python3.7/dist-packages/tornado/platform/asyncio.py", line 132, in start
    File "/usr/lib/python3.7/asyncio/base_events.py", line 541, in run_forever
    File "/usr/lib/python3.7/asyncio/base_events.py", line 1786, in _run_once
    File "/usr/lib/python3.7/asyncio/events.py", line 88, in _run
      self._context.run(self._callback, *self._args)
    File "/usr/local/lib/python3.7/dist-packages/tornado/ioloop.py", line 758, in _run_callback
      ret = callback()
    File "/usr/local/lib/python3.7/dist-packages/tornado/stack_context.py", line 300, in null_wrapper
      return fn(*args, **kwargs)
    File "/usr/local/lib/python3.7/dist-packages/zmq/eventloop/zmqstream.py", line 536, in <lambda>
      self.io_loop.add_callback(lambda: self._handle_events(self.socket, 0))
    File "/usr/local/lib/python3.7/dist-packages/zmq/eventloop/zmqstream.py", line 452, in _handle_events
    File "/usr/local/lib/python3.7/dist-packages/zmq/eventloop/zmqstream.py", line 481, in _handle_recv
      self._run_callback(callback, msg)
    File "/usr/local/lib/python3.7/dist-packages/zmq/eventloop/zmqstream.py", line 431, in _run_callback
      callback(*args, **kwargs)
    File "/usr/local/lib/python3.7/dist-packages/tornado/stack_context.py", line 300, in null_wrapper
      return fn(*args, **kwargs)
    File "/usr/local/lib/python3.7/dist-packages/ipykernel/kernelbase.py", line 283, in dispatcher
      return self.dispatch_shell(stream, msg)
    File "/usr/local/lib/python3.7/dist-packages/ipykernel/kernelbase.py", line 233, in dispatch_shell
      handler(stream, idents, msg)
    File "/usr/local/lib/python3.7/dist-packages/ipykernel/kernelbase.py", line 399, in execute_request
      user_expressions, allow_stdin)
    File "/usr/local/lib/python3.7/dist-packages/ipykernel/ipkernel.py", line 208, in do_execute
      res = shell.run_cell(code, store_history=store_history, silent=silent)
    File "/usr/local/lib/python3.7/dist-packages/ipykernel/zmqshell.py", line 537, in run_cell
      return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)
    File "/usr/local/lib/python3.7/dist-packages/IPython/core/interactiveshell.py", line 2718, in run_cell
      interactivity=interactivity, compiler=compiler, result=result)
    File "/usr/local/lib/python3.7/dist-packages/IPython/core/interactiveshell.py", line 2822, in run_ast_nodes
      if self.run_code(code, result):
    File "/usr/local/lib/python3.7/dist-packages/IPython/core/interactiveshell.py", line 2882, in run_code
      exec(code_obj, self.user_global_ns, self.user_ns)
    File "<ipython-input-7-945d7282d2b1>", line 3, in <module>
      tarf_price = price_eu_options_xla(strikes, spot, sigma)
    File "<ipython-input-5-1d20baab715c>", line 89, in price_eu_options
      payoffs = tf.vectorized_map(my_function, reshaped_paths) [Op:__inference_price_eu_options_9107]
    opened by arthurpham 16
  • Pricing formulas for Barrier options under Black-Scholes

    Pricing formulas for Barrier options under Black-Scholes

    Formulas for pricing a Barrier option under Black-Scholes model is of interest. (See, e.g., Section 26.9 of Hull(2018), Options, Futures, and Other Derivatives, 9th edition).

    The module implementing this method should live under tf_quant_finance/volatility/barrier_option.py. It should support both puts (up-and-in put, down-and-out put) and calls (down-in call, up-and-out call). Tests should be in barrier_option_test.py in the same folder.

    good first issue 
    opened by cyrilchim 13
  • Swap curve fitting example

    Swap curve fitting example

    The change is to implement a jupyter notebook example for curve fitting. It covers

    • curve fitting of discount rates by OIS

    • curve fitting of discount rates by LIBOR fix, Eurodollar futures and swap rates

    cla: yes 
    opened by gavincyi 6
  • Bjerksund-Stensland 1993 option pricing model

    Bjerksund-Stensland 1993 option pricing model


    While the intent is to add both of the Bjerksund-Stensland option pricing models for american exercise options, this pull request is for the 1993 model, with the 2002 model to follow shortly after.


    The primary source used is the description of the 1993 model in the paper on the 2002 model here. Included in the paper are four tables with values for the 1993 model (referenced as "flat boundary approximation"). A test was run checking all of the values (source code can be provided upon request):

    Closed Form Valuation of American Options, 2002
    Table 1, pg. 9 - 1993 model
    Section 1, Calls:  [ 0.03  0.57  3.49 10.32 20.  ]  Puts:  [20.41 11.25  4.4   1.12  0.18]
    Section 2, Calls:  [ 0.03  0.57  3.46 10.29 20.  ]  Puts:  [20.22 11.14  4.35  1.11  0.18]
    Section 3, Calls:  [ 1.05  3.25  7.37 13.47 21.23]  Puts:  [21.44 13.91  8.27  4.52  2.29]
    Section 4, Calls:  [ 0.21  1.34  4.65 10.94 20.  ]  Puts:  [20.95 12.63  6.37  2.65  0.92]
    Table 2, pg. 10 - 1993 model
    Section 1, Calls:  [ 0.05  0.85  4.44 11.66 20.9 ]  Puts:  [20.   10.19  3.51  0.78  0.11]
    Section 2, Calls:  [ 0.05  0.84  4.4  11.55 20.69]  Puts:  [20.   10.17  3.49  0.77  0.11]
    Section 3, Calls:  [ 1.29  3.82  8.35 14.8  22.71]  Puts:  [20.53 12.91  7.42  3.93  1.93]
    Section 4, Calls:  [ 0.41  2.18  6.5  13.42 22.06]  Puts:  [20.   10.7   4.7   1.71  0.52]
    Table 3, pg. 11 - 1993 model
    Section 1, Puts:  [20.   10.01  3.16  0.65  0.09]
    Section 2, Puts:  [20.   10.    2.86  0.54  0.07]
    Section 3, Puts:  [20.28 12.48  7.04  3.66  1.77]
    Section 4, Puts:  [20.   10.24  4.11  1.37  0.39]
    Table 4, pg. 12 - 1993 model
    Section 1, Calls:  [ 2.3   4.71  8.44 13.74 20.85]  Puts:  [25.61 20.04 15.47 11.78  8.87]
    Section 2, Calls:  [ 3.95  7.2  11.64 17.24 23.93]  Puts:  [22.12 16.14 11.64  8.31  5.89]
    Section 3, Calls:  [16.75 22.25 28.31 34.84 41.77]  Puts:  [28.42 23.97 20.34 17.34 14.86]
    Section 4, Puts:  [20.   11.67  6.9   4.12  2.48]

    All of the values match, with the only exception being those in Table 4, Section 3. Confirming the values using online calculators, such as this one here, led to the conclusion that the values in Table 4, Section 3 are not correct - but I would appreciate the input of others.

    This PR is in draft status as I still need to add tests to american_option_test.py.

    cla: yes 
    opened by alembcke 5
  • American option price under Cox-Ross-Rubinstein

    American option price under Cox-Ross-Rubinstein

    Binomial options pricing models like Cox-Ross-Rubinstein have been widely used since they are able to handle a variety of conditions for which other models cannot easily be applied proving themselves to be more accurate, particularly for longer-dated options on securities with dividend payments.

    opened by brilhana 5
  • [DOCS] Remedy formula display in notebook

    [DOCS] Remedy formula display in notebook

    Remedy the incorrect display of a formula in an example notebook. (Line changing within the LaTeX codes refrains the formula from being displayed correctly.)

    cla: yes 
    opened by ZhiqingXiao 5
  • case-sensitive paths on a case-insensitive filesystem

    case-sensitive paths on a case-insensitive filesystem

    when cloning, the following warning pops up:

    warning: the following paths have collided (e.g. case-sensitive paths on a case-insensitive filesystem) and only one from the same colliding group is in the working tree:

    'api_docs/tf_quant_finance/datetime/Month.md' 'api_docs/tf_quant_finance/datetime/month.md'

    opened by jj2023 4
  • Month.md and month.md collide on case-insensitive filesystem

    Month.md and month.md collide on case-insensitive filesystem


    I have just cloned this project and find that Month.md and month.md in api_docs/tf_quant_finance/datetime/ collide on my macOS. I could not pull recent merges. The best solution is to reformat my local APFS filesystem. But I think reformatting filesystem seems not a good choice. I guess api_docs may be generated automatically. However, it would be nice if the api and the markdown file could change to another name. And it would benefit other developers who want to clone the project into their macOS filesystem.


    opened by luweizheng 4
  • Bjerksund-Stensland 2002 option pricing model

    Bjerksund-Stensland 2002 option pricing model

    This pull requests adds the Bjerksund-Stensland 2002 option pricing model, which closes #5.

    Tests are included which mirror the tables in the reference paper. Additional testing in both eager and deferred (graph) mode were conducted with visual inspection of the output of the code. All tests were successful.

    cla: yes 
    opened by alembcke 4
  • Standardize dividend argument in option models

    Standardize dividend argument in option models

    This pull request fixes #50.


    The argument for dividends across different option pricing models used two names when only one was needed. This pull request updates the files using continuous_dividends to instead use dividend_rates. This makes it easier for end-users to reuse code when using the different option pricing models.

    Explanation of Changes

    As requested in issue #50, deprecation decorators were used to alert users to the change in argument names. All argument names in the tf_quant_finance/black_scholes/ directory and sub-directories for continuous_dividends were changed to dividend_rates.


    Many of the methods changed start with the variadic argument (*), which caused test to fail as Bazel would not recognize that the deprecated argument continuous_dividends was in the argument list, causing an error. When the variadic argument was removed, tests completed successfully.

    cla: yes 
    opened by alembcke 4
  • The mailing-list is set to Invite Only

    The mailing-list is set to Invite Only

    Hi! The main page mentions: tf-quant-finance: Open mailing list for discussion and questions of this library. However, the group isn't findable and subscribing via email reveals its settings are "Invite Only". I would suggest to remedy this by either adjusting the settings or updating the info on the main page to remove the list. Thank you,

    opened by blais 0
  • Default constructor no longer available

    Default constructor no longer available

    As of QuantLib 1.28 the default constructor when calling ql.Thirty360() is no longer available in the underlying C++ library, and so a BondBasis must be supplied. Otherwise a TypeError will be thrown when executing these notebook cells:

    TypeError                                 Traceback (most recent call last)
    [<ipython-input-17-0acd484f2084>](https://localhost:8080/#) in <module>
         35 calculation_date = ql.Date(1, 1, 2010)
         36 maturity_date = ql.Date(1, 1, 2011)
    ---> 37 day_count = ql.Thirty360()
         38 calendar = ql.NullCalendar()
    [/usr/local/lib/python3.8/dist-packages/QuantLib/QuantLib.py](https://localhost:8080/#) in __init__(self, *args)
       3480     def __init__(self, *args):
    -> 3481         _QuantLib.Thirty360_swiginit(self, _QuantLib.new_Thirty360(*args))
       3482     __swig_destroy__ = _QuantLib.delete_Thirty360
    TypeError: Wrong number or type of arguments for overloaded function 'new_Thirty360'.
      Possible C/C++ prototypes are:
        QuantLib::Thirty360::Thirty360(QuantLib::Thirty360::Convention,Date const &)

    For details see: https://stackoverflow.com/a/74336038/1773216

    opened by natemurthy 1
  • Discrete geometric pricer under Heston vol

    Discrete geometric pricer under Heston vol

    Pricing discrete geometric asians under Heston volatility, using the method described by B. Kim, J. Kim, J. Kim & I. S. Wee in "A Recursive Method for Discretely Monitored Geometric Asian Option Prices"

    opened by jackgillett101 2
  • times grid bug (XLA)

    times grid bug (XLA)


    I noticed a problem with the time grid in euler_sample when XLA compilation (with dynamic shape for times) is used.



    Thank you

    opened by a17brah 1
  • Fair performance comparison with QuantLib

    Fair performance comparison with QuantLib

    Hi guys,

    In the "Monte Carlo via Euler Scheme" example you compare TF with QuantLib pricing and conclude that TF finance is x100 times faster(or more).

    I want to note that in QL you evolve 100 time steps of Log Normal process, but in TF you work in log space and only apply exp() at the end. I agree QL may not be very fast, but in this example you compare 100 exponents per path in QL to just 1 exponent in TF...

    Thank you!

    opened by DmitriGoloubentsev 9
  • v0.0.1-dev9(Sep 17, 2019)

    Release notes:

    • added example Colab "Introduction to TensorFlow Part 2 Debugging and Control Flow"
    • TF Quant Finance now requires TensorFlow >= 1.14 and TensorFlow Probability >= 0.7.0
    Source code(tar.gz)
    Source code(zip)
  • v0.0.1-dev8(Sep 13, 2019)

  • v0.0.1-dev7(Sep 12, 2019)

    Major Features and Improvements:

    • added optimization algorithms: BFGS, L-BFGS, conjugate gradient descent, Nelder-Mead;
    • added bond rate curve fitting using Hagan West interpolation;
    • added antithetic random type for sampling Multivariate Normal Distribution;
    • added several example Jupyter notebook example;
    • fixed a number of bugs.
    Source code(tar.gz)
    Source code(zip)
  • v0.0.1-dev6(Sep 6, 2019)

Google ❤️ Open Source
Q-Fin: A Python library for mathematical finance.

Q-Fin A Python library for mathematical finance. Installation https://pypi.org/project/QFin/ pip install qfin Bond Pricing Option Pricing Black-Schol

Roman Paolucci 247 Jan 1, 2023
Yahoo! Finance market data downloader (+faster Pandas Datareader)

Yahoo! Finance market data downloader Ever since Yahoo! finance decommissioned their historical data API, many programs that relied on it to stop work

Ran Aroussi 8.4k Jan 1, 2023
personal finance tracker, written in python 3 and using the wxPython GUI toolkit.

personal finance tracker, written in python 3 and using the wxPython GUI toolkit.

wenbin wu 23 Oct 30, 2022
'Personal Finance' is a project where people can manage and track their expenses

Personal Finance by Abhiram Rishi Pratitpati 'Personal Finance' is a project where people can manage and track their expenses. It is hard to keep trac

Abhiram Rishi Prattipati 1 Dec 21, 2021
Common financial risk and performance metrics. Used by zipline and pyfolio.

empyrical Common financial risk metrics. Table of Contents Installation Usage Support Contributing Testing Installation pip install empyrical Usage S

Quantopian, Inc. 1k Dec 26, 2022
Performance analysis of predictive (alpha) stock factors

Alphalens Alphalens is a Python Library for performance analysis of predictive (alpha) stock factors. Alphalens works great with the Zipline open sour

Quantopian, Inc. 2.5k Dec 28, 2022
Zipline, a Pythonic Algorithmic Trading Library

Zipline is a Pythonic algorithmic trading library. It is an event-driven system for backtesting. Zipline is currently used in production as the backte

Quantopian, Inc. 15.7k Jan 2, 2023
Technical Analysis Library using Pandas and Numpy

Technical Analysis Library in Python It is a Technical Analysis library useful to do feature engineering from financial time series datasets (Open, Cl

Darío López Padial 3.4k Jan 2, 2023
ffn - a financial function library for Python

ffn - Financial Functions for Python Alpha release - please let me know if you find any bugs! If you are looking for a full backtesting framework, ple

Philippe Morissette 1.4k Jan 1, 2023
An Algorithmic Trading Library for Crypto-Assets in Python

Service Master Develop CI Badge Catalyst is an algorithmic trading library for crypto-assets written in Python. It allows trading strategies to be eas

Enigma 2.4k Jan 5, 2023
Python library for backtesting trading strategies & analyzing financial markets (formerly pythalesians)

finmarketpy (formerly pythalesians) finmarketpy is a Python based library that enables you to analyze market data and also to backtest trading strateg

Cuemacro 3k Dec 30, 2022
Python Backtesting library for trading strategies

backtrader Yahoo API Note: [2018-11-16] After some testing it would seem that data downloads can be again relied upon over the web interface (or API v

DRo 9.8k Dec 30, 2022
Python Algorithmic Trading Library

PyAlgoTrade PyAlgoTrade is an event driven algorithmic trading Python library. Although the initial focus was on backtesting, paper trading is now pos

Gabriel Becedillas 3.9k Jan 1, 2023
Beibo is a Python library that uses several AI prediction models to predict stocks returns over a defined period of time.

Beibo is a Python library that uses several AI prediction models to predict stocks returns over a defined period of time.

Santosh 54 Dec 10, 2022
Indicator divergence library for python

Indicator divergence library This module aims to help to find bullish/bearish divergences (regular or hidden) between two indicators using argrelextre

null 8 Dec 13, 2022
Empyrial is a Python-based open-source quantitative investment library dedicated to financial institutions and retail investors

By Investors, For Investors. Want to read this in Chinese? Click here Empyrial is a Python-based open-source quantitative investment library dedicated

Santosh 640 Dec 31, 2022
Docker image with Uvicorn managed by Gunicorn for high-performance FastAPI web applications in Python 3.6 and above with performance auto-tuning. Optionally with Alpine Linux.

Supported tags and respective Dockerfile links python3.8, latest (Dockerfile) python3.7, (Dockerfile) python3.6 (Dockerfile) python3.8-slim (Dockerfil

Sebastián Ramírez 2.1k Dec 31, 2022
MRQy is a quality assurance and checking tool for quantitative assessment of magnetic resonance imaging (MRI) data.

Front-end View Backend View Table of Contents Description Prerequisites Running Basic Information Measurements User Interface Feedback and usage Descr

Center for Computational Imaging and Personalized Diagnostics 58 Dec 2, 2022