Pure Python Pipeline Overview¶
Introduction¶
The Pure Python Pipeline is a high-performance, deterministic alternative to AI-based portfolio analysis that delivers 10-20x speed improvements and 100% cost reduction while maintaining analysis quality.
Key Benefits¶
Performance¶
- Speed: 10-20x faster than AI-based analysis
- Cost: $0.00 per analysis (zero LLM calls)
- Consistency: 100% deterministic results
- Scalability: Handles large portfolios efficiently
Quality¶
- Accuracy: Maintains analysis quality
- Reproducibility: Same inputs always produce same outputs
- Testability: Easy to unit test and validate
- Auditability: Transparent algorithms
Architecture Components¶
The pipeline consists of four integrated components:
1. Portfolio Deep Analyzer¶
Replaces AI-based DeepAnalysisCrew with fast, deterministic Python calculations.
- Pure Python scoring using
DeepAnalysisScorer - Real market data fetching via
QuantitativeAnalysisTool - JSON export generation for downstream systems
- HTML report generation using Jinja2 templates
Performance: < 1 second per holding, 0 LLM calls, $0.00 cost
2. A+ Discovery Integrator¶
Integrates A+ discovery with deep analysis results by reading JSON exports.
- Scans output directories for analysis JSON files
- Identifies A+ and A grade holdings
- Consolidates opportunities across asset classes
- Fixes "0 opportunities found" issue
3. Backtesting Pipeline Connector¶
Automatically executes backtesting when A+ candidates are available.
- Reads A+ candidates from discovery results
- Executes backtesting for each candidate
- Generates performance metrics
- Saves results to JSON for report integration
4. Python Report Generator¶
Generates comprehensive HTML reports using Jinja2 templates (no AI).
- Template-based HTML generation
- Portfolio statistics calculation
- Holdings analysis with grades and scores
- Deep analysis integration
- Performance metrics display
Data Flow¶
Text Only
Portfolio Holdings
↓
[Deep Analysis] → JSON exports (output/{asset_class}/*.json)
↓
[A+ Discovery] → Identifies A+ opportunities
↓
[Backtesting] → Performance metrics for A+ candidates
↓
[Report Generation] → Final HTML report
Performance Comparison¶
Speed¶
| Component | AI-Based | Python-Based | Improvement |
|---|---|---|---|
| Deep Analysis (per holding) | 30-60s | <1s | 30-60x faster |
| A+ Discovery | 20-40s | <1s | 20-40x faster |
| Backtesting | 10-20s | 2-5s | 2-4x faster |
| Report Generation | 30-60s | <1s | 30-60x faster |
| Total (5 holdings) | 5-10 min | 10-20s | 15-30x faster |
Cost¶
| Component | AI-Based | Python-Based | Savings |
|---|---|---|---|
| Deep Analysis (per holding) | $0.05-0.10 | $0.00 | 100% |
| A+ Discovery | $0.02-0.05 | $0.00 | 100% |
| Backtesting | $0.01-0.02 | $0.00 | 100% |
| Report Generation | $0.05-0.10 | $0.00 | 100% |
| Total (5 holdings) | $0.65-1.35 | $0.00 | 100% |
View detailed performance metrics →
Quick Start¶
Python
from finwiz.scoring.portfolio_deep_analyzer import analyze_portfolio_with_python
from finwiz.integration.aplus_discovery_integrator import integrate_aplus_discovery_with_deep_analysis
from finwiz.integration.backtesting_pipeline_connector import connect_backtesting_to_discovery_results
from finwiz.reporting.python_report_generator import generate_python_report
# Run complete pipeline
analysis_results = analyze_portfolio_with_python(holdings, session_id)
discovery_results = integrate_aplus_discovery_with_deep_analysis(session_id)
backtesting_results = connect_backtesting_to_discovery_results(session_id)
report_path = generate_python_report(portfolio_review, analysis_results, session_id)
Documentation Structure¶
- Components - Detailed component documentation
- Data Flow - Complete data flow architecture
- JSON Exports - Export structure specifications
- Best Practices - Implementation guidelines
- Troubleshooting - Common issues and solutions
Related Documentation¶
- How-to Guide - Step-by-step usage instructions
- API Reference - Complete API documentation
Next Steps¶
- Learn about components - Understand each pipeline component
- Follow the how-to guide - Implement the pipeline
- Review best practices - Optimize your implementation