Riddy21 / Riddy21/Friday_Budgeting_Pro
Epic: Investment Account Tracking — TFSA, RRSP, portfolio growth, net worth
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
Overview
Track investment accounts (TFSA, RRSP, Sunlife pension, Wealthsimple, Questrade) as first-class entities. Handles both the contribution side (money going in = savings) and the growth side (appreciation, dividends = investment return).
Integrates with:
- 💾 Savings (Epic #247) — contributions to investment accounts are classified as savings there; growth is tracked here
- 📊 Excel Export (Epic #219) — dedicated investment account sheets in the workbook
- 💰 Budgeting (Epic #226) — TFSA/RRSP contribution targets settable as savings budget targets
Contributions vs Growth — the core distinction
| Type | Example | Where tracked |
|---|---|---|
| Contributions | Chequing → TFSA $500 | Epic #247 (savings transaction) |
| Growth | TFSA appreciates $200 | This epic (balance snapshot delta) |
These are never conflated. Growth = current_balance − total_contributions_ever.
Providers
| Provider | Plaid supported? | Approach |
|---|---|---|
| Wealthsimple | ✅ | Plaid Investments API |
| Questrade | ✅ | Plaid Investments API |
| RBC Direct Investing | ✅ | Plaid Investments API |
| Sunlife RRSP | ❌ (group plan) | Manual balance entry (#242) |
| Manulife | ❌ | Manual balance entry (#242) |
Sub-issues
Data & sync
- #240 — Data model:
investment_balances,investment_transactions,investment_holdingstables - #241 — Plaid Investments API sync (balances + investment transactions)
- #242 — Manual balance entry MCP tool for non-Plaid providers (Sunlife)
- #243 — Contribution detection: auto-classify transfers as savings (bridges to Epic #247)
MCP tools
- #244 —
portfolio_summary()— total value, contributions, growth, growth % - #245 —
investment_account_detail()— balance history + holdings
Excel
- #246 — Investment account sheets in Excel export (Epic #219)
Net worth
- #247-net —
net_worth()— chequing + investments combined (see Epic #247 for savings context)
Chat UX
"How are my investments doing?"
"What's my total portfolio worth?"
"My Sunlife RRSP is now worth $23,400" → manual update
"How much have I contributed vs how much has grown on its own?"
"What's my net worth?"
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading sub-issues #240–#247, especially the data model, Plaid sync, MCP tools, Excel export, and net-worth work. Map their dependencies and the separation between contributions and growth; the epic is done when its listed account-tracking, reporting, export, and integration pieces are completed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend, database
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100