30 open-source projects similar to matplotlib/mplfinance, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Mplfinance alternative.
react-stockcharts is a financial charting library built with React and D3 for visualizing market price data. It provides a system for rendering stock charts and candlestick visualizations to represent market movement. The library functions as a technical analysis tool that computes and overlays mathematical trading indicators on price charts. It includes an interactive interface for navigating financial data through zooming, panning, and the addition of manual geometric annotations. The project covers financial data visualization, market price tracking, and the creation of interactive tradin
QuantStats is an open-source Python library that calculates risk and return metrics from a portfolio return series and generates comprehensive HTML tear sheets. It computes dozens of financial statistics—including Sharpe ratio, drawdown, and volatility—in a single pass over the input data, using vectorized pandas operations for efficiency. The library distinguishes itself by combining portfolio performance analysis with Monte Carlo simulation, which models thousands of random return paths to estimate the probability of reaching financial targets or hitting loss thresholds. It produces self-co
This project is a Python wrapper for the Lightweight Charts library, designed to render interactive, browser-based financial visualizations. It serves as a framework for building custom financial dashboards and interfaces that integrate live market feeds and historical data series. The library enables the construction of complex layouts by combining multi-pane charts, watchlists, and order entry tables into a single unified workspace. It supports real-time market monitoring by streaming live tick or bar data directly into active visualizations, allowing for incremental updates without requiri
ApexCharts is a comprehensive JavaScript charting library designed for building interactive, responsive, and data-driven visualizations within web applications. It functions as a versatile data visualization framework that supports a wide range of chart types, including categorical, statistical, and financial plots, enabling developers to construct complex dashboards and real-time monitoring interfaces. The library distinguishes itself through a deep commitment to accessibility and high-performance interactivity. It provides built-in support for keyboard navigation, screen readers, and high-c
billboard.js is a JavaScript charting library built on D3.js that renders interactive data visualizations from a single declarative configuration object. It supports a wide range of chart types including bar, line, pie, scatter, area, spline, step, candlestick, funnel, gauge, heatmap, radar, polar, treemap, bubble, donut, and sparkline charts, and can overlay multiple chart types within a single visualization. The library offers an opt-in Canvas rendering mode for improved performance with large datasets and high-density axis displays, alongside its standard SVG-based rendering. The library d
pyalgotrade is a Python algorithmic trading library designed for developing, backtesting, and executing automated trading strategies. It provides a comprehensive framework for financial strategy backtesting, a technical analysis library for computing mathematical indicators, and connectors for cryptocurrency exchange integration. The project distinguishes itself by supporting sentiment-based trading through the integration of real-time social media feeds and keyword streams. It features a quantitative trading visualization tool for plotting price action and portfolio equity curves, along with
ScottPlot is a cross-platform, high-performance charting library for .NET that renders interactive plots across desktop and web GUI frameworks including Windows Forms, WPF, MAUI, Avalonia, Blazor, and WinUI. It provides an optimized rendering engine capable of displaying millions of data points with interactive pan, zoom, and live data streaming, while also supporting image export to formats like PNG and SVG for file output, cloud applications, and notebooks. The library distinguishes itself through a comprehensive set of chart types including scatter, line, bar, pie, heatmap, financial, rada
Plotnine is a data visualization library for Python based on the Grammar of Graphics. It serves as a declarative statistical plotting framework and multi-panel plotting engine, allowing users to create complex charts by mapping data variables to visual properties such as position, color, and size. The project is distinguished by its use of a layered composition model and a statistical transformation engine that performs aggregations and computations before rendering visuals. It features a comprehensive system for multi-panel faceting, which enables the splitting of a single visualization into
Alphalens is a quantitative alpha factor analysis library designed to measure the predictive power of financial factors. It serves as a computational toolset for processing financial time series and calculating performance metrics to evaluate quantitative trading hypotheses. The library distinguishes itself through the use of quantile-based data binning to analyze return distributions across different factor strength levels. It aligns historical alpha signals with forward-looking price changes to isolate predictive effects and transforms these metrics into heatmaps and time-series charts for
Backtrader is a Python framework designed for the development, backtesting, and live execution of algorithmic trading strategies. It provides a comprehensive environment for quantitative finance, allowing users to simulate trading logic against historical market data or connect directly to brokerage platforms for automated real-time trading. The project distinguishes itself through a unified event-driven architecture that treats backtesting and live trading with the same API. This consistency is supported by a flexible data-feed abstraction layer that normalizes diverse financial sources, ena
ScrollableGraphView is a Swift data visualization library and iOS plotting framework used to render discrete numerical datasets as interactive graphs. It provides a scrollable user interface component that visualizes data points using a coordinate system with configurable layouts and styling. The framework is characterized by its adaptive graph scaling, which automatically adjusts the vertical axis to fit the visible data points as the user scrolls. It supports real-time data rendering, allowing graph views to update instantly as underlying datasets change through animated transitions. The l
dtale is a web-based interactive grid and visualizer for pandas dataframes, designed as an exploratory data analysis tool. It provides a browser-based interface for analyzing tabular data structures, allowing users to calculate statistics, detect outliers, and compute correlations without writing manual code. The project functions as an embedded data viewer that can be integrated into web applications via iframes or custom routes, with specific support for Django, Flask, and Streamlit. It enables the exploration of datasets through a combination of an interactive data grid and a data visualiz
This C++ data visualization library is a scientific plotting framework used to create 2D and 3D charts, network graphs, and geographic maps. It operates as a multi-backend graphics library, decoupling high-level plotting logic from low-level rendering engines to support various output backends. The project distinguishes itself with a dual-interface API, providing both a global functional interface for rapid prototyping and an object-oriented interface for precise control. It features a component-based layout engine for managing tiled grids and subplots, alongside a layered plot state that all
Lightweight Charts is a specialized library for rendering interactive time-series financial data visualizations within web applications. It provides a high-performance, responsive component designed to display historical and live market trends through various graphical formats, including candlesticks, histograms, and line series. The library distinguishes itself through a canvas-based rendering engine that decouples visual representation from raw data, enabling efficient updates and real-time monitoring of large datasets. It includes built-in support for accessibility, ensuring that interacti
SciencePlots is a Matplotlib style library and scientific plotting framework designed to automate the formatting of figures for academic journals and professional scientific publications. It provides a collection of visual presets and configuration rules for academic typography, layout, and resolution. The project features curated color-blind accessible palettes and figure formatters specifically designed to meet the strict submission standards of academic publishers. It includes specialized tools for professional figure styling and the rendering of non-Latin scripts for multilingual support.
VectorBT is a vectorized trading strategy backtesting framework that simulates thousands of strategy configurations in a single pass over historical price data. It operates as a parameter optimization engine, a portfolio performance analyzer, a technical indicator calculator, and a financial data fetcher, all built around a DataFrame-centric data model that uses NumPy broadcasting for signal alignment and compiled code acceleration for performance. The framework distinguishes itself through its ability to run large-scale parameter sweeps by constructing every combination of strategy parameter
Hikyuu is a quantitative trading framework designed for developing, backtesting, and executing systematic trading strategies. It functions as a high-speed system that combines a financial time-series library, a multi-factor analysis tool, and a quantitative backtesting engine to support comprehensive trading research. The framework is distinguished by its high-speed computing core, which utilizes multi-threaded execution to process large volumes of market data for technical indicator generation. It supports a modular strategy composition model where signal, risk, and fund management component
This is a pandas-based technical analysis library and financial feature engineering tool. It serves as a vectorized indicator calculator that transforms raw price and volume data into derived metrics for time series analysis. The library uses a NumPy-based engine to perform mathematical operations across entire arrays, avoiding iterative loops to maintain high performance. It organizes technical indicators into a modular class hierarchy with a consistent interface, allowing for bulk feature generation and the direct appending of results as new columns to a pandas DataFrame. The system covers
OpenBBTerminal is a Python financial data platform and command line interface designed for aggregating and analyzing market data from diverse APIs. It serves as a quantitative analysis tool for processing stock, crypto, and derivative datasets to identify market trends and build investment strategies. The project utilizes a pluggable financial API framework with an adapter-based architecture, allowing external financial data providers to be integrated as independent modules. This system standardizes information from public and proprietary sources into a unified layer to support cross-asset an
fl_chart is a data visualization library and UI component framework for Flutter. It provides a system of reusable graphical widgets for creating interactive, customizable quantitative data visualizations. The framework supports a variety of chart types, including line, bar, pie, donut, scatter, radar, and candlestick views. It allows for the creation of complex visualizations such as layered data segments and financial charts. The library includes capabilities for interactivity and visual refinement, such as touch event handling, data tooltips, and state animations. It also provides tools fo
jupyter-themes is a Jupyter Notebook theme manager and CSS interface customizer. It provides a command line tool to apply custom color schemes, fonts, and layout styles to notebook environments. The project includes a data visualization styling tool that synchronizes the aesthetic properties and color schemes of plotting libraries with the active interface theme. This ensures that data charts and figures remain visually consistent with the overall workspace theme.
This is an interactive notebook-based course that teaches machine learning from Python fundamentals through deep learning and natural language processing. It uses real datasets and multiple frameworks within a structured, hands-on curriculum that combines concise explanations with executable code cells, built-in datasets, and embedded exercise checkpoints. Learning progresses through data preparation and exploration, classical machine learning workflows, computer vision with convolutional neural networks, and natural language processing with deep learning, all delivered as a cohesive progressi
Vizro is a low-code Python framework for building production-ready data visualization applications. It functions as a UI orchestrator that allows users to define multi-page analytical dashboards through structured configurations in Python, YAML, or JSON, reducing the need for extensive frontend engineering. The project distinguishes itself through generative AI integration, utilizing a model context protocol server to translate natural language descriptions into validated dashboard configurations, charts, and layouts. It also features a decoupled data cataloging system that separates data sou
Vditor is a browser-based Markdown editor and rendering engine that supports multiple editing interfaces, including a visual rich-text experience, instant rendering, and a traditional side-by-side split-view preview. It serves as an authoring tool for technical documentation and a component for web-based editor integration. The project is distinguished by its support for complex technical content, utilizing specialized rendering for mathematical formulas, flowcharts, sequence diagrams, and mind maps. It also functions as a collaborative document review tool, enabling users to attach anchored
This project is a D3.js data visualization tool and dynamic bar chart generator that converts historical ranking data from comma-separated values into animated visual timelines. It functions as a CSV ranking visualizer and time-series ranking dashboard to illustrate how the positions of different entities change over a period of time. The tool features automated sorting and ranking trend animations that transform static historical data into dynamic transitions. It includes customizable axis scaling, such as semi-logarithmic scales to handle extreme variances in data magnitudes, and dynamic co
This project is an automated trading and agentic workflow platform designed to orchestrate complex financial tasks through state-based graphs. It provides a comprehensive framework for building, deploying, and managing autonomous agents that execute multi-step analytical processes, monitor real-time market conditions, and perform high-speed trade execution. The platform distinguishes itself through a robust agentic plugin ecosystem that integrates directly with popular AI-powered development environments and command-line interfaces. It features a specialized financial analysis engine capable
btplotting provides plotting for backtests, optimization results and live data from backtrader.
Portfolio and risk analytics in Python
Riskfolio-Lib is a Python portfolio optimization library and convex risk management tool. It provides a framework for calculating optimal asset allocations using convex risk measures and mathematical programming solvers, supporting linear, quadratic, and semidefinite programming. The library features a hierarchical risk parity framework and financial asset clustering tools to group similar instruments and improve diversification. It includes a portfolio backtesting engine for simulating investment strategies using historical data and cross-validation. The system covers a broad range of quant
This project is a comprehensive educational curriculum designed to teach Python programming through the lens of data science and financial analysis. It provides a structured guide for learning how to process complex numerical information, build data models, and perform scientific computing tasks using standard industry libraries. The materials focus on practical applications, enabling users to develop skills in financial data analysis and interactive exploration. By working through these resources, learners gain experience in executing high-performance mathematical operations, transforming ra