Back to Projects

Finance Python - Financial Analysis Toolkit

Comprehensive financial analysis toolkit implementing portfolio management, automated technical analysis via TradingView, and SMA crossover backtesting with parameter optimization.

Source Code
January 2025
Finance Python - Financial Analysis Toolkit

Technical Overview

Finance Python is a modular financial analysis toolkit built entirely in Python, designed for quantitative research and strategy validation. The system is composed of three independent Jupyter-based modules: a Streamlit-powered interactive portfolio analyzer with benchmark comparison against the S&P 500, an automated technical indicator engine leveraging the TradingView API for multi-timeframe signal generation, and a vectorized backtesting framework implementing SMA crossover strategies with automated parameter optimization. Each module is designed for isolated execution while sharing a common data acquisition layer through yfinance.

Problem Statement

Retail investors and finance students lack integrated, open-source toolkits that combine portfolio risk analysis, automated technical screening, and strategy backtesting in a single, reproducible environment without requiring institutional-grade software licenses.

Architecture

Notebook-centric modular architecture with three decoupled analysis pipelines. Data Layer: yfinance API wrapper for standardized OHLCV ingestion. Processing Layer: pandas/numpy vectorized operations for return calculations and covariance-based risk assessment. Visualization Layer: dual rendering with matplotlib for static reports and Bokeh for interactive backtesting charts. The Streamlit module operates as a standalone web application with real-time parameter adjustment.

Key Features

  • Interactive Portfolio Analyzer with S&P 500 Benchmark Comparison
  • Automated Multi-Indicator Technical Analysis (RSI, MACD, Bollinger, Stochastic)
  • SMA Crossover Backtesting with Automated Parameter Optimization
  • Real-time Data Acquisition via yfinance API
  • Covariance Matrix Risk Assessment and Volatility Computation
  • Interactive Bokeh Visualizations with Entry/Exit Markers

Challenges

  • Implementing efficient vectorized operations for large historical datasets
  • Ensuring deterministic reproducibility across different execution environments
  • Managing API rate limits for concurrent multi-asset data ingestion
  • Balancing computational cost of exhaustive parameter optimization with accuracy

Outcomes

Delivered a fully open-source financial analysis toolkit covering the complete research workflow from data acquisition to strategy validation. The backtesting module supports populations of 10,000+ parameter combinations with sub-second optimization cycles.

Technologies

PythonyfinancepandasStreamlitBokehJupyter

© 2026 Michel Haussaire. All rights reserved.