(C) Copyright 2020 Everysk Technologies, Inc. This is an unpublished work containing confidential and proprietary information of Everysk Technologies, Inc. Disclosure, use, or reproduction without authorization of Everysk Technologies, Inc is prohibited.

In what follows we present a technical description of our Brazilian pricing models. This manual is divided in 6 sections, namely: 1) description of underlying risk factors, 2) pricing formulas for various local fixed income, futures and derivatives; 3) Formulas for sensitivities that will be required in the risk models, 4) Formulas for parametric risk measures, 5) Formulas and examples for stress tests and 6) liquidity measures.

**SECTION 1:** RISK FACTORS

The first step of the process is the decomposition of each security into their underlying risk factors in order to compute how these factors interact with each other.

Risk factors that can be reliably utilized for forecasting need to be independent and identically distributed (i.i.d.). For example: non-overlapping compounded returns rather than closing prices should be used as the risk factor for a stock. In what follows we describe why:

The scatterplot below shows the daily closing prices of a stock in the x-axis with the 1-day lagged prices in the y-axis. In red, we plot the location-dispersion ellipsoid to represent the covariance between the samples. It can be seen that there is a very uneven amount of variance projected to the principal axis of the ellipsoid. The series of closing prices cannot be considered independent.

Conversely, the 1-day lagged scatterplot of non-overlapping compounded returns is shown below. The corresponding location-dispersion ellipsoid is almost a circle, indicating that compounded returns are independently distributed and can be used as a risk factor in forecasting. Whereas compound returns are used for stocks (lognormal), absolute variations in level are used as risk factors for rates and credit spreads (normal)

Primitive risk factors used by Everysk include:

- Constant Maturity DI1xPRE: We store on a daily basis the following key rate duration points in the DI1xPRE curve (basis 252 days): 1 month, 6months, 1 year, 5 years, 10 years, 30 years
- Constant Maturity DI1xDOL: We store on a daily basis the following key rate duration points in the DI1xDOL curve (basis 252 days): 1 month, 6months, 1 year, 5 years, 10 years, 30 years
- Ibovespa
- BRLUSD exchange rate

Similar to other practitioners we use an exponentially weighted moving average (EWMA) of squared returns (or absolute level variations) as as an estimate of volatility for the primitive risk factors. For example: if we observe daily returns from time %%t-k%% to time %%t%%, we can describe the one-day volatility estimate as :

$$ \sigma = \large \left[\frac{1-\lambda}{1-\lambda^{k+1}}\right] \sum_{i=0}^{k} \lambda^{i} \ r_{t-i}^{2}$$

The %%\lambda%% parameter is designed to put more emphasis on more recent data and will be described below. When we assume two risk factors, the above formula takes into account the correlation:

$$ \Sigma_{ij} = \large \left[\frac{1-\lambda}{1-\lambda^{k+1}}\right] \sum_{i=0}^{k} \lambda^{i} \ r_{t-i}^{j} \ r_{t-i}^{j}$$

Here we have substituted the squared returns by the product between returns from each asset. If the assets move in the same direction, the 2 assets amplify their risk when together in a portfolio. If the assets move in opposite directions, they buffer risk. The formula above is effectively the same as:

$$\Sigma_{ij} = \large \rho_{ij} \ \sigma_{i} \ \sigma_{j} $$

The covariance matrix is just an assembly of all the cross-volatilities and correlations from the above formula.

The optimal level of decay (%% \lambda %%) in the formulas above is found by minimizing the mean squared errors between the forecasted volatility (variance) and the actual realized squared returns each day. Practitioners have found that 0.94 is a good estimate for daily volatility and 0.97 for monthly. Using a 0.94 decay puts 90% of the weight in the last 38 days of historical returns (%%log(0.10)/log(0.94)%%).

**SECTION**** 2:** PRICING FORMULAS

Before we describe the portfolio risk statistics in part 3, we need to provide a mapping between risk factors and pricing formulas. We start with pricing formulas for publicly issued fixed income:

**2.1) NTN-B: **

This is an inflation-linked bond issued by the National Treasury with a face value of R$1000 that pays semi-annual coupons of 6%, with inflation correction by the IPCA index (Broad consumer price index, published by IBGE):

$$ \large \text{PU} = \sum_{i=1}^{n} \frac{\text{\small{IPCA}}_{total} \times \text{VNE} \times \left[(1.06)^{0.5}-1\right]}{(1+ytm)^{\frac{DU_{i}}{252}}} + \frac{\text{\small{IPCA}}_{total} \times \text{VNE} }{(1+ytm)^{\frac{DU_{T}}{252}}}$$

where:

- PU: unit price
- VNE: Face value at issuance - R$1000
- ytm: yield that is found by equating the present value of cashflows to the PU
- DU: business days between pricing date and event date (coupon, amortization, maturity)
- %%\text{\small{IPCA}}_{total}%% is the inflation adjustment that depends on the date that the bond is being priced as follows:

1) Bond being priced on a date falling between the last published IPCA and the 15th of the month:

$$\text{\small{IPCA}}_{total} = \large \frac{\text{IPCA}_{t-1}}{\text{IPCA}_{0}} \ \times \left[\frac{\text{IPCA}_{t-1}}{\text{IPCA}_{t-2}}\right]^{\frac{DU_{1}}{DU_{2}}} $$

where %%\text{IPCA}_{0} %% is the value of the index prevailing in the month prior to the bond issuance and %%\text{IPCA}_{t-1} %% is the value of the index prevailing on the month prior to the calculation date and %%\text{IPCA}_{t-2} %% is the value prevailing 2 months prior to calculation date. %%DU_{1} / DU_{2}%% is the pro-rata number of days between last and current 15th of the month.

2) Bond being priced on the 15th of the month:

$$\text{\small{IPCA}}_{total} = \large \frac{\text{IPCA}_{t}}{\text{IPCA}_{0}}$$

where %%\text{IPCA}_{0} %% is the value of the index prevailing in the month prior to the bond issuance and %%\text{IPCA}_{t} %% is the value of the index prevailing on the calculation date.

3) Bond being priced on a date falling between the 15th of the month and next IPCA to be published

$$\text{\small{IPCA}}_{total} = \large \frac{\text{IPCA}_{t}}{\text{IPCA}_{0}} \ \times \left[1+\text{IPCA}_{proj}\right]^{\frac{DU_{1}}{DU_{2}}}$$

where %%\text{IPCA}_{0} %% is the value of the index prevailing in the month prior to the bond issuance and %%\text{IPCA}_{t} %% is the value of the index prevailing on the month of the calculation date and %%\text{IPCA}_{proj} %% is the projected IPCA, published by ANBIMA. %%DU_{1} / DU_{2}%% is the pro-rata number of days between last and current 15th of the month.

**2.2) NTN-C: **

This is an inflation-linked bond issued by the National Treasury with a face value of R$1000 that pays semi-annual coupons of 12%, with inflation correction by the IGP-M index (market price index, published by Fundaçāo Getulio Vargas):

$$ \text{PU} = \large \sum_{i=1}^{n} \frac{\text{\small{IGPM}}_{total} \times \text{VNE} \times \left[(1.12)^{0.5}-1\right]}{(1+ytm)^{\frac{DU_{i}}{252}}} + \frac{\text{\small{IGPM}}_{total} \times \text{VNE} }{(1+ytm)^{\frac{DU_{T}}{252}}}$$

where %%\text{\small{IGPM}}_{total}%% is calculated depending on the date that the bond is being priced, as follows:

1) Bond being priced on a date falling between the last published IGP-M and the 1st of the month:

$$\text{\small{IGPM}}_{total} = \large \frac{\text{IGPM}_{t-1}}{\text{IGPM}_{0}} \ \times \left[\frac{\text{IGPM}_{t}}{\text{IGPM}_{t-1}}\right]^{\frac{DU_{1}}{DU_{2}}} $$

where %%\text{IGPM}_{0} %% is the value of the index prevailing in the month prior to the bond issuance and %%\text{IGPM}_{t-1} %% is the value of the index prevailing on the month prior to the calculation date and %%\text{IGPM}_{t} %% is the value prevailing on the calculation date. %%DU_{1} / DU_{2}%% is the pro-rata number of days between last and current 1st of the month.

2) Bond being priced on the 1st of the month:

$$\text{\small{IGPM}}_{total} = \large \frac{\text{IGPM}_{t}}{\text{IGPM}_{0}}$$

3) Bond being priced on a date falling between the 1st of the month and next IGP-M to be published

$$\text{\small{IPCA}}_{total} = \large \frac{\text{IGPM}_{t}}{\text{IGPM}_{0}} \ \times \left[1+\text{IGPM}_{proj}\right]^{\frac{DU_{1}}{DU_{2}}}$$

where %%\text{IGPM}_{0} %% is the value of the index prevailing in the month prior to the bond issuance and %%\text{IGPM}_{t} %% is the value of the index prevailing on the calculation date and %%\text{IGPM}_{proj} %% is the value of the index forecasted by ANBIMA. %%DU_{1} / DU_{2}%% is the pro-rata number of days between last and current 1st of the month.

**2.3) NTN-F: **

This is an nominal bond issued by the National Treasury with a face value of R$1000 that pays semi-annual coupons of 10%:

$$ \text{PU} = \large \sum_{i=1}^{n} \frac{ \text{VNE} \times \left[(1.10)^{0.5}-1\right]}{(1+ytm)^{\frac{DU_{i}}{252}}} + \frac{ \text{VNE} }{(1+ytm)^{\frac{DU_{T}}{252}}}$$

where:

- PU: unit price
- VNE: Face value at issuance - R$1000
- ytm: yield that is found by equating the present value of cashflows to the PU
- DU: business days between pricing date and event date (coupon, amortization, maturity)

**2.4) LTN:**

This is a zero coupon bond issued by the National Treasury with face value of R$1000.

$$ \text{PU} = \large \frac{ \text{VNE} }{(1+ytm)^{\frac{DU_{T}}{252}}}$$

where:

- PU: unit price
- VNE: Face value at issuance - R$1000
- ytm: yield that is found by equating the present value of payout at maturity to the PU
- %%DU_{T}%%: business days between pricing date and maturity

**2.5) LFT**

This is a zero coupon floating bond issued by the National Treasury with face value of R$1000.

$$\text{PU} = \large \frac{ \text{VNE} \ \times \prod_{i=1}^{DU} \left[ (1+selic_{i})^{\frac{1}{252}}-1\right]}{(1+ytm)^{\frac{DU_{T}}{252}}}$$

where:

- PU: unit price
- VNE: Face value at issuance - R$1000
- ytm: yield that is found by equating the present value of payout at maturity to the PU
- %%DU_{T}%%: business days between pricing date and maturity
- selic: 100% of the inter bank rate accrued from issuance to calculation date

And privately issued fixed income:

Formulas below assume the most generic case of amortizing principal:

$$ \text{\small{VNA}}_{i} = \large \text{\small{VNE}} \times \left[1- \sum_{t=0}^{i-1} \small{\text{Amort}}_{t}\right] $$

where %%\text{Amort}_{i}%% are principal amortizations as percent of VNE. The initial VNA for calculating the bonds below, takes into account all the amortizations that occurred from issuance to the pricing date.

** 2.6) Debentures paying percent of DI (interbank deposit rates):**

These debentures pay a percent (pct) of projected DI. The forwards are built using forward DI contracts at specific vertices.

$$ \text{PU} = \large \sum_{i=1}^{n} \frac{\text{\small{VNA}}_{i-1} \times \text{cpn}_{i} + \left[\text{\small{VNA}}_{i-1} - \text{\small{VNA}}_{i}\right] }{(1+ytm)^{\frac{DU_{i}}{252}}}$$

where:

For first coupon

$$ \text{cpn}_{1} = \large \left[\prod_{i=1}^{n} \left[1+\left[(1+\text{\small{DI1}}_{i})^{\frac{1}{252}} -1 \right] \times pct \right] \right]\times \left[ 1+\left[(1+fwd_{1})^{\frac{1}{252}}-1\right]\times pct\right]^{DU_{1}} $$

where %%DI1%% is accrued from issuance to calculation date, and remaining coupons:

$$ \text{cpn}_{2 \dots n} = \large \frac{\left[ 1+\left[(1+fwd_{i})^{\frac{1}{252}}-1\right]\times pct\right]^{DU_{i}}}{\left[ 1+\left[(1+fwd_{i-1})^{\frac{1}{252}}-1\right]\times pct\right]^{DU_{i-1}}}$$

**2.7) Debentures paying DI + spread:**

These debentures pay a spread over projected DI. The forwards are built using forward DI contracts at specific vertices.

$$\text{PU} = \large \sum_{i=1}^{n} \frac{\text{\small{VNA}}_{i-1} \times \text{cpn}_{i} + \left[\text{\small{VNA}}_{i-1} - \text{\small{VNA}}_{i}\right] }{(1+ytm)^{\frac{DU_{i}}{252}}}$$

For first coupon:

$$ \text{cpn}_{1} = \large \left[\prod_{i=1}^{n} (1+\text{\small{DI1}}_{i})^{\frac{1}{252}}\right]\times (1+\text{spread})^{\frac{{DU}_{1}}{252}}$$

For remaining coupons:

$$ \text{cpn}_{2 \dots n} = \large (1+\text{spread})^{\frac{{DU}_{i}}{252}}$$

**2.8) Debentures paying IPCA + spread:**

These bonds pay a coupon and principal amortizations that are inflation adjusted with IPCA:

$$\text{PU} = \large \sum_{i=1}^{n} \frac{\text{\small{IPCA}}_{total} \times \left[\left[\text{VNA}_{i-1} \ \times (1+ \text{spread})^{\frac{DU_{i}}{252}}\right] + \left[\text{VNA}_{i-1} - \text{VNA}_{i-1}\right]\right]}{(1+ytm)^{\frac{DU_{i}}{252}}} $$

where %%\text{\small{IPCA}}_{total}%% is computed similarly than NTN-B above.

**2.9) CRA paying DI + spread:**

Pricing is very similar to debentures paying DI + spread. The only difference here is that because this is a securitized bond, it contains an offset for coupon payment that affects the first coupon as follows:

$$\text{cpn}_{1} = \large \left[\prod_{i=\text{def}}^{n} (1+\text{\small{DI1}}_{i})^{\frac{1}{252}}\right]\times \left[(1+fwd_{1})^{\frac{(DU_{1}-\text{def})}{252}}\ \times(1+\text{spread})^{\frac{{DU}_{1}}{252}}\right]$$

where %%\bold{def}%% is the offset in days defined in the terms of the securitization.

**2.10) CRA paying percent of DI:**

Pricing is very similar to debentures paying a percent of DI. The only difference here is that because this is a securitized bond, it contains an offset for coupon payment that affects the first coupon as follows:

$$ \text{cpn}_{1} = \large \left[\prod_{i=\bold{\text{def}}}^{n} \left[1+\left[(1+\text{\small{DI1}}_{i})^{\frac{1}{252}} -1 \right] \times pct \right] \right]\times \left[ 1+\left[(1+fwd_{1})^{\frac{1}{252}}-1\right]\times pct\right]^{(DU_{1}-\text{def})}$$

where %%\bold{def}%% is the offset in days defined in the terms of the securitization.

Other pricing formulas can be found in our white paper.

**SECTION 3:** SENSITIVITY MEASURES

We compute various sensitivity measures that are needed for parametric VaR and stress tests, namely:

**3.1) MACAULAY DURATION:**

$$ \text{Macaulay Duration} = \large \frac{\sum_{i=1}^{n} \ ({\text{CF}_{i} }/{DF_{i}}) \times DU_{i}}{Price} $$

%%\bold{CF}%% are the periodic bond cashflows, described in the previous chapter. %%\bold{DF}%% are the discount factors used to present value cashflows. For example, for the NTN-B bond, the calculation of duration in fractional years:

$$\frac{\left[\sum_{i=1}^{n} \frac{\text{\small{IPCA}}_{total} \times \text{VNE} \times \left[(1.06)^{0.5}-1\right]}{(1+ytm)^{\frac{DU_{i}}{252}}} \times \text{DU}_{i} \right] + \left[\frac{\text{\small{IPCA}}_{total} \times \text{VNE} }{(1+ytm)^{\frac{DU_{T}}{252}}} \times \text{DU}_{T}\right]}{(\text{PU} \times 252)}$$

**3.2) MODIFIED DURATION:**

$$\text{Modified Duration} = \large \frac{\small{\text{Macaulay Duration}}}{(1+\frac{\text{ytm}}{n})}$$

where:

- n is the number of cashflows
- ytm is the yield to maturity of the bond

**3.3) EFFECTIVE DURATION:**

$$ \text{Effective Duration} = \large \frac{\text{P}_{-\Delta \text{yield}}-\text{P}_{+\Delta \text{yield}}}{2\text{P}\Delta_{\text{yield}}}$$

where the shift in yield, %%\Delta_{\text{yield}}%% is +-1% for calculations. For a NTN-F, the formula for PU becomes:

$$\text{PU}_{\Delta} = \large \sum_{i=1}^{n} \frac{ \text{VNE} \times \left[(1.10)^{0.5}-1\right]}{(1+ytm+\Delta)^{\frac{DU_{i}}{252}}} + \frac{ \text{VNE} }{(1+ytm+\Delta)^{\frac{DU_{T}}{252}}}$$

**3.4) CONVEXITY:**

$$ \text{Convexity} = \large \frac{\text{P}_{-\Delta \text{yield}}- 2 \text{P} + \text{P}_{+\Delta \text{yield}}}{\overline{\Delta_{\text{yield}}}^{2}} $$

**SECTION 4:** RISK MEASURES

**4.1) PARAMETRIC VAR**

The calculation of parametric VaR requires a measure of potential P&L distribution. Let's start describing how the profit and loss (P&L) of a single security changes with changes in risk factors. For illustration purposes, lets assume that the security depends on a single risk factor:

$$ \text{P\&L} = \large \frac{\partial P}{\partial \text{f}} \ \Delta \text{f}$$

where %%\frac{\partial P}{\partial \text{f}}%% is the sensitivity of price %%\bold{P}%% to changes in the risk factor %%\bold{f}%%. If a security depends on multiple risk factors:

$$ \text{P\&L} = \large \sum_{i=0}^{n}\frac{\partial P}{\partial \text{f}_{i}} \ \Delta \text{f}_{i} $$

Or in matrix format:

$$ \text{P\&L} = \large \widetilde{P}^{T} \ \ \widetilde{f} $$

The equation above can be stated as the internal product of a vector of sensitivities (delta equivalents) and primitive risk factor returns. The portfolio P&L is obtained by simply adding the individual security P&Ls.

**FROM P&L DISTRIBUTION TO VaR**

The main objective of a parametric approach to VaR is to generate a distribution of P&L without the need of simulations and then infer statistical properties from the distribution. Because primitive risk factors are normally distributed and any linear combination of a normal distribution preserves normality (parametric model linearizes the relationship between risk factors and price variation), a reasonable P&L distribution can be drawn from the following normal distribution:

$$ \text{P\&L} \sim \large N(0 \ , \ \widetilde{P}^{T} \ \Sigma \ \widetilde{P}) $$

To calculate VaR using the parametric approach, we simply note that VaR is always a multiple of the standard deviation for a normal distribution:

$$ \text{VaR} = \large -1.64 \times \sqrt{\widetilde{P}^{T} \ \Sigma \ \widetilde{P}} \times \sqrt{T} $$

The above equation measures the "T" horizon value at risk with 95% confidence (1.64 is the 95% percentile)

Let's work an example from beginning to end, demonstrating how the parametric VaR is calculated. Assume we hold BRL 1M worth of PETR4 stock and BRL 1M face value of NTN-B, expiring on may 2035. The NTN-B has a price of R$ 4316 and the Petrobras stock R$ 23.41. This 2-asset portfolio would contain 3 risk factors, namely: Petrobras returns, 10 year and 30 year constant maturity synthetic durations.

The vector of total portfolio sensitivities, %%\widetilde{P}%%, would be (columns are assets and rows are primitive risk factors):

PETR4 | NTN-B 2035 | %%\widetilde{P}%% | |

PETR4 | R$ 1,000,000 | 0 | R$ 1,000,000 |

10 year DIxPRE | 0 | -R$ 9,739,747 | -R$ 9,739,747 |

30 year DIxPRE | 0 | -R$ 779,980 | -R$ 779,980 |

Assume the duration of the bond in years is %% \small D %%, falling between 2 key rates durations, %% \small T_1 %% and %% \small T_2 %%. The linear interpolation is calculated as %% \alpha * \text{rate}_{T1} +(1-\alpha) * \text{rate}_{T2}%%. If the duration of the NTN-B is 10.5 years:

$$ \alpha = \frac{(T_2-D)}{(T_2-T_1)} = \frac{(30.0-10.5)}{(30.0-10.0)} = 97.5\%$$

We will map 97.5% of the $1M NTN-B to a synthetic 10 year constant maturity bond and 2.5% to a 30 year. The entries in the sensitivity matrix are:

- -R$ 9,739,747 = 232(quantity) * R$ 4316 (unit price) * 10 (sensitivity) * 97.5% (blend mapping) and
- -R$ 779,980 = 232(quantity) * R$ 4316 (unit price) * 30 (sensitivity) * 2.5% (blend mapping).

The negative signs indicate the the price of the bond is inversely related to rates. If the absolute level of rates contract, the bond appreciates.

Those individual sensitivities are joined via the covariance of primitive risk factors, %%\Sigma%%. Using the returns (percent or absolute) and EWMA decay, the covariance for risk factors would be (all numbers are x 10-6):

PETR4 | 10 year DIxPRE | 30 year DIxPRE | |

PETR4 | 61 | -33 | -31 |

10 year DIxPRE | -33 | 4 | 3.2 |

30 year DIxPRE | -31 | 3.2 | 4.2 |

**4.2) INCREMENTAL VAR - IVAR**

Another important measure for portfolio risk management is Incremental VaR. IVAR measures the changes in portfolio VaR to changes in the portfolio holdings. The parametric formula is:

$$ \text{IVaR} = \left[ \begin{array}{cccc} -R\$ \ 19,388.51 && -R\$ \ 37,014.30\end{array}\right] / R\$ \ 2\text{M} = \left[ \begin{array}{cccc} -0.97\% && -1.85\%\end{array}\right]$$

**4.3) EXPECTED SHORTFALL**

$$ \text{P\&L} = \large \widetilde{P}^{T} \ \ \widetilde{f} $$

If %%\widetilde{P}^{T}%% is a vector with dimensions %%1 \times m%%, where m is the number of primitive risk factors. %%\widetilde{f}%% is a matrix of dimensions %%m \times n%% with risk factor returns where the rows are factors and columns are historical dates going back %%\bold{n}%% days.

$$ \large \text{E}\left[\text{-P\&L} \ | \ \text{-P\&L}>\text{VaR}\right]$$

**SECTION 5**: STRESS TESTS

PETR4 | NTN-B 2035 | %%\widetilde{P}%% | |

IBOV | R$ 1,260,000 | 0 | R$ 1,260,000 |

10 year DIxPRE | 0 | -R$ 9,739,747 | -R$ 9,739,747 |

30 year DIxPRE | 0 | -R$ 779,980 | -R$ 779,980 |

**5.1) B3 SHOCK MATRIX**

Current Pre-DI curve shocks (all in %):

Low | High | |

6 months | -1.20 | -1.60 | -2.25 | 1.40 | 1.75 | 2.45 |

1 year | -1.40 | -1.85 | -2.74 | 1.85 | 2.50 | 3.60 |

5 years | -1.90 | -2.60 | -3.70 | 2.45 | 3.70 | 5.25 |

(*) 3 values per cell, indicating a 1 day | 5 day | 10 day horizons.

The duration of the bond is used to interpolate/extrapolate shocks provided in the 0.5,1,5 year vertices.

Current coupon shocks (all in %):

Low | High | |

6 months | -1.75 | -1.95 | -2.20 | 3.00 | 3.50 | 4.20 |

1 year | -1.55 | -1.80 | -2.00 | 2.60 | 3.00 | 3.50 |

5 years | -1.25 | -1.70 | -2.00 | 1.80 | 2.85 | 3.50 |

(*) 3 values per cell, indicating a 1 day | 5 day | 10 day horizons.

Current BRLUSD shocks (all in %)

Low | High | |

NA | -12.00 | -14.10 | -15.30 | 12.00 | 19.60 | 24.50 |

Current Ibovespa shocks (all in %):

Low | High | |

NA | -18.00 | -28.20 | -32.40 | 18.00 | 25.20 | 27.60 |

Let's use our illustrative portfolio of R$1M NTN-B 2035 expiring in May and R$1M of Petrobras stock. If we are interested on the worst P&L for a 5 day horizon, we would perform 16 stress tests as follows:

For each position:

1. First collect the low/high shocks for 5 days: Because the duration of the NTN-B is 10.5 years, it extrapolates a 10 year and 30 year shocks from the 5 year - in our implementation it simply extends the same B3 shocks beyond 5 years:

(-2.60, +3.70),(-2.60, +3.70),(-1.70, +2.85),(-1.70, +2.85),(-14.10, +19.60),(-28.20, +25.20)

Were the tuples above represent 5-day horizon low/high shocks for: 10 year duration DIxPRE, 30 year duration DIxPRE, 10 year coupon, 30 year coupon, FX and Ibovespa.

2. Then we compute the cartesian product of all these tuples, generating 64 combinations (in a real example the combinations are much higher):

(-2.60,-2.60, -1.70, -1.70, -14.10, **-28.20**), (-2.60,-2.60, -1.70, -1.70, -14.10, **+25.20**), ...

3. Finally we compute the P&L resulting from the internal product of portfolio sensitivities and each combination above:

$$ \begin{array}{ccc} \text{PL}_{st} = \left[-R\$ 9,739,747 \ | -R\$ 779,980 \ | R\$ \ 0 \ | R\$ \ 0 \ | R\$ \ 0 \ |R\$ \ 1,260,000\right] \times \\ \\ \\ \\\left[ \begin{array}{cccc} -0.026 && -0.026 && \dots \\ -0.026 && -0.026&& \dots\\ -0.017&& -0.017&& \dots\\ -0.017&& -0.017&& \dots\\ -0.141&& -0.141&& \dots\\ -0.282&& +0.252&& \dots\end{array}\right]\end{array}$$

Resulting on a vector of P&Ls that can expressed as a percentage of portfolio NAV:

$$\text{PL}_{st} = \left[-4.09\% , \ +29.55\% , \ \dots\right]$$

The largest negative P&L is used as the final result. Certain combinations that might generate large negative P&Ls might have low probability to occur.

**5.2) HISTORICAL STRESS TESTS**

Historical stress tests are designed to probe adverse historical market events in order to model how the current portfolio might withstand similar situations in the future. For example: in general when risky assets like the Ibovespa index decline, there is a flight to quality and rates contract (prices of fixed income assets go up).

Therefore, rates spreads and the index are positively correlated. Sometimes though, this correlation breaks: more recently in mid-January 2020 the IBovespa declined 45% and instead of experiencing a contraction, the 10 year constant maturity point of the curve widened. Bonds and the index both declined, offering no diversification when together in a portfolio:

From mid January to mid March 2020, the IBovespa experienced a 46% decline:

During the same period, the 10 year rates widened almost 300 basis points, from 7.10% to 9.91%:

This historical scenario above would be very detrimental to our illustrative portfolio with NTN-B and Petrobras, as follows:

When evaluating the effect of historical stress tests that span a period of many months (or years), users should be careful when drawing direct comparisons with a B3 shock, projected from 1 to 10 days.

**SECTION 6:** LIQUIDITY

**ASSET LIQUIDITY:**

Everysk calculates what percentage of portfolio can be unwound at various user-defined liquidity vertices. The process has two steps. namely: 1) the days to unwind (DTU) is calculated for each security; and 2) the market value of the security is bucketed on the closest liquidity vertex greater or equal than the DTU

### DTU Calculations:

**6.1) Equity**

The days to unwind is calculated as:

$$ \text{DTU} = \large \frac{\text{quantity}}{\text{participation} \times \text{ADTV}} $$

where:

- quantity is the number of shares held in the portfolio
- ADTV is the average daily trading volume computed in a window of X-days, where X can be specified by user and defaults to 20 days.
- participation is a percent of total volume assumed to be available to unwind the position in full. Can be specified by user and defaults to 20%

### 6.2) Public Bonds

The days to unwind is calculated as:

$$ \text{DTU} = \large \frac{\text{quantity}}{\text{participation} \times \text{ADTV}} $$

where:

- quantity is the number of bonds held in the portfolio
- ADTV is the average daily trading volume computed in a window of X-days, where X can be specified by user and defaults to 20 days. ADTV published by Brazilian Central Bank on a daily basis
- participation is a percent of total volume assumed to be available to unwind the position in full. Can be specified by user and defaults to 10%

### 6.3) Debentures

Liquidity for debentures is based on traded volume. If a debenture hardly trades (definition of threshold below), then Everysk uses cashflow events and reduces the amount paid by the reductions published by ANBIMA:

For liquid debentures (at least 20 bonds traded on a 20 day window, i.e. averaging one trade a day), Everysk uses the average volume information instead of a liquidity reduction:

$$ \text{DTU} = \large \frac{\text{quantity}}{\text{participation} \times \text{ADTV}} $$

FLIQ1 = FLIQ2 = 0%

For illiquid debentures (less than 20 bonds traded on a 20 day window, i.e. averaging less than one trade a day), Everysk uses the maturity in fractional years times 252 days:

$$ \text{DTU} = \large \text{DU}_{T} \times 252 $$

And the amount of cash generated is multiplied by the liquidity reduction

$$\large \text{CF}_{T} \times (1-\text{FLIQ1}) \times (1-\text{FLIQ2})$$

Except for some Debentures (currently around 60) that have FLIQ2=50%, all others are considered with FLIQ2=0%

### 6.4) Funds

Supplied by user as a lookup between the fund CNPJ (EIN) and days to unwind

Mapping to a liquidity vertex:

Assume that a position of $1M in a security can be unwound in 6.8 days (DTU=6.8 calculated as per above) and the vertices are 1,5,21,42,63,126, 252 and 252+ days. Further assume that the portfolio has $2M net asset value, the row corresponding to this security in the liquidity vector would be:

1d | 5d | 21d | 42d | 63d | 126d | 252d | 252+ |

0% | 0% | 50% | 50% | 50% | 50% | 50% | 50% |

Thus, 50% of portfolio can be unwound in 21 days or longer, which is the nearest vertex greater or equal to 6.8 days. If the other $1M was represented by an illiquid debenture, with maturity in 5 years, the total liquidity matrix would be:

1d | 5d | 21d | 42d | 63d | 126d | 252d | 252+ | |

liquid | 0% | 0% | 50% | 50% | 50% | 50% | 50% | 50% |

illiquid | 0% | 0% | 0% | 0% | 0% | 0% | 0% | 25% |

Total | 0% | 0% | 50% | 50% | 50% | 50% | 50% | 75% |

The 25% for the illiquid asset takes into account the liquidity reduction of 50% for FLIQ1 and 0% for FLIQ2 as follows:

$$ \frac{\text{CF}_{i} \times (1-\text{FLIQ1}) \times (1-\text{FLIQ2})}{\text{NAV}} = \frac{\$ 1\text{M} \times (1-0.5) \times (1- 0.0)}{\$2\text{M}} = 25\%$$

**LIABILITY PROJECTIONS:**

On the liability side we use historical redemption statistics to compute daily net redemptions (redemption minus contribution) as a percent of the portfolio's net asset value - NAV ("Patrimonio Liquido") of the fund from prior date:

$$ \text{Net Redemption}_{i} = \large \frac{\text{redemptions}_{i}-\text{subscriptions}_{i}}{\text{NAV}_{i-1}}$$

Then, we compute various averages going back: 5 days, 21 days and the other vertices we used in the asset side liquidity:

$$ \text{ANRV}_{5d} = \large \frac{1}{5} \ \times \sum_{i=today-5}^{today}\frac{\text{redemptions}_{i}-\text{subscriptions}_{i}}{\text{NAV}_{i-1}}$$

Finally the values that are used in the vertices are the cumulative sums of average redemptions to that point, so the redemption at the 21 days includes all the redemptions as a percent of NAV for 5 days and 21 days and so forth.

**ASSET-LIABILITY COVERAGE:**

Once we have calculated the liquidity in the portfolio at various vertices (1d,5d,21d,...) and redemption forecasts in the same vertices, we can compute the asset-liability coverage on each vertex:

$$\large \text{Coverage}_{5d} = \large \text{Liquidity}_{5d}-\text{Projected Redemptions}_{5d}$$