Python 各种数据源和数据分析工具
原文项目链接:
https://github.com/wilsonfreitas/awesome-quant#data-sources
Python
Numerical Libraries & Data Structures
- numpy - NumPy is the fundamental package for scientific computing with Python.
- scipy - SciPy (pronounced “Sigh Pie”) is a Python-based ecosystem of open-source software for mathematics, science, and engineering.
- pandas - pandas is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.
- quantdsl - Domain specific language for quantitative analytics in finance and trading.
- statistics - Builtin Python library for all basic statistical calculations.
- sympy - SymPy is a Python library for symbolic mathematics.
- pymc3 - Probabilistic Programming in Python: Bayesian Modeling and Probabilistic Machine Learning with Theano.
Financial Instruments and Pricing
- PyQL - QuantLib's Python port.
- pyfin - Basic options pricing in Python. [ARCHIVED]
- vollib - vollib is a python library for calculating option prices, implied volatility and greeks.
- QuantPy - A framework for quantitative finance In python.
- Finance-Python - Python tools for Finance.
- ffn - A financial function library for Python.
- pynance - PyNance is open-source software for retrieving, analysing and visualizing data from stock and derivatives markets.
- tia - Toolkit for integration and analysis.
- hasura/base-python-dash - Hasura quickstart to deploy Dash framework. Written on top of Flask, Plotly.js, and React.js, Dash is ideal for building data visualization apps with highly custom user interfaces in pure Python.
- hasura/base-python-bokeh - Hasura quickstart to visualize data with bokeh library.
- pysabr - SABR model Python implementation.
Indicators
- pandas_talib - A Python Pandas implementation of technical analysis indicators.
- Tulipy - Financial Technical Analysis Indicator Library (Python bindings for tulipindicators)
Trading & Backtesting
- TA-Lib - perform technical analysis of financial market data.
- trade - trade is a Python framework for the development of financial applications.
- zipline - Pythonic algorithmic trading library.
- QuantSoftware Toolkit - Python-based open source software framework designed to support portfolio construction and management.
- quantitative - Quantitative finance, and backtesting library.
- analyzer - Python framework for real-time financial and backtesting trading strategies.
- bt - Flexible Backtesting for Python.
- backtrader - Python Backtesting library for trading strategies.
- pythalesians - Python library to backtest trading strategies, plot charts, seamlessly download market data, analyse market patterns etc.
- pybacktest - Vectorized backtesting framework in Python / pandas, designed to make your backtesting easier.
- pyalgotrade - Python Algorithmic Trading Library.
- tradingWithPython - A collection of functions and classes for Quantitative trading.
- pandas-ta - An easy to use Python 3 Pandas Extension with 80+Technical Analysis Indicators
- ta - Technical Analysis Library using Pandas (Python)
- algobroker - This is an execution engine for algo trading.
- pysentosa - Python API for sentosa trading system.
- finmarketpy - Python library for backtesting trading strategies and analyzing financial markets.
- binary-martingale - Computer program to automatically trade binary options martingale style.
- fooltrader - the project using big-data technology to provide an uniform way to analyze the whole market.
- zvt - the project using sql,pandas to provide an uniform and extendable way to record data,computing factors,select securites, backtesting,realtime trading and it could show all of them in clearly charts in realtime.
- pylivetrader - zipline-compatible live trading library.
- pipeline-live - zipline's pipeline capability with IEX for live trading.
- zipline-extensions - Zipline extensions and adapters for QuantRocket.
- moonshot - Vectorized backtester and trading engine for QuantRocket based on Pandas.
- PyPortfolioOpt - Financial portfolio optimisation in python, including classical efficient frontier and advanced methods.
- riskparity.py - fast and scalable design of risk parity portfolios with TensorFlow 2.0
- mlfinlab - Implementations regarding "Advances in Financial Machine Learning" by Marcos Lopez de Prado. (Feature Engineering, Financial Data Structures, Meta-Labeling)
- pyqstrat - A fast, extensible, transparent python library for backtesting quantitative strategies.
- NowTrade - Python library for backtesting technical/mechanical strategies in the stock and currency markets.
- pinkfish - A backtester and spreadsheet library for security analysis.
- aat - Async Algorithmic Trading Engine
- Backtesting.py - Backtest trading strategies in Python
- catalyst - An Algorithmic Trading Library for Crypto-Assets in Python
- quantstats - Portfolio analytics for quants, written in Python
- qtpylib - QTPyLib, Pythonic Algorithmic Trading http://qtpylib.io
- Quantdom - Python-based framework for backtesting trading strategies & analyzing financial markets [GUI :neckbeard:]
- freqtrade - Free, open source crypto trading bot
-
algorithmic-trading-with-python - Free
pandas
andscikit-learn
resources for trading simulation, backtesting, and machine learning on financial data. - DeepDow - Portfolio optimization with deep learning
Risk Analysis
- pyfolio - Portfolio and risk analytics in Python.
- empyrical - Common financial risk and performance metrics.
- fecon235 - Computational tools for financial economics include: Gaussian Mixture model of leptokurtotic risk, adaptive Boltzmann portfolios.
- finance - Financial Risk Calculations. Optimized for ease of use through class construction and operator overload.
- qfrm - Quantitative Financial Risk Management: awesome OOP tools for measuring, managing and visualizing risk of financial instruments and portfolios.
- visualize-wealth - Portfolio construction and quantitative analysis.
- VisualPortfolio - This tool is used to visualize the perfomance of a portfolio.
Factor Analysis
- alphalens - Performance analysis of predictive alpha factors.
Time Series
- ARCH - ARCH models in Python.
- statsmodels - Python module that allows users to explore data, estimate statistical models, and perform statistical tests.
- dynts - Python package for timeseries analysis and manipulation.
- PyFlux - Python library for timeseries modelling and inference (frequentist and Bayesian) on models.
- tsfresh - Automatic extraction of relevant features from time series.
- hasura/quandl-metabase - Hasura quickstart to visualize Quandl's timeseries datasets with Metabase.
Calendars
- trading_calendars - Stock Exchange Trading Calendars.
- bizdays - Business days calculations and utilities.
- pandas_market_calendars - Exchange calendars to use with pandas for trading applications.
Data Sources
- findatapy - Python library to download market data via Bloomberg, Quandl, Yahoo etc.
- googlefinance - Python module to get real-time stock data from Google Finance API.
- yahoo-finance - Python module to get stock data from Yahoo! Finance.
- pandas-datareader - Python module to get data from various sources (Google Finance, Yahoo Finance, FRED, OECD, Fama/French, World Bank, Eurostat...) into Pandas datastructures such as DataFrame, Panel with a caching mechanism.
- pandas-finance - High level API for access to and analysis of financial data.
- pyhoofinance - Rapidly queries Yahoo Finance for multiple tickers and returns typed data for analysis.
- yfinanceapi - Finance API for Python.
- yql-finance - yql-finance is simple and fast. API returns stock closing prices for current period of time and current stock ticker (i.e. APPL, GOOGL).
- ystockquote - Retrieve stock quote data from Yahoo Finance.
- wallstreet - Real time stock and option data.
- stock_extractor - General Purpose Stock Extractors from Online Resources.
- Stockex - Python wrapper for Yahoo! Finance API.
- finsymbols - Obtains stock symbols and relating information for SP500, AMEX, NYSE, and NASDAQ.
- FRB - Python Client for FRED® API.
- inquisitor - Python Interface to Econdb.com API.
- yfi - Yahoo! YQL library.
- chinesestockapi - Python API to get Chinese stock price.
- exchange - Get current exchange rate.
- ticks - Simple command line tool to get stock ticker data.
- pybbg - Python interface to Bloomberg COM APIs.
- ccy - Python module for currencies.
- tushare - A utility for crawling historical and Real-time Quotes data of China stocks.
- jsm - Get the japanese stock market data.
- cn_stock_src - Utility for retrieving basic China stock data from different sources.
- coinmarketcap - Python API for coinmarketcap.
- after-hours - Obtain pre market and after hours stock prices for a given symbol.
- bronto-python - Bronto API Integration for Python.
- pytdx - Python Interface for retrieving chinese stock realtime quote data from TongDaXin Nodes.
- pdblp - A simple interface to integrate pandas and the Bloomberg Open API.
- tiingo - Python interface for daily composite prices/OHLC/Volume + Real-time News Feeds, powered by the Tiingo Data Platform.
- IEX - Python Interface for retrieving real-time and historical prices and equities data from The Investor's Exchange.
- alpaca-trade-api - Python interface for retrieving real-time and historical prices from Alpaca API as well as trade execution.
- metatrader5 - API Connector to MetaTrader 5 Terminal
- akshare - AkShare is an elegant and simple financial data interface library for Python, built for human beings! https://akshare.readthedocs.io
- yahooquery - Python interface for retrieving data through unofficial Yahoo Finance API.
- investpy - Financial Data Extraction from Investing.com with Python! https://investpy.readthedocs.io/
- yliveticker - Live stream of market data from Yahoo Finance websocket.
Excel Integration
- xlwings - Make Excel fly with Python.
- openpyxl - Read/Write Excel 2007 xlsx/xlsm files.
- xlrd - Library for developers to extract data from Microsoft Excel spreadsheet files.
- xlsxwriter - Write files in the Excel 2007+ XLSX file format.
- xlwt - Library to create spreadsheet files compatible with MS Excel 97/2000/XP/2003 XLS files, on any platform.
- DataNitro - DataNitro also offers full-featured Python-Excel integration, including UDFs. Trial downloads are available, but users must purchase a license.
- xlloop - XLLoop is an open source framework for implementing Excel user-defined functions (UDFs) on a centralised server (a function server).
- expy - The ExPy add-in allows easy use of Python directly from within an Microsoft Excel spreadsheet, both to execute arbitrary code and to define new Excel functions.
- pyxll - PyXLL is an Excel add-in that enables you to extend Excel using nothing but Python code.
Visualization
- D-Tale - Visualizer for pandas dataframes and xarray datasets.