Institutional-Grade Quantitative Finance Library
Project description
๐ fdequant
Production-Ready Quantitative Finance Library for Python
Build, analyze, optimize, simulate, and evaluate quantitative trading strategies with a unified Python framework.
Production-Ready โข Algorithmic Trading โข Portfolio Analytics โข Quantitative Research โข Risk Management โข Machine Learning
๐ Navigation
- ๐ Key Features
- ๐ฆ Installation
- โก Quick Start
- ๐ Documentation
- ๐ค Contributing
- ๐ License
๐ Why fdequant?
Hi, I'm Aayush Mishra, and I built fdequant to solve the pain points I saw firsthand in quantitative finance:
- Fragmented tools: Traders and analysts waste hours stitching together libraries.
- Limited strategy testing: Backtesting is often oversimplified or too slow.
- No all-in-one solution: Risk management, technical analysis, reporting, and screening are siloed.
fdequant changes that by being a single, production-grade library that handles everything from backtesting to reportingโso you can focus on what matters: building winning strategies. fdequant is a production-ready quantitative finance platform that unifies risk management, portfolio optimization, machine learning, technical analysis, strategy development, market screening, simulation, reporting, and algorithmic research within a single Python package.
Designed with a modular architecture, clean APIs, and extensible components, fdequant enables developers, quantitative researchers, and fintech teams to build scalable financial applications, perform advanced quantitative analysis, and accelerate strategy development with confidence.
๐ Key Features
๐ Core Platform Capabilities
fdequant is a production-ready quantitative finance library designed for quantitative researchers, algorithmic traders, developers, fintech teams, and financial professionals. It combines advanced risk analytics, portfolio optimization, strategy development, technical analysis, market screening, simulation, and reporting into a unified Python framework.
The platform currently provides 11 production-ready capabilities for quantitative research and financial engineering.
1. Advanced Risk Analysis
Perform comprehensive risk assessment for portfolios and individual financial instruments with a flexible and scalable analytics engine.
Features
- Portfolio Risk Analysis
- Asset-Level Risk Assessment
- Volatility Analysis
- Exposure Analysis
- Correlation Analysis
- Multi-Asset Support
- Risk Decomposition
- Flexible Risk Framework
2. Real-Time Market Data Processing
Continuously process market data to keep portfolio analytics and risk calculations updated.
Features
- Real-Time Market Updates
- Historical Market Data
- Automatic Data Synchronization
- Efficient Processing Pipeline
- Continuous Portfolio Monitoring
- High-Performance Data Handling
3. Machine Learning Risk Forecasting
Predict portfolio behavior and future market risk using machine learning models.
Features
- Predictive Risk Analytics
- XGBoost-Based Forecasting
- Intelligent Risk Scoring
- Data-Driven Insights
- Future Risk Estimation
- Continuous Model Improvement
4. Portfolio Optimization Engine
Optimize portfolio allocations using quantitative optimization techniques.
Features
- Maximum Sharpe Optimization
- Minimum Volatility Portfolio
- Efficient Portfolio Construction
- Risk-Adjusted Allocation
- Portfolio Rebalancing
- Performance Optimization
5. Custom Risk Metrics Framework
Measure portfolio health using built-in and custom quantitative metrics.
Supported Metrics
- Value at Risk (VaR)
- Conditional Value at Risk (CVaR)
- Volatility
- Portfolio Exposure
- Expected Shortfall
- User-Defined Risk Metrics
6. Advanced Strategy Backtesting Engine
Design, evaluate, and validate trading strategies before deployment.
Built-in Strategies
- SMA
- EMA
- RSI
- MACD
- Bollinger Bands
- Moving Average Cross
Performance Analytics
- CAGR
- Annual Return
- Sharpe Ratio
- Sortino Ratio
- Calmar Ratio
- Profit Factor
- Win Rate
- Maximum Drawdown
- Equity Curve
- Trade History
7. Professional Stock Screener
Discover investment opportunities using powerful technical and fundamental filters.
Technical Filters
- RSI
- EMA
- SMA
- MACD
- ADX
- ATR
- VWAP
- SuperTrend
- Bollinger Bands
- Ichimoku Cloud
- Breakout Detection
- Volume Spike
- Gap Analysis
- 52-Week High / Low
Fundamental Filters
- Market Capitalization
- Price-to-Earnings (P/E)
- Price-to-Book (P/B)
- Earnings Per Share (EPS)
- Return on Equity (ROE)
- Dividend Yield
- Debt-to-Equity Ratio
Additional Capabilities
- Ranking Engine
- CSV Export
- Custom Screening Rules
8. Monte Carlo Portfolio Simulation
Evaluate portfolio performance across thousands of simulated market scenarios.
Simulation Options
- 10,000+
- 50,000+
- 100,000+
Analytics
- Probability of Profit
- Probability of Loss
- VaR
- CVaR
- Confidence Intervals
- Best-Case Scenario
- Worst-Case Scenario
- Expected Portfolio Value
- Median Outcome
9. Technical Indicator Engine
A comprehensive technical analysis engine with production-ready indicators.
Included Indicators
- RSI
- SMA
- EMA
- WMA
- VWAP
- MACD
- ATR
- ADX
- CCI
- ROC
- Momentum
- OBV
- CMF
- SuperTrend
- Ichimoku Cloud
- Stochastic RSI
- Williams %R
- Parabolic SAR
- Bollinger Bands
- Keltner Channel
- Donchian Channel
All indicators return clean Pandas objects for seamless integration into data science and quantitative workflows.
10. Professional Report Generator
Generate detailed reports suitable for portfolio reviews, quantitative research, and financial analysis.
Export Formats
- Excel
- HTML
Report Contents
- Portfolio Summary
- Performance Analytics
- Risk Analysis
- Asset Allocation
- Strategy Performance
- Trade History
- Monte Carlo Results
- Technical Analysis Summary
11. Strategy Builder DSL
Build algorithmic trading strategies using a clean, fluent, and developer-friendly API.
Workflow
- Define Entry Rules
- Configure Exit Conditions
- Apply Stop Loss
- Configure Take Profit
- Execute Backtests
- Evaluate Performance
- Iterate Strategies Quickly
The Strategy Builder significantly reduces development time while keeping strategies modular, readable, and easy to maintain.
๐ฆ Installation
Install directly from PyPI:
pip install fdequant
Verify the installation:
import fdequant
print(fdequant.__version__)
Upgrade
pip install --upgrade fdequant
๐ก Quick Start
Let's run a complete example that demonstrates the power of fdequant!
import yfinance as yf
from fdequant import (
Backtester,
SMAStrategy,
Strategy,
StockScreener,
MonteCarloSimulation,
ReportGenerator
)
# 1. Backtest an SMA Crossover Strategy
data = yf.Ticker("AAPL").history(period="5y")
strategy = SMAStrategy(short_window=20, long_window=50)
backtester = Backtester(initial_capital=100000)
backtest_results = backtester.run(strategy, data)
print("Backtest Complete!")
print(f"Total Return: {backtest_results.total_return:.2%}")
# 2. Build a Custom Strategy with the DSL
def buy_condition(df):
from fdequant import sma
return sma(df['Close'], 20) > sma(df['Close'], 50)
def sell_condition(df):
from fdequant import sma
return sma(df['Close'], 20) < sma(df['Close'], 50)
custom_strategy = (
Strategy()
.buy_when(buy_condition)
.sell_when(sell_condition)
.stoploss(0.02) # 2% stop loss
.takeprofit(0.05) # 5% take profit
)
dsl_results = custom_strategy.backtest(data, initial_capital=100000)
# 3. Screen for Promising Stocks
screener = (
StockScreener(tickers=["AAPL", "MSFT", "GOOGL", "AMZN", "META"])
.rsi_filter(min_val=30, max_val=70)
.sma_filter(window=50, price_above=True)
.load_data(period="1y")
)
screened_stocks = screener.run()
print("Screened Stocks:")
print(screened_stocks)
# 4. Run Monte Carlo Simulation
tickers = ["AAPL", "MSFT", "GOOGL"]
portfolio_data = yf.download(tickers, period="5y")['Close']
returns = portfolio_data.pct_change().dropna()
simulator = MonteCarloSimulation(initial_investment=10000, time_horizon=252)
mc_results = simulator.simulate(returns, num_simulations=10000)
print("\nMonte Carlo Results:")
print(f"Probability of Profit: {mc_results.probability_of_profit:.2%}")
print(f"VaR (95%): {mc_results.var_95:.2%}")
# 5. Generate a Professional Report
generator = ReportGenerator(title="fdequant Analysis Report")
generator.generate_excel(
"fdequant_report.xlsx",
performance=backtest_results,
monte_carlo=mc_results,
portfolio_data=screened_stocks
)
generator.generate_html(
"fdequant_report.html",
performance=backtest_results,
monte_carlo=mc_results,
portfolio_data=screened_stocks
)
print("\nReports generated: fdequant_report.xlsx and fdequant_report.html")
For more examples, check out advanced_example.py and example.py.
๐ Project Structure
fdequant/
โโโ fdequant/ # Main library package
โ โโโ indicators/ # Technical indicators
โ โโโ backtesting/ # Backtesting engine & strategies
โ โโโ screener/ # Stock screener
โ โโโ monte_carlo/ # Monte Carlo simulation
โ โโโ reports/ # Report generator
โ โโโ strategy_dsl/ # Strategy builder DSL
โ โโโ main.py # Original risk management features
โ โโโ oa_v2.py # Ensemble risk assessment
โโโ advanced_example.py # Advanced usage examples
โโโ example.py # Original risk management example
โโโ requirements.txt # Dependencies
โโโ LICENSE # License (all rights reserved to Aayush Mishra)
โโโ README.md # This file!
๐ ๏ธ Tech Stack
- Core: Python 3.8+
- Data: pandas, numpy, yfinance
- Machine Learning: scikit-learn, XGBoost
- Visualization/Reports: openpyxl (Excel), weasyprint (optional PDF)
- Logging: loguru
๐ License
All Rights Reserved. Aayush Mishra.
This software is the exclusive property of Aayush Mishra. No part of this library may be reproduced, modified, distributed, or used in any form without explicit written permission. Editing or altering the code is strictly prohibited.
For inquiries, contact Aayush Mishra.
๐ค About the Developer
Aayush Mishra built fdequant to bring institutional-grade quantitative finance tools to everyone. With deep expertise in machine learning, risk management, and financial markets, Aayush is passionate about building practical, production-ready solutions.
Built with passion by Aayush Mishra
Project details
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 fdequant-1.1.0.tar.gz.
File metadata
- Download URL: fdequant-1.1.0.tar.gz
- Upload date:
- Size: 18.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d03f31b0907ae1a89870d6e66a8423379909cee733f5c0539ff2e1e44c04533
|
|
| MD5 |
52f969f4e8483fb3f4930c7453470103
|
|
| BLAKE2b-256 |
e50c4e500bd73e6dc5088ed799948a98d6f8909059314db39d220cb06aaa15a4
|
File details
Details for the file fdequant-1.1.0-py3-none-any.whl.
File metadata
- Download URL: fdequant-1.1.0-py3-none-any.whl
- Upload date:
- Size: 17.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c29d28f03eb6376a20b95f8d7119aa1f90a518d2f4a3f44bf14d098d581ed321
|
|
| MD5 |
c76b784e6601e3791d0d7bc9efa53455
|
|
| BLAKE2b-256 |
069ef0ef7c85e606e63a23feda1bf9a505c419617e0790234932af729c3ae25c
|