AI Skill Report Card
Analyzing ETF Portfolios Germany
ETF Portfolio Analysis for German Residents
Quick Start13 / 15
Python# Portfolio analysis framework portfolio = { 'FTSE_All_World': {'allocation': 70, 'ter': 0.22, 'accumulating': True}, 'MSCI_EM_IMI': {'allocation': 20, 'ter': 0.18, 'accumulating': True}, 'Euro_Government_Bonds': {'allocation': 10, 'ter': 0.12, 'distributing': False} } def analyze_german_tax_efficiency(portfolio): return { 'vorabpauschale_impact': calculate_vorab(portfolio), 'ter_drag': sum(etf['allocation'] * etf['ter'] for etf in portfolio.values()) / 100, 'rebalancing_frequency': 'annual' if accumulating_heavy else 'quarterly' }
Recommendation▾
Quick Start code example could be more immediately actionable - show actual calculation results rather than just the framework structure
Workflow15 / 15
Progress:
- Asset Allocation Review: Check home bias, regional distribution
- Tax Optimization: Verify accumulating ETFs for Vorabpauschale benefits
- Cost Analysis: Calculate total TER drag and trading costs
- Broker Assessment: Ensure German tax reporting compliance
- Rebalancing Strategy: Set thresholds and frequency
- Emergency Fund Check: Verify 3-6 months expenses in cash
Step-by-Step Process
- Document current holdings with ISIN, allocation %, TER, and accumulating/distributing status
- Calculate geographic exposure - check for over-concentration in any region
- Assess tax efficiency - prioritize accumulating ETFs to defer taxes via Vorabpauschale
- Review broker setup - ensure automatic tax reporting to German authorities
- Set rebalancing rules - typically when allocation drifts >5% from target
Recommendation▾
Examples section needs more concrete input/output pairs - the tax drag calculation is good but needs a clearer before/after comparison
Examples17 / 20
Example 1: Basic Three-Fund Portfolio Input: 25-year-old, €50k invested, moderate risk tolerance Output:
- 70% FTSE All-World (IE00BK5BQT80)
- 20% MSCI Emerging Markets IMI (IE00BKM4GZ66)
- 10% Euro Government Bonds (IE00B4WXJJ64)
Example 2: Tax Drag Calculation Input: €100k portfolio, 0.2% average TER Output: Annual cost = €200, after 20 years with 7% growth = €8,200 in lost compound returns
Recommendation▾
Consider adding a simple decision tree or flowchart for choosing between accumulating vs distributing ETFs based on income level
Best Practices
Tax Optimization:
- Prefer accumulating ETFs to minimize current tax burden
- Use Freistellungsauftrag (€1,000 allowance for singles, €2,000 couples)
- Hold >1 year to benefit from reduced tax rates on gains
Portfolio Construction:
- Maintain 5-15% home bias (overweight Europe/Germany vs. market cap)
- Rebalance annually unless >10% drift from target
- Use broad market ETFs over sector/factor tilts for core holdings
- Keep emergency fund separate in German savings accounts
Broker Selection:
- Choose brokers with German tax reporting (Scalable Capital, Trade Republic, ING)
- Avoid complex international structures requiring manual tax filing
Common Pitfalls
Tax Mistakes:
- Using distributing ETFs unnecessarily (higher current tax burden)
- Forgetting to set up Freistellungsauftrag
- Not understanding Vorabpauschale calculations
Portfolio Errors:
- Over-diversification with too many overlapping ETFs
- Home bias extremes (either 0% or >30% Germany/Europe)
- Frequent rebalancing triggering unnecessary taxes
- Ignoring correlation between bond duration and interest rate risk
Broker Issues:
- Using non-German brokers requiring complex tax reporting
- High transaction costs eating into returns
- Not utilizing savings plans (Sparplan) for cost averaging