I want to include a measure I saw in a paper called Krüger, S./Rösch, D. (2017): Downturn LGD modeling using quantile regression, Journal of Banking & Finance, 79, p. 42-56. This measure is like R² and evaluates predicted values but separated for each quantile (see picture)

In the end I want to plot R

^{1}on the y-axis and the quantiles on the x-axis to illustrate which of my models (reg, fracreg, fmm, qr) performs the best over the entire distribution.

I thought about a loop that saves R

^{1}(1) to R

^{1}(99) in a matrix as shown below for the OLS regression. My results are not quite what I expected so I’m seeking for help. Since I’m fairly new to Stata I’m not sure if I translated the formula the right way or if there is a smarter way to do so.

Code:

*OLS matrix R1=J(100,2,.) gen OLSquantres = . forvalues i=1/99{ gen ptau1 = . replace ptau1 = (`i'/100)*OLSres if OLSres>=0 replace ptau1 = (1-(`i'/100))*abs(OLSres) if OLSres<0 qui sum ptau1 scalar ptau1_sum = r(sum) _pctile $y1, p(`i') replace OLSquantres = $y1 - r(r1) gen ptau2 = . replace ptau2 = (`i'/100)*OLSquantres if OLSquantres>=0 replace ptau2 = (1-(`i'/100))*abs(OLSquantres) if OLSquantres<0 qui sum ptau2 scalar ptau2_sum = r(sum) drop ptau1 drop ptau2 matrix R1[`i',2] = 1- (ptau1_sum/ptau2_sum) matrix R1[`i',1] = `i' }

Kind regards

Steffen