{% extends "base.html" %} {% block title %}NSDL CAS · Networthy HQ{% endblock %} {% block content %} {% if latest %}
NSDL CAS net worth · {{ latest.statement_date.strftime('%d %b %Y') }} ₹{{ "{:,.0f}".format(latest.total_value) }} {% if change is not none %} {{ '▲' if change >= 0 else '▼' }} ₹{{ "{:,.0f}".format(change|abs) }} since previous {% endif %}
Upload CAS

Net worth over time

Snapshots

{% for s in snapshots %} {% endfor %}
Statement dateNet worthHoldingsSource
{{ s.statement_date.strftime('%d %b %Y') }} ₹{{ "{:,.0f}".format(s.total_value) }} {{ s.holding_count }} {{ s.source_filename or '—' }}
{# --- Detailed holdings for the latest statement (merged from Portfolio) --- #} {% if accounts %} {% if breakdown %}

Asset allocation · {{ latest.statement_date.strftime('%d %b %Y') }}

{% for b in breakdown %} {% endfor %}
{% endif %} {% for account in accounts %}
{{ {'demat': 'Demat', 'mutual_fund': 'Mutual Fund', 'nps': 'NPS'}.get(account.kind, account.kind) }} {{ account.name }} {% if account.depository %}· {{ account.depository }}{% endif %} {% if account.identifier %}· {{ account.identifier }}{% endif %}
₹{{ "{:,.0f}".format(account.value) }}
{% for h in account.holdings %} {% endfor %}
Holding Units Price / NAV Value
{{ h.name }} {% if h.isin %}{{ h.isin }}{% endif %} {{ "{:,.3f}".format(h.units).rstrip('0').rstrip('.') if h.units is not none else '—' }} {{ "₹{:,.2f}".format(h.price) if h.price is not none else '—' }} {{ "₹{:,.0f}".format(h.value) if h.value is not none else '—' }}
{% endfor %} {% endif %} {% else %}

No statements yet

Upload your first NSDL CAS PDF to start tracking your net worth.

Upload a CAS statement
{% endif %} {% endblock %}