Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developer.moneyone.in/llms.txt

Use this file to discover all available pages before exploring further.

Purpose: Portfolio-level and fund-wise ETF analytics. Covers NAV-based valuations, demat-account breakdowns, market-cap and sector distributions, and historical portfolio worth. Response key: etfAnalysis

Top-Level Structure

etfAnalysis
├── overallAnalysis              Portfolio-level summary
├── errorFlags                   Data processing issues
├── fundWiseAnalysis             Per-ETF scheme analysis
├── accountWiseFundAnalysis      Per-demat-account breakdown
├── marketCapBasedAnalysis       Portfolio distribution by market cap
├── equityOnlyMarketCapBasedAnalysis  Equity-only market cap distribution
├── sectorBasedAnalysis          Portfolio distribution by sector
├── groupedFundsWorthData        Historical portfolio worth
└── benchmarkComparisons         Benchmark index comparisons

overallAnalysis

overallAnalysis
├── totalPortfolioValue          Current NAV-based value of entire ETF portfolio (INR)
├── totalInvestedAmount          Total invested amount across all ETFs (INR)
├── profitAmount                 Total unrealised P&L (INR)
├── absolutePercentageReturn     Overall return percentage
├── oneDayReturn                 Portfolio NAV change % in the last trading day

├── portfolioConsolidatedAnalysis[]  Aggregated underlying holdings across all ETFs
│   ├── name                     Company / security name
│   ├── isin                     ISIN
│   ├── percentageContribution   % share of total portfolio
│   ├── totalPortfolioAmount     Value of this security across all ETFs (INR)
│   ├── assetClass               Asset class (Equity, Others)
│   └── assetSubClass            Sub-class (Domestic Equities, etc.)

├── accountDetails[]             Demat account holder profiles
│   ├── name, dob, mobile, nominee, landline, address, email, pan
│   ├── dematId                  Demat account identifier
│   ├── linkReferenceNumber      Reference linking account to data provider
│   └── dataFetchTimeStamp       When this account's data was fetched (ISO-8601)

├── folioDetails[]               Summary per demat account
│   ├── linkedAccRef             Internal account reference
│   ├── totalFolioValue          Current value in this account (INR)
│   ├── totalInvestedAmount      Invested amount in this account (INR)
│   ├── dematId                  Demat account identifier
│   └── folioNo                  Folio number (empty for demat-held ETFs)

├── dematDetails[]               Same structure as folioDetails

├── monthlyPortfolioReturn       Map of YYYY-MM → monthly return % (empty if history unavailable)
│   └── "YYYY-MM": number

└── riskDistribution             Portfolio allocation by risk level (%)
    ├── HIGH                     % in high-risk ETFs
    ├── MEDIUM                   % in medium-risk ETFs
    └── LOW                      % in low-risk ETFs

errorFlags

errorFlags   [ ]   List of data processing issues or validation errors for the portfolio

fundWiseAnalysis

One object per ETF scheme held.
fundWiseAnalysis[]
├── isin                         ETF scheme ISIN
├── fundName                     Full ETF scheme name
├── tradingSymbol                NSE / BSE trading symbol for the ETF
├── lastNavDate                  Date of most recent NAV update (yyyy-MM-dd)

├── accountDetails[]             Demat accounts holding this ETF
│   ├── linkedAccRef             Internal account reference
│   └── folioNo                  Folio number (empty for demat-held ETFs)

├── — Valuation —
├── totalPortfolioValue          Current NAV-based value of this holding (INR)
├── totalInvestedAmount          Amount invested in this ETF (INR)
├── nav                          Current Net Asset Value per unit (INR)
├── units                        Units held
├── xirr                         XIRR for this holding
└── oneDayReturn                 NAV change % in the last trading day
Note: Unlike mutual funds, ETF entries do not include per-fund portfolioDistributionAnalysis or marketCapBasedDistributionAnalysis. Underlying holdings are reflected at the portfolio level via overallAnalysis.portfolioConsolidatedAnalysis.

accountWiseFundAnalysis

One entry per demat account.
accountWiseFundAnalysis[]
├── fundWiseAnalysis[]           ETFs held in this demat account (same structure as main fundWiseAnalysis)
└── dataFetchTimeStamp           When this account's data was fetched (ISO-8601)

marketCapBasedAnalysis

marketCapBasedAnalysis
├── LARGE_CAP
│   ├── percentageContribution   % of portfolio in large-cap ETFs
│   └── portfolioValue           Current value of large-cap holdings (INR)
├── MID_CAP                      Same fields as LARGE_CAP
├── SMALL_CAP                    Same fields as LARGE_CAP
└── OTHER                        Same fields — covers commodity, international, sector ETFs

equityOnlyMarketCapBasedAnalysis

Same structure as marketCapBasedAnalysis but computed using only equity underlying holdings, excluding commodity (gold, silver) and international ETFs.

sectorBasedAnalysis

sectorBasedAnalysis
└── [SECTOR_NAME]
    └── percentageContribution   % of total portfolio in this sector
Sector names reflect the underlying holdings of each ETF (e.g., Bank, IT, Automobile & Ancillaries, Precious Metals, etc.).

groupedFundsWorthData

groupedFundsWorthData
├── fundsWorth[]                 Ordered array of monthly portfolio values (INR)
└── monthlyFundsWorth            Map of YYYY-MM → portfolio value (INR)
    └── "YYYY-MM": number

benchmarkComparisons

benchmarkComparisons[]          Empty array if benchmark data is unavailable
├── benchmarkName                Index name (NIFTY, NIFTY500, etc.)
├── currentBenchmarkValue        Current index-equivalent portfolio value (INR)
├── monthlyBenchmarkWorth        Map of YYYY-MM → benchmark-equivalent value (INR)
└── monthlyBenchmarkReturn       Map of YYYY-MM → benchmark monthly return %

Usage Notes

  • All monetary values are in Indian Rupees (INR).
  • totalInvestedAmount equals totalPortfolioValue when purchase history is unavailable (XIRR will be 0.0 in such cases).
  • ETFs held in demat accounts do not have a folio number; folioNo will be an empty string.
  • sectorBasedAnalysis aggregates the underlying index composition — a single ETF (e.g., NIFTY BeES) contributes to all sectors in the Nifty 50 index.
  • groupedFundsWorthData.fundsWorth values are in chronological order matching the keys of monthlyFundsWorth.
  • benchmarkComparisons may be an empty array if the portfolio has insufficient history for comparison.