SAS Documentation
SASĀ® Solution for Stress Testing
Reference manual - version 08.2021
Loading...
Searching...
No Matches
market_risk_factors2.sas
1/*region Counterparty data: CDS etc */
2
3 /* Curve maturities for model based cpty data */
4Declare riskfactors=(Curve_1Y num var maturity = 1 year category = CurveMat label = 'Curve Maturity 1 Year' group='Curve Maturity' mlevel=ratio,
5 Curve_2Y num var maturity = 2 year category = CurveMat label = 'Curve Maturity 2 Year' group='Curve Maturity' mlevel=ratio,
6 Curve_3Y num var maturity = 3 year category = CurveMat label = 'Curve Maturity 3 Year' group='Curve Maturity' mlevel=ratio,
7 Curve_4Y num var maturity = 4 year category = CurveMat label ='Curve Maturity 4 Year' group='Curve Maturity' mlevel=ratio,
8 Curve_5Y num var maturity = 5 year category = CurveMat label = 'Curve Maturity 5 Year' group='Curve Maturity' mlevel=ratio,
9 Curve_6Y num var maturity = 6 year category = CurveMat label = 'Curve Maturity 6 Year' group='Curve Maturity' mlevel=ratio,
10 Curve_7Y num var maturity = 7 year category = CurveMat label = 'Curve Maturity 7 Year' group='Curve Maturity' mlevel=ratio,
11 Curve_8Y num var maturity = 8 year category = CurveMat label ='Curve Maturity 8 Year' group='Curve Maturity' mlevel=ratio,
12 Curve_9Y num var maturity = 9 year category = CurveMat label = 'Curve Maturity 9 Year' group='Curve Maturity' mlevel=ratio,
13 Curve_10Y num var maturity = 10 year category = CurveMat label = 'Curve Maturity 10 Year' group='Curve Maturity' mlevel=ratio
14);
15array CURVE_MAT var category=CurveMat group='Curve Maturity'
16 label= "Counterparty Model Based Curve Maturities"
17 elements= (Curve_1Y Curve_2Y Curve_3Y Curve_4Y Curve_5Y Curve_6Y Curve_7Y Curve_8Y Curve_9Y Curve_10Y)
18 refmap=(curve_name_ref='CURVE_MAT');
19 ;
20
21 /* Counterparty CDS premias, bond spreads or hazard rates */
22Declare riskfactors=(A_cds1m num var maturity = 1 month category = CDS label = 'Cpty A CDS 1 Month' group='Counterparty CDS premiums' mlevel=ratio,
23 A_cds3m num var maturity = 3 month category = CDS label = 'Cpty A CDS 3 Month' group='Counterparty CDS premiums' mlevel=ratio,
24 A_cds6m num var maturity = 6 month category = CDS label = 'Cpty A CDS 6 Month' group='Counterparty CDS premiums' mlevel=ratio,
25 A_cds1y num var maturity = 1 year category = CDS label ='Cpty A CDS 1 Year' group='Counterparty CDS premiums' mlevel=ratio,
26 A_cds5y num var maturity = 5 year category = CDS label = 'Cpty A CDS 5 Year' group='Counterparty CDS premiums' mlevel=ratio,
27 A_cds10y num var maturity = 10 year category = CDS label = 'Cpty A CDS 10 Year' group='Counterparty CDS premiums' mlevel=ratio
28);
29
30
31array CPTY_A var category=CDS group='Counterparty CDS Curve'
32 label= "Counterparty A CDS curve"
33 elements= (A_cds1m A_cds3m A_Cds6m A_cds1y A_cds5y A_cds10y)
34 refmap=(curve_name_ref='CPTY_A');
35 ;
36
37Declare riskfactors=(B_cds1m num var maturity = 1 month category = CDS label = 'Cpty B CDS 1 Month' group='Counterparty CDS premiums' mlevel=ratio,
38 B_cds3m num var maturity = 3 month category = CDS label = 'Cpty B CDS 3 Month' group='Counterparty CDS premiums' mlevel=ratio,
39 B_cds6m num var maturity = 6 month category = CDS label = 'Cpty B CDS 6 Month' group='Counterparty CDS premiums' mlevel=ratio,
40 B_cds1y num var maturity = 1 year category = CDS label ='Cpty B CDS 1 Year' group='Counterparty CDS premiums' mlevel=ratio,
41 B_cds5y num var maturity = 5 year category = CDS label = 'Cpty B CDS 5 Year' group='Counterparty CDS premiums' mlevel=ratio,
42 B_cds10y num var maturity = 10 year category = CDS label = 'Cpty B CDS 10 Year' group='Counterparty CDS premiums' mlevel=ratio
43);
44
45
46array CPTY_B var category=CDS group='Counterparty CDS Curve'
47 label= "Counterparty B CDS curve"
48 elements= (B_cds1m B_cds3m B_Cds6m B_cds1y B_cds5y B_cds10y)
49 refmap=(curve_name_ref='CPTY_B');
50 ;
51
52
53Declare riskfactors=(C_cds1m num var maturity = 1 month category = CDS label = 'Cpty C CDS 1 Month' group='Counterparty CDS premiums' mlevel=ratio,
54 C_cds3m num var maturity = 3 month category = CDS label = 'Cpty C CDS 3 Month' group='Counterparty CDS premiums' mlevel=ratio,
55 C_cds6m num var maturity = 6 month category = CDS label = 'Cptyy C CDS 6 Month' group='Counterparty CDS premiums' mlevel=ratio,
56 C_cds1y num var maturity = 1 year category = CDS label ='Cpty C CDS 1 Year' group='Counterparty CDS premiums' mlevel=ratio,
57 C_cds5y num var maturity = 5 year category = CDS label = 'Cpty C CDS 5 Year' group='Counterparty CDS premiums' mlevel=ratio,
58 C_cds10y num var maturity = 10 year category = CDS label = 'CDS 10 Year' group='Counterparty CDS premiums' mlevel=ratio
59);
60
61
62array CPTY_C var category=CDS group='Counterparty CDS Curve'
63 label= "Counterparty C CDS curve"
64 elements= (C_cds1m C_cds3m C_Cds6m C_cds1y C_cds5y C_cds10y)
65 refmap=(curve_name_ref='CPTY_C');
66 ;
67Declare riskfactors=(D_cds1m num var maturity = 1 month category = CDS label = 'Cpty D CDS 1 Month' group='Counterparty CDS premiums' mlevel=ratio,
68 D_cds3m num var maturity = 3 month category = CDS label = 'Cpty D CDS 3 Month' group='Counterparty CDS premiums' mlevel=ratio,
69 D_cds6m num var maturity = 6 month category = CDS label = 'Cpty D CDS 6 Month' group='Counterparty CDS premiums' mlevel=ratio,
70 D_cds1y num var maturity = 1 year category = CDS label ='Cpty D CDS 1 Year' group='Counterparty CDS premiums' mlevel=ratio,
71 D_cds5y num var maturity = 5 year category = CDS label = 'Cpty D CDS 5 Year' group='Counterparty CDS premiums' mlevel=ratio,
72 D_cds10y num var maturity = 10 year category = CDS label = 'Cpty D CDS 10 Year' group='Counterparty CDS premiums' mlevel=ratio
73);
74
75
76array CPTY_D var category=CDS group='Counterparty CDS Curve'
77 label= "Counterparty D CDS curve"
78 elements= (D_cds1m D_cds3m D_Cds6m D_cds1y D_cds5y D_cds10y)
79 refmap=(curve_name_ref='CPTY_D');
80 ;
81
82Declare riskfactors=(E_spread1m num var maturity = 1 month category = CDS label = 'Cpty E Spread 1 Month' group='Counterparty Credit spreads' mlevel=ratio,
83 E_spread3m num var maturity = 3 month category = CDS label = 'Cpty E Spread 3 Month' group='Counterparty Credit spreads' mlevel=ratio,
84 E_spread6m num var maturity = 6 month category = CDS label = 'Cpty E Spread 6 Month' group='Counterparty Credit spreads' mlevel=ratio,
85 E_spread1y num var maturity = 1 year category = CDS label ='Cpty E Spread 1 Year' group='Counterparty Credit spreads' mlevel=ratio,
86 E_spread5y num var maturity = 5 year category = CDS label = 'Cpty E Spread 5 Year' group='Counterparty Credit spreads' mlevel=ratio,
87 E_spread10y num var maturity = 10 year category = CDS label = 'Cpty E Spread 10 Year' group='Counterparty Credit spreads' mlevel=ratio
88);
89
90
91array CPTY_E var category=CDS group='Counterparty Credit Spread Curve'
92 label= "Counterparty E spread curve"
93 elements= (E_spread1m E_spread3m E_spread6m E_spread1y E_spread5y E_spread10y)
94 refmap=(curve_name_ref='CPTY_E');
95 ;
96
97Declare riskfactors=(F_pd1m num var maturity = 1 month category = CDS label = 'Cpty F Hazard 1 Month' group='Counterparty Hazard rates' mlevel=ratio,
98 F_pd3m num var maturity = 3 month category = CDS label = 'Cpty F Hazard 3 Month' group='Counterparty Hazard rates' mlevel=ratio,
99 F_pd6m num var maturity = 6 month category = CDS label = 'Cpty F Hazard 6 Month' group='Counterparty Hazard rates' mlevel=ratio,
100 F_pd1y num var maturity = 1 year category = CDS label ='Cpty F Hazard 1 Year' group='Counterparty Hazard rates' mlevel=ratio,
101 F_pd5y num var maturity = 5 year category = CDS label = 'Cpty F Hazard 5 Year' group='Counterparty Hazard rates' mlevel=ratio,
102 F_pd10y num var maturity = 10 year category = CDS label = 'Cpty F Hazard 10 Year' group='Counterparty Hazard rates' mlevel=ratio
103);
104
105
106array CPTY_F var category=CDS group='Counterparty Hazard Curve'
107 label= "Counterparty F hazard curve"
108 elements= (F_pd1m F_pd3m F_pd6m F_pd1y F_pd5y F_pd10y)
109 refmap=(curve_name_ref='CPTY_F');
110 ;
111
112/*endregion*/
113
114
115/*region FX forward rates */
116declare riskfactors=(USD_JPY1m num fx fromcur = usd tocur = jpy maturity = 1 month category = FX label = 'USD/JPY 1-M Forward exchange rate' group='FX Forward' mlevel=ratio,
117 USD_JPY3m num fx fromcur = usd tocur = jpy maturity = 3 month category = FX label = 'USD/JPY 3-M Forward exchange rate' group='FX Forward' mlevel=ratio,
118 USD_JPY6m num fx fromcur = usd tocur = jpy maturity = 6 month category = FX label = 'USD/JPY 6-M Forward exchange rate' group='FX Forward' mlevel=ratio,
119 USD_JPY1y num fx fromcur = usd tocur = jpy maturity = 1 year category = FX label = 'USD/JPY 1-Y Forward exchange rate' group='FX Forward' mlevel=ratio,
120 USD_EUR1m num fx fromcur = usd tocur = eur maturity = 1 month category = FX label = 'USD/EUR 1-M Forward exchange rate' group='FX Forward' mlevel=ratio,
121 USD_EUR3m num fx fromcur = usd tocur = eur maturity = 3 month category = FX label = 'USD/EUR 3-M Forward exchange rate' group='FX Forward' mlevel=ratio,
122 USD_EUR6m num fx fromcur = usd tocur = eur maturity = 6 month category = FX label = 'USD/EUR 6-M Forward exchange rate' group='FX Forward' mlevel=ratio,
123 USD_EUR1y num fx fromcur = usd tocur = eur maturity = 1 year category = FX label = 'USD/EUR 1-Y Forward exchange rate' group='FX Forward' mlevel=ratio
124
125);
126
127array fx_usd_jpy fx fromcur = usd tocur = jpy category=FX group='FX forward Curve'
128 label = "FX Forward Curve USD to JPY"
129 elements = (USD_JPY1m USD_JPY3m USD_JPY6m USD_JPY1y)
130 refmap= (fx_curve='USD:JPY');
131
132array fx_usd_eur fx fromcur = usd tocur = eur category=FX group='FX forward Curve'
133 label = "FX Forward Curve USD to EUR"
134 elements = (USD_EUR1m USD_EUR3m USD_EUR6m USD_EUR1y)
135 refmap= (fx_curve='USD:EUR');
136
137
138
139/*endregion*/
140
141/*region Credit curves */
142declare riskfactors=(AAAspread1M num ir currency=usd category=Creditcurve maturity=1 month label='1 month AAA Credit Spread' group='Credit Spread' mlevel=ratio,
143 AAAspread3M num ir currency=usd category=Creditcurve maturity=3 month label='3 month AAA Credit Spread' group='Credit Spread' mlevel=ratio,
144 AAAspread6M num ir currency=usd category=Creditcurve maturity=6 month label='6 month AAA Credit Spread' group='Credit Spread' mlevel=ratio,
145 AAAspread12M num ir currency=usd category=Creditcurve maturity=12 month label='12 month AAA Credit Spread' group='Credit curve' mlevel=ratio,
146 AAspread1M num ir currency=usd category=Creditcurve maturity=1 month label='1 month AA Credit Spread' group='Credit Spread' mlevel=ratio,
147 AAspread3M num ir currency=usd category=Creditcurve maturity=3 month label='3 month AA Credit Spread' group='Credit Spread' mlevel=ratio,
148 AAspread6M num ir currency=usd category=Creditcurve maturity=6 month label='6 month AA Credit Spread' group='Credit Spread' mlevel=ratio,
149 AAspread12M num ir currency=usd category=Creditcurve maturity=12 month label='12 month AA Credit Spread' group='Credit Spread' mlevel=ratio,
150 Aspread1M num ir currency=usd category=Creditcurve maturity=1 month label='1 month A Credit Spread' group='Credit Spread' mlevel=ratio,
151 Aspread3M num ir currency=usd category=Creditcurve maturity=3 month label='3 month A Credit Spread' group='Credit Spread' mlevel=ratio,
152 Aspread6M num ir currency=usd category=Creditcurve maturity=6 month label='6 month A Credit Spread' group='Credit Spread' mlevel=ratio,
153 Aspread12M num ir currency=usd category=Creditcurve maturity=12 month label='12 month A Credit Spread' group='Credit Spread' mlevel=ratio,
154 BBBspread1M num ir currency=usd category=Creditcurve maturity=1 month label='1 month BBB Credit Spread' group='Credit Spread' mlevel=ratio,
155 BBBspread3M num ir currency=usd category=Creditcurve maturity=3 month label='3 month BBB Credit Spread' group='Credit Spread' mlevel=ratio,
156 BBBspread6M num ir currency=usd category=Creditcurve maturity=6 month label='6 month BBB Credit Spread' group='Credit Spread' mlevel=ratio,
157 BBBspread12M num ir currency=usd category=Creditcurve maturity=12 month label='12 month BBB Credit Spread' group='Credit Spread' mlevel=ratio,
158 BBspread1M num ir currency=usd category=Creditcurve maturity=1 month label='1 month BB Credit Spread' group='Credit Spread' mlevel=ratio,
159 BBspread3M num ir currency=usd category=Creditcurve maturity=3 month label='3 month BB Credit Spread' group='Credit Spread' mlevel=ratio,
160 BBspread6M num ir currency=usd category=Creditcurve maturity=6 month label='6 month BB Credit Spread' group='Credit Spread' mlevel=ratio,
161 BBspread12M num ir currency=usd category=Creditcurve maturity=12 month label='12 month BB Credit Spread' group='Credit Spread' mlevel=ratio,
162 Bspread1M num ir currency=usd category=Creditcurve maturity=1 month label='1 month B Credit Spread' group='Credit Spread' mlevel=ratio,
163 Bspread3M num ir currency=usd category=Creditcurve maturity=3 month label='3 month B Credit Spread' group='Credit Spread' mlevel=ratio,
164 Bspread6M num ir currency=usd category=Creditcurve maturity=6 month label='6 month B Credit Spread' group='Credit Spread' mlevel=ratio,
165 Bspread12M num ir currency=usd category=Creditcurve maturity=12 month label='12 month B Credit Spread' group='Credit Spread' mlevel=ratio,
166 CCCspread1M num ir currency=usd category=Creditcurve maturity=1 month label='1 month CCC Credit Spread' group='Credit Spread' mlevel=ratio,
167 CCCspread3M num ir currency=usd category=Creditcurve maturity=3 month label='3 month CCC Credit Spread' group='Credit Spread' mlevel=ratio,
168 CCCspread6M num ir currency=usd category=Creditcurve maturity=6 month label='6 month CCC Credit Spread' group='Credit Spread' mlevel=ratio,
169 CCCspread12M num ir currency=usd category=Creditcurve maturity=12 month label='12 month CCC Credit Spread' group='Credit Spread' mlevel=ratio
170);
171
172array AAA_Spread ir currency=usd category=Creditcurve group='Credit Spread Curve'
173 elements=(AAAspread1m AAAspread3m AAAspread6m AAAspread12m)
174 label="AAA Spread Curve"
175 refmap=(spread_curve='USD:AAA');
176 array AA_Spread ir currency=usd category=Creditcurve group='Credit Spread Curve'
177 elements=(AAspread1m AAspread3m AAspread6m AAspread12m)
178 label="AA Spread Curve"
179 refmap=(spread_curve='USD:AA');
180 array A_Spread ir currency=usd category=Creditcurve group='Credit Spread Curve'
181 elements=(Aspread1m Aspread3m Aspread6m Aspread12m)
182 label="A Spread Curve"
183 refmap=(spread_curve='USD:A');
184 array BBB_Spread ir currency=usd category=Creditcurve group='Credit Spread Curve'
185 elements=(BBBspread1m BBBspread3m BBBspread6m BBBspread12m)
186 label="BBB Spread Curve"
187 refmap=(spread_curve='USD:BBB');
188 array BB_Spread ir currency=usd category=Creditcurve group='Credit Spread Curve'
189 elements=(BBspread1m BBspread3m BBspread6m BBspread12m)
190 label="BB Spread Curve"
191 refmap=(spread_curve='USD:BB');
192 array B_Spread ir currency=usd category=Creditcurve group='Credit Spread Curve'
193 elements=(Bspread1m Bspread3m Bspread6m Bspread12m)
194 label="B Spread Curve"
195 refmap=(spread_curve='USD:B');
196 array CCC_Spread ir currency=usd category=Creditcurve group='Credit Spread Curve'
197 elements=(CCCspread1m CCCspread3m CCCspread6m CCCspread12m)
198 label="CCC Spread Curve"
199 refmap=(spread_curve='USD:CCC');
200
201
202/*endregion*/
203
204
205/*region risk distortion measures */
206 distmeasure myvar funcname=_var_ funcparm=0.95 desc="my VaR95 measure" distribution=all loss_measure;
207 distmeasure myvar95 funcname=var95 desc="my second VaR95 measure" distribution=all loss_measure;
208 distmeasure myes95 funcname=cvar95 desc="my CVaR hardcoded measure" distribution=all loss_measure;
209 distmeasure myes funcname=cvar funcparm=0.95 desc="my CVaR alpha=0.95" distribution=all loss_measure;
210 distmeasure mydbm funcname=dual_block_minima funcparm=0.5 desc="Dual Block Minima" distribution=all loss_measure;
211 distmeasure mybm funcname=block_maxima funcparm=2 desc="Block Maxima" distribution=all loss_measure;
212 distmeasure mywangq funcname=Wang_Transform_q funcparm=1.96 desc="Wang q" distribution=all loss_measure;
213 distmeasure mywangp funcname=Wang_Transform_p funcparm=0.975 desc="Wang p" distribution=all loss_measure;
214
215/*endregion */