Performance
Key performance and risk indicators are summarized in a dashboard, along with a calculation widget. The dashboard can be accessed through the menu View > Reports > Performance
or with the sidebar (see figure 1).
Please note that the performance and risk indicators are always calculated for the entire portfolio and for a specific reporting period. By default, this is one year from today. You can change the period by selecting a different one or create a new one in the dropdown (topright). In Figure 1, the reporting period is from Jun 12, 2020 till Jun 12, 2023
. For the performance key indicators, the color green indicates a profit, while red signifies a loss.
Key performance indicators
True TimeWeighted Rate of Return (cumulative)
The cumulative True TimeWeighted Rate of Return (TTWROR) is the geometric average of the daily returns within the reporting period. For each day within the reporting period, the daily return is calculated using Equation 1. The cumulative return is computed with Equation 2.
$$\mathrm {r_{daily} = {\frac{MVE + CF_{out}}{MVB + CF_{in}}  1 {\qquad \text{(Eq 1)}}}}$$
and
$$\mathrm {r_{cum} = [(1 + r_1) \times (1 + r_2) \times ... \times (1 + r_n)]  1 {\qquad \text{(Eq 2)}}}$$
where MVE = the market value of the asset at the end of day, MVB = the market value at the beginning of the day (or the end of the previous day). CF_{in} and CF_{out} represent the net incoming or outgoing cashflows for the day. When a stock pays a dividend, that's an outgoing cashflow from the stock's perspective. A deposit (for buying the stock) is a cash inflow, as is paying the associated fees.
An indepth explanation of the TTWOR calculation is given Concepts > Performance > True TimeWeighted Rate of Return. A stepbystep calculation for a very simplified example can be found at View > Reports > Performance > Chart.
Internal Rate of Return (IRR)
The moneyweighted rate of return or IRR of a reporting period is the annual interest rate that is necessary to bring the market value of the investment at the beginning of the period (MVB) and all subsequent cash flows to the market value (MVE) at the end of the reporting period. To generate the specified cash flows within the given time period, your portfolio must grow each year by a percentage equal to the IRR. The base formula for the IRR calculation is:
$$\mathrm{MVE = MVB \times (1 + IRR)^{\frac{RD_1}{365}} + \sum_{t=1} ^{n}CF_t \times (1+IRR)^{\frac{RD_t}{365}} \qquad \text{(Eq 3)}}$$
where n = the number of cash flows in the reporting period, $CF_t$ = cash flow at time t within the period, and $RD_t$ = the number of remaining days within the period. For MVB, the $RD_t$ equals the entire period, representing the period length in years. You can simplify the equation by treating the MVB as the initial cash flow. A cash flow is any amount of money that is added to or withdrawn from an investment. For an indepth explanation, see Concepts > Performance > MoneyWeighted Rate of Return.
Absolute Change
The absolute Change is the difference between the market value of the portfolio at the end date of the reporting period (MVE) and the market value at the beginning (MVB).
$$\mathrm{MVE  MVB\qquad \text{(Eq 4)}}$$
For example, in Figure 1 (calculation widget), the absolute change equals the Final Value (426.82 EUR) minus the Initial value (0 EUR).
Delta
The Delta value (for the reporting period) is equal to the Absolute Change (see above) minus the external cash flows that occurred in the period.
$$\mathrm{(MVE  MVB) + \sum_{t=1} ^{n}CF_t {\qquad \text{(Eq 5)}}}$$
For example, the Delta in Figure 1 is 120.82 EUR. This value represents the actual return of securities in the portfolio. The absolute change in the portfolio is partly caused by external cash inflows (306 EUR to buy the securities). This money comes from an external source and should be subtracted from the Absolute change. They are summarized as Performance neutral Transfers in the calculation panel.
Last Day
Last Day: True TimeWeighted Rate of Return
One would assume that the Last Day is the same as the ending day of the reporting period. Unfortunately, it is not. It is the previous trading day before 'today' as can be seen when hovering over the label. Figure 1 is created on December 8, 2023. The market value of the portfolio was at that time 459.31 EUR. The last trading day before this date is 20231207 with a MV = 455.84 EUR. There are no cashflows on the last day.
The TTWOR for that day is given by Eq. 1 or (459.31  155.84)/455.84 = 0.76%
.
Last Day: Absolute Change
Equation 3 can be used to calculate the Absolute Change of the last day. It's obvious that the value equals 3.47 EUR = 459.31 EUR  155.84 EUR
.
Risk indicators
Risk refers to the possibility of losing some or all of the invested capital or not achieving the expected return from your investment. Several indicators are provided to measure the risk.
Maximum Drawdown
Maximum drawdown (MDD) refers to the largest peaktotrough decline in the performance of a portfolio or investment over a specific period, typically expressed as a percentage. It measures the extent of loss incurred from the highest point to the lowest point before a new peak is reached.
With View > Reports > Performance > Chart
you can create a graph of the cumulative performance of your portfolio, accounts, or specific securities. Figure 1 displays the portfolio performance for the reporting period 2020  2023.
The largest drawdown occurs between August 18, 2021 and March 8, 2022. Cumulative performance dropped from 22.04% to  4.12% (see Figure 2). The MDD for the reporting period of Jun 12, 2020 till June 12, 2023 is 21.44% (see Figure 1). Hovering with the mouse over the value (the label displays the reporting period) will reveal the dates.
Maximum Drawdown Duration
The MDD Duration is the worst or longest amount of time an investment has been between peaks. This is 292 days or between August 18, 2021 and June 6, 2022. The longest recovery period (duration from a low to a peak) is 90 days or between March 8, 2022 and June 6, 2022.
Volatility
Volatility in portfolio performance refers to the degree of variability in the returns of a portfolio over time. It is a measure of the risk or uncertainty associated with the portfolio's future performance. A portfolio with high volatility will have returns that fluctuate widely over time, while a portfolio with low volatility will have returns that are more consistent.
The volatility shown in Figure 2 is 31.33% (refer to Figure 1). It represents the standard deviation of daily returns during the reporting period. To be precise, it is calculated by taking the natural logarithm of (1 + daily return) and then multiplying it by the square root of the total number of days in the reporting period. Notably, weekends and holidays are excluded from this calculation. An efficient method to obtain all the daily returns is by exporting the return/volatility chart as a CSV file.
Semivariance
The Semivariance exclusively considers the negative fluctuations of an investment. The semivariance value is 22.63% (refer to Figure 1), with weekends and public holidays disregarded. Hovering over this value with the mouse provides additional information.
In instances where negative and positive fluctuations are balanced, the formula Volatility (v) = Semivariance (s) x sqrt(2) applies. For a dataset evenly distributed as depicted in Figure 2, the semivariance would be calculated as follows: s = v / sqrt(2) = 31.33% / sqrt(2) = 22.15%
.
Given that the actual semivariance is slightly lower than the estimated semivariance (22.15% < 22.63%), it suggests that the returns are not symmetrically distributed, and the negative returns slightly outnumber the positive ones.
Configuring the dashboard
By default, the Performance dashboard contains three columns: Key Indicators
, Risk Indicators
, and Calculation
(see Figure 1). Each column can contain several configurable widgets: data blocks comprising a label and a numerical value or diagram; e.g. Absolute Change or a Performance chart. Right mouse click on an empty space in a column lets you manage the widgets, e.g. adding a widget. Right clicking the widget label lets you manage the specific widget; e.g. change the data series or reporting period. (see later).
Widgets are a very powerful tool to customize the dashboard to your liking. A thorough introduction is given in a YouTube video by Finanzkoch (German spoken but English subtitles are possible). A list of very nice dashboards by fellow investors can be found at the forum.
The best way to experiment is by creating a new (empty) dashboard (see Figure 3). Click on the icon New dashboard
at the left of the reporting period. You can choose between a blank dashboard, key indicators (= the default dashboard), and Earnings (see Figure 4). To remove a dashboard from the menu, click the arrow next to the name and choose Delete
. You can move the dashboard to the first in the list (bring to front), rename the dashboard, or make a duplicate of the selected dashboard.
A dashboard contains one or more columns; the dashboard of Figure 3 contains 6 columns. You cannot see the borders of the column. Delete a column by rightclicking in the area. You can add a new column with the configure dashboard gear icon (top right). If there is already at least one column, you can also rightclick in a column area and choose New column on the left
, New column on the right
, or Duplicate column
(see Figure 5). With Column width
you can increase or decrease (step wise) the column width of the selected column. Of course, the width of the other columns is affected since the total width of the windows stays the same. With the Option Apply to All
, you can set the reporting period and the data series for all widgets in the dashboard.
The New Widget
option reveals a submenu featuring six categories of widgets (refer to Figure 5). Below is a description of each widget. Rightclicking on the widget label will reveal a context menu. Most widgets feature options such as Edit label
, Delete
, and Height
. You can drag and drop widgets within and between columns. Press the CTRL key (Windows) to duplicate instead of moving.
Common
 Heading: A single line text field.
 Description: A multiline text field with a smaller font.

Current date: The text "Current Date", followed by the system date of the computer in the language and format, set in Help > Preferences > Presentation > Language.

Exchange rate: An exchange rate in the format XXX/YYY number. Rightclick to choose the specific exchange rate, e.g. EUR/USD.

Trading activity: A graph depicting time (per year and per month) is plotted on the Xaxis, while the count of trades is represented on the Yaxis. With the context menu, you can add or remove the Yaxis, change the reporting period (by default the period of the dashboard is taken), or change the trading type (by default buy, sell, delivery inbound, and delivery outbound), and the filter (by default the entire portfolio).

Securities: Limit price exceeded: You can set a limit price per security in the security master data (see howto). If the current price (as of today; independent of the reporting period) of the security exceeds the limit price, the name of the security, the current price and the limit will be displayed, as well as displaying shares with dates
only in the past
oronly in the future
. 
Securities: Date reached: As with limit price (see above), you can link a "special" date to a security as an additional attribute. This widget will exhibit the text
Securities: Date reached (xxx)
, where xxx represents the count of securities for which today's date exceeds the date set for the security. Additionally, a list of share names and dates will be provided. This list can be sorted from the context menu. 
Securities: Latest Price. This is a single line widget with the current price of a security; which can be chosen from the context menu. The label will mention the name of the selected security.

Website: A textbox containing the content of a website; specified by an URL in the context menu. Anchors are allowed; for example
https://help.portfolioperformance.info/en/concepts/performance/#themoneyweightedrateofreturn
. The height of the widget can be increased with the context menu. 
Security: Distance from ATH: The difference of the current price with the All Time High (ATH) price of the security, measured in %. The security should be specified with the context menu.

Vertical spacer: This widget produces an invisible rectangle that occupies space. It is used to visually separate widgets (vertically). Hovering over the widget with the mouse will reveal its label. With rightclick, you can change its height.
Statement of Assets
All widgets, except the last three, are single line text widgets.

Total: The market Value of the asset at the end of the reporting period. The asset and the reporting period can be specified with the context menu.

Absolute change, Delta (for reporting period), Delta (since first transaction) : see above for definition of these terms.

Performanceneutral transfers: these transfers are explained in View > Reports > Performance > Calculation.

Invested Capital (for reporting period) and Invested Capital (since first transaction): The Invested capital in a portfolio of stocks refers to the total amount of money that has been invested in the portfolio.

Ratio: This widget computes the proportion between two assets; for instance, Share 1 / Entire Portfolio.

Statement of Assets  Chart: This widget produces a mini version of View > Reports > Statement of Assets > Chart. If multiple chart view are defined, they can be selected with the context menu.

Statement of Assets  Holdings: Pie chart which is a mini version of View > Reports > Statement of Assets > Holdings.

Taxonomies: Pie chart illustrating the proportional distribution of the taxonomy categories.
Performance widgets
The first three widgets are single line text; representing the common performance indicators.

True TimeWeighted Rate of Return (cumulative), True TimeWeighted Rate of Return (annualized), and Internal Rate of Return (IRR) are the known single line performance indicators. The data series and reporting period can be selected in the context menu.

Performance Calculation: A fully collapsed table, similar to View > Reports > Performance > Calculation; first panel. The categories cannot be expanded.

Performance Chart: This widget produces a mini version of View > Reports > Performance > Chart. With the
Aggregation
context menu, one could set the level of detail (daily, weekly, monthly, quarterly, or yearly). 
Monthly returns in a heat map: A heatmap is a graphical representation of data that uses colorcoding to visualize the performance of different stocks in a portfolio. A heatmap typically consists of a table or matrix, with each cell representing the monthly performance of a selected asset. The color of each cell corresponds to the performance of that stock.

Yearly returns in a heatmap: Each cell in the heatmap represents one year.

Portfolio Tax Rate: The ratio of taxes / (realized and unrealized capital gains + earnings  fees).

Portfolio Fee Rate: The ratio of Fees / (realized and unrealized capital gains + earnings).
Risk indicators
All five widgets are single line text widgets, representing common risk indicators. See above for an explanation of Maximum Drawdown
, Max Drawdown Duration
, Volatility
, and Semivariance
.
Sharpe ratio
is a financial metric that measures the performance of a portfolio compared to a riskfree asset, taking into account the portfolio's risk. It is calculated by subtracting the riskfree return from the portfolio's return, such as the Internal Rate of Return (IRR), and then dividing the result by the standard deviation of the portfolio's return, which is a measure of its volatility.
The riskfree return is set by default to 0%, but this can be adjusted through the context menu to reflect your current riskfree rate. As the ratio is based on volatility, complete historical prices are required. Without complete prices, the calculated volatility may be underestimated.
Earnings

Transactions overview: A table displaying the monthly earnings, comprising dividends, interest, or both individually. The year can be adjusted using a spin button located at the top of the widget.

Monthly earnings: A table displaying the monthly earnings. The year should be set with the context menu.
 Earnings per month, Earnings per quarter, and Earnings per year: Graphical representation of the earnings per month, quarter or per year.
Trades

Number of trades with profit/loss: A singleline widget presenting the total number of trades in grey color, along with an upwardpointing green arrow + counter indicating the number of trades with profit, and a downwardpointing red arrow indicating the number of trades with loss.

Trades Profit/loss: The total net value of the trades in the reporting period. Green color used for profits, red for loss. Assets and reporting period could be set with the context menu.

Average holding period: The average holding period is calculated as follows: All trades are included that were in the portfolio at some point within the selected reporting period. The holding period of each security is the difference between the time of purchase and sale. Immediate sales are assumed for positions currently held. The position weight is calculated from the purchase price of the position relative to the total number of all purchase prices. The Average holding period is the sum of the products "holding period x percentage position weight" across all positions. The metric could be displayed in days or in years.

Portfolio Turnover Rate: The Portfolio Turnover Rate measures how much (in money) of the portfolio was "replaced" throughout the holding period, as a fraction of the average portfolio value. A turnover of 100% means that all money invested in the portfolio is since then replaced.

Monthly investments, Monthly fees, and Monthly taxes: A table illustrating the total amount of investments, fees, or taxes. The rows correspond to the years, while the columns represent the months, making each cell a monthly record within a year.