01 / Connect
Multiple providers.
One client.
Use a shared interface across FMP, Finnhub, Twelve Data, Yahoo Finance, Alpha Vantage, and Massive. Configure provider keys or select a provider per request.
Python library + command-line tool
Quotes, price history, fundamentals, and options through one Python client. Use ofclient from your terminal, scripts, or agents.
Python 3.11+ · Install as onefinance
A few commands to start
# Fetch quotes and price history
ofclient quote AAPL
ofclient price AAPL --range 1y
# Inspect configured routes
ofclient capabilities --availability01 / Connect
Use a shared interface across FMP, Finnhub, Twelve Data, Yahoo Finance, Alpha Vantage, and Massive. Configure provider keys or select a provider per request.
02 / Reuse
Disk-based caching keeps repeated requests local. Override the cache lifetime or bypass it when your workflow needs a fresh fetch.
03 / Automate
Choose JSON, table, or CSV output. Discover commands, inspect provider status, and trace requests through the audit log.
Quick start
Install the CLI as a tool, or add the library to your Python environment.
uv tool install onefinance
ofclient quote AAPL
ofclient quotes AAPL MSFT GOOG
ofclient price AAPL --range 1m --format csv
ofclient providers status# pip install onefinance
from onefinance.core.client import OneFinanceClient
with OneFinanceClient() as client:
quote = client.get_quote("AAPL")
quotes = client.get_quotes(["AAPL", "MSFT"])Set API keys for the providers you use. Providers without configured keys are skipped; Yahoo Finance provides a fallback without an API key. Data coverage and access depend on the endpoint and your provider plan.
Provider setup and configuration ↗Keep building
Find endpoint coverage, per-call overrides, output formats, and audit commands in the project README.