FinzData for Hugging Face
Built for AI, quants, data scientists and financial analysts who backtest. Clean data. Real insights. Real alpha.
FinzData gives Hugging Face point-in-time market data, macro vintages and server-side backtests through function calling and MCP — so the model answers market questions with real numbers it can cite, never guesses.
No API key needed
FinzData works the moment you install it: no FinzData account and no FinzData key. Your model gets the free AI preview
(the last 6 months of data) automatically, and it knows to tell you when older or deeper data needs a key.
When you want more, get a free API key (email only, 12 months of data) at https://finzdata.com/account, or full
history at https://finzdata.com/shop, then set FINZDATA_API_KEY. Nothing else changes.
Install
pip install finzdata-huggingface
Quick start
from finzdata_huggingface import ask
print(ask("How did managed money positioning in crude oil change over the last 3 months?")) # no FinzData key needed
What to ask
- "How are speculators positioned in crude oil futures by the latest COT report?"
- "Show SPY's dealer gamma, call wall and put wall for the last 30 sessions."
- "What did the first-published CPI print say last month, before revisions?"
- "Backtest a 12-month momentum strategy on US stocks, delisted names included."
- "How many ships transited the Strait of Hormuz each day last month?"
- "Who are the largest 13F holders of NVDA, and who added the most last quarter?"
Command line
finzdata-huggingface "How did managed money positioning in crude oil change over the last 3 months?"
finzdata-huggingface --show-tools
Inference Providers
Set HF_TOKEN and pick any of the top open models by family name or Hub id:
| family | Hub id |
|---|---|
| qwen | Qwen/Qwen3.8-2.4T-A95B |
| qwen-fast | Qwen/Qwen3.8-27B |
| kimi | moonshotai/Kimi-K3 |
| glm | zai-org/GLM-5.3 |
| deepseek | deepseek-ai/DeepSeek-V4-Pro-0813 |
| deepseek-fast | deepseek-ai/DeepSeek-V4.1-Flash |
| llama | meta-llama/Llama-3.3-70B-Instruct |
| gpt-oss | openai/gpt-oss-120b |
| gemma | google/gemma-4-26B-A4B-it |
| minimax | MiniMaxAI/MiniMax-M3 |
from finzdata_huggingface import ask
ask("Which ETFs saw the largest 13F ownership changes last quarter?", model="kimi")
ask("Plot-ready: SPX gamma flip for the last 20 sessions", model="meta-llama/Llama-3.3-70B-Instruct")
Each id above was live with several Inference Providers in November 2026. Hub ids evolve; any Hub model with tool calling works.
smolagents
from finzdata_huggingface import smolagents_agent
with smolagents_agent("qwen") as agent:
agent.run("Backtest a 50/200-day moving-average cross on SPY since 2005 and report the Sharpe ratio.")
Or take the tools alone: with smolagents_tools() as tc: tools = tc.tools.
Tiny Agents
finzdata-huggingface --write-tiny-agent finzdata-agent
tiny-agents run ./finzdata-agent
Hugging Face Spaces and Gradio
Try it in the browser: https://huggingface.co/spaces/FinzData/finzdata-open-models. The same ask call powers a Gradio app in a few lines.
Llama, Gemma, Mistral, gpt-oss and MiniMax
All of them run through the same ask(..., model=...). Mistral's open models run best on your own machine: see pip install finzdata-ollama.
Use with any OpenAI-compatible server
from finzdata_huggingface import openai_tools, FinzDataMCP
tools = openai_tools() # pass as `tools=` to any chat.completions call
result = FinzDataMCP().call("get_cot", {"market": "crude"}) # run the tool the model picked
Tool profiles
lite (6 core tools, for small models), data (20 data and backtest tools, the default) and full (every read tool).
Tools that change data on FinzData are never exposed unless you ask for them explicitly.
Coverage
16,000+ US stocks that have traded on NYSE and Nasdaq since January 2000, delisted included, point in time; 5,100+ ETFs; 139 futures markets with every contract since 2007; point-in-time options gamma (GEX) for single stocks, ETFs and the major indexes; CFTC COT since 1986; 13F holdings; SEC fundamentals as filed; end-of-day options chains; 22,700+ macro series with every vintage kept; 512 crypto pairs (Bitcoin since 2013); FX for 79 currency pairs; 123 indexes incl. the VIX term structure; tick trades for 1,100+ US stocks and ETFs; FinzData Global Macro Pulse (ship transits through 28 chokepoints, port calls, flights, toll traffic); 1, 5, 15, 30-minute, hourly and daily bars; server-side backtests.
Access
No key needed to start: AI/MCP use gives the last 6 months. A free account (email only, https://finzdata.com/account) gives the last 12 months of daily US stock bars, COT, SEC fundamentals, US macro and 13F, and the last 30 days of futures and daily GEX. Full history: https://finzdata.com/shop — $19 one ticker, $49 one futures market, $195 for 5 years of the whole US market.
With a key:
export FINZDATA_API_KEY=fz_... # free at https://finzdata.com/account
or pass finzdata_api_key="fz_..." to ask.
Links
- Site: https://finzdata.com
- Docs: https://finzdata.com/docs
- MCP server: https://api.finzdata.com/mcp
- Python client:
pip install finzdata - Contact: the FinzData team, info@finzdata.com
Metadata
Release files for finzdata-huggingface 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| finzdata_huggingface-0.1.0.tar.gz | 16.9 kB | Without provenance | Details for finzdata_huggingface-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| finzdata_huggingface-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for finzdata_huggingface-0.1.0-py3-none-any.whl |
Total release size: 31.7 kB
Release files / finzdata_huggingface-0.1.0.tar.gz
| Download URL | finzdata_huggingface-0.1.0.tar.gz |
|---|---|
| Size | 16.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ff3852576dc409d6f24c4eba0e20c90124aaa178d58cc6f9253c6e2a90dfcb43
|
|
BLAKE2b-256 checksum How to use checksums |
b4fb5372d7c4953ad572b8adbdbf6ccfdd61a744672ef6d523f463b4e8d37690
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.18
|
Release files / finzdata_huggingface-0.1.0-py3-none-any.whl
| Download URL | finzdata_huggingface-0.1.0-py3-none-any.whl |
|---|---|
| Size | 14.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2b834d26f81e4ec837f6aac9d112ef5cdeda4598455ee6b4d9091db36b398fb0
|
|
BLAKE2b-256 checksum How to use checksums |
b8309c9de400404cbab6424d60fb6ffa43170990e9ff1bf44cb49503b51c1a41
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.18
|
Security for finzdata-huggingface 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.