Chartbreaker
    Preparing search index...

    Type Alias PortfolioValueHistoryBreakdown

    The open positions of a portfolio at the end of one single day, with the price inputs each of them has been valued with. This is the detail behind one point of the value history.

    type PortfolioValueHistoryBreakdown = {
        buyValue: Amount;
        dateString: string;
        isToday: boolean;
        knockOuts: PortfolioValueHistoryKnockOut[];
        positions: PortfolioValueHistoryBreakdownPosition[];
        realizedFeesKnown: boolean;
        realizedPnl: Amount;
        realizedPnlAfterFees?: Amount;
        realizedTrades: PortfolioValueHistoryRealizedTrade[];
        requestedDateString: string;
        value: Amount;
        warningStatus: TradeSummaryWarningStatus;
    }
    Index
    buyValue: Amount

    The total original buy value of positions, excluding fees and taxes. Positions whose buy price could not be determined are not part of this sum.

    dateString: string

    The day that has actually been valued, YYYY-MM-DD. This equals requestedDateString, except for weekend requests which are answered with the preceding friday (the history only holds weekdays).

    isToday: boolean

    true if dateString is the current day, i.e. if this breakdown describes the positions that are open right now, valued with the last end-of-day price rather than with a final one. This is also the condition under which positions carry their positionIds, so that a client can show live values for them.

    Positions that have been booked out on dateString because they knocked out or expired (they vanish from the portfolio without a sell order), so they are held in positions up to the previous day and gone from the next one.

    This is empty on every other day: a knock-out that is still in the future would suggest that a position is missing which simply had not been bought yet, and one further in the past does not say anything about this day anymore.

    The open positions at the end of dateString. Empty if nothing was held on that day.

    realizedFeesKnown: boolean

    Whether the broker reports fees at all (see PortfolioValueHistoryResponse.realizedFeesKnown).

    This describes the whole portfolio and not just dateString, so that clicking through the days of the chart cannot change the answer.

    realizedPnl: Amount

    The profit/loss that has been realized on dateString, before fees and taxes: the sum of realizedTrades. This is what has been booked on that single day, it is not cumulative.

    realizedPnlAfterFees?: Amount

    The same as realizedPnl, but with the fees of realizedTrades subtracted (still before taxes).

    Trades whose fees are not fully known contribute their gross profit/loss; whether any fees are known at all is realizedFeesKnown. It is 0 if nothing has been closed on that day, and missing only when talking to a backend that predates that flag.

    The trades closed on dateString that realizedPnl and realizedPnlAfterFees are the sums of. Empty if nothing has been closed. Unlike positions, this is about what left the portfolio on that day instead of what was held.

    requestedDateString: string

    The date as it has been requested, so that a client can match up its request.

    value: Amount

    The total end-of-day value of positions (positions only, no cash).