A stock market analysis and visualization Python package.
Project description
Flux-RX
A Finance Python Package
Flux-RX makes financial analysis and visualization effortless. Generate publication-quality interactive charts, reports, and dashboards for any stock, ETF, or index with minimal code.
Installation
pip install -e .
Quick Start
import flux_rx as fx
# Generate a complete analysis report
fx.quick("AAPL", period="5y", benchmark="SPY", save="AAPL.html")
# Create individual charts
fx.chart("SPY", kind="price", period="10y")
fx.chart("AAPL", kind="drawdown")
fx.chart("TSLA", kind="monthly")
# Compare multiple assets
fx.compare(["QQQ", "SPY", "IWM"], period="5y", kind="risk_return")
# Launch interactive dashboard
fx.app()
Features
Data
- Automatic data fetching via yfinance
- Local caching to avoid repeated downloads
- Company metadata and fundamentals
- Support for stocks, ETFs, and indices
Analytics
- Daily and cumulative returns
- CAGR, volatility, max drawdown
- Sharpe, Sortino, and Calmar ratios
- Rolling volatility and rolling Sharpe
- Beta and alpha vs benchmark
- Monthly returns analysis
Charts
- Price charts with moving averages
- Candlestick OHLC charts
- Volume analysis
- Drawdown curves
- Rolling volatility and Sharpe charts
- Monthly returns heatmaps
- Risk-return scatter plots
- Correlation matrices
Reports
- Interactive HTML reports
- Single-ticker analysis
- Multi-ticker comparison
- All charts in one exportable file
Dashboard
- Full web application via Dash
- Single ticker analysis mode
- Multi-ticker comparison mode
API Reference
fx.quick(ticker, period, benchmark, save)
Generate a complete analysis report.
fx.quick("AAPL", period="5y", benchmark="SPY", save="report.html")
fx.chart(ticker, kind, period)
Create individual charts.
# Chart types: price, volume, drawdown, volatility, sharpe, monthly, cumulative, candlestick
fx.chart("AAPL", kind="price", period="2y")
fx.compare(tickers, period, kind)
Compare multiple assets.
# Comparison types: performance, risk_return, correlation, report
fx.compare(["AAPL", "MSFT", "GOOGL"], period="5y", kind="performance")
fx.app()
Launch the interactive dashboard.
fx.app(port=8050)
fx.metrics(ticker, period, benchmark)
Get computed metrics as a dictionary.
metrics = fx.metrics("AAPL", period="5y", benchmark="SPY")
# Returns: cagr, volatility, max_drawdown, sharpe_ratio, sortino_ratio, etc.
fx.info(ticker)
Get company/security information.
info = fx.info("AAPL")
# Returns: name, sector, industry, market_cap, pe_ratio, etc.
License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file flux_rx-0.1.0.tar.gz.
File metadata
- Download URL: flux_rx-0.1.0.tar.gz
- Upload date:
- Size: 29.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d29fb70a882dcd57c0e0e654952864eace9c8e91c2c2cb7ea283405d3bf69f41
|
|
| MD5 |
eecca2b01fb2d964661b55f17893f77e
|
|
| BLAKE2b-256 |
d316c53e55ae462e8b36111de5e645cd23903c852d5cf6b7cc0fb40d063c718d
|
Provenance
The following attestation bundles were made for flux_rx-0.1.0.tar.gz:
Publisher:
publish.yml on desenyon/flux-rx
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flux_rx-0.1.0.tar.gz -
Subject digest:
d29fb70a882dcd57c0e0e654952864eace9c8e91c2c2cb7ea283405d3bf69f41 - Sigstore transparency entry: 871401927
- Sigstore integration time:
-
Permalink:
desenyon/flux-rx@c34dbd91688bfd5f3f72ff135557ec54dc45e0ef -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/desenyon
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c34dbd91688bfd5f3f72ff135557ec54dc45e0ef -
Trigger Event:
release
-
Statement type:
File details
Details for the file flux_rx-0.1.0-py3-none-any.whl.
File metadata
- Download URL: flux_rx-0.1.0-py3-none-any.whl
- Upload date:
- Size: 31.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1541634674e9df32dee37f09c5d4f40573498b90244eeb5a76d46d3c61732d59
|
|
| MD5 |
fa9a9580eb75df16278f414a41f00e66
|
|
| BLAKE2b-256 |
deb3734d10eb2873481cd988a79ee7a2abcbb44358020ddf3407910b7ef44fc1
|
Provenance
The following attestation bundles were made for flux_rx-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on desenyon/flux-rx
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flux_rx-0.1.0-py3-none-any.whl -
Subject digest:
1541634674e9df32dee37f09c5d4f40573498b90244eeb5a76d46d3c61732d59 - Sigstore transparency entry: 871401936
- Sigstore integration time:
-
Permalink:
desenyon/flux-rx@c34dbd91688bfd5f3f72ff135557ec54dc45e0ef -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/desenyon
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c34dbd91688bfd5f3f72ff135557ec54dc45e0ef -
Trigger Event:
release
-
Statement type: