Description
BondIndexData.gms: Data for the Bond Index Model. Consiglio, Nielsen and Zenios. PRACTICAL FINANCIAL OPTIMIZATION: A Library of GAMS Models, Section 8.2 Last modified: Apr 2008.
Category : GAMS FIN library
Mainfile : BondIndexData.gms includes : BondsUniverse.inc BondPricesAccrualsUSD.inc BondPricesAccrualsDEM.inc BondPricesAccrualsCHF.inc InitialBondsAccruals.inc RiskFreeReinvestmentRates.inc Probabilities.inc IndexReturns.inc ExchangeRates-BondIndex.inc
$title Data for the Bond Index Model
* BondIndexData.gms: Data for the Bond Index Model.
* Consiglio, Nielsen and Zenios.
* PRACTICAL FINANCIAL OPTIMIZATION: A Library of GAMS Models, Section 8.2
* Last modified: Apr 2008.
* The include files below were written by a simulation program
* an will be collected in a GDX container for further
* processing with GAMS.
$inlineCom /* */
SET Scenarios Scenarios set /SS_1 * SS_500/;
ALIAS(Scenarios,l,SS);
$offListing
$include "BondsUniverse.inc"
$include "BondPricesAccrualsUSD.inc"
$include "BondPricesAccrualsDEM.inc"
$include "BondPricesAccrualsCHF.inc"
$include "InitialBondsAccruals.inc"
$include "RiskFreeReinvestmentRates.inc"
$include "Probabilities.inc"
$include "IndexReturns.inc"
$include "ExchangeRates-BondIndex.inc"
$onListing
SETS
Currencies Currencies set / USD US Dollar
DEM German Mark
CHF Swiss Frank /
Bonds Bonds set / #USDBND, #DEMBND, #CHFBND /;
ALIAS(Currencies,j);
ALIAS(Bonds,i);
SET
JxI(j,i) Bonds by Currencies / USD.#USDBND, DEM.#DEMBND, CHF.#CHFBND /;
PARAMETERS
ExchangeRates0(j) Exchange rate (USD against XXX) at settlement
ExchangeRates1(j,l) Exchange rate scenarios ( USD against XXX ) at the end of the first stage
Price0(i) Prices today (in unit of face value)
Price1(i,l) Prices at the end of the first stage (in unit of face value)
InitialHoldings(i) Initial bond holdings
Accruals0(i) Bonds initial accruals
Accruals1(i,l) Accruals for the first stage (in unit of face value)
Outstanding(i,l) Outstanding face for the first stage
ReinvestmentRate(l) Reinvestment rate scenarios ( plus one ) for USD
IndexReturns(l) Return of the Salomon index under each scenario
pr(l) Scenario probability;
ExchangeRates0('USD') = 1;
ExchangeRates0('DEM') = USDDEM0;
ExchangeRates0('CHF') = USDCHF0;
ExchangeRates1('USD',l) = 1;
ExchangeRates1('DEM',l) = USDDEM1(l);
ExchangeRates1('CHF',l) = USDCHF1(l);
ReinvestmentRate(l) = RvstRt1(l);
IndexReturns(l) = IdxRet1(l);
* Domain checking is ignored between the commands $onUni and $offUni.
$onUni
Price0(i) = USDPric0(i) + DEMPric0(i) + CHFPric0(i);
Price1(i,l) = USDPric1(i,l) + DEMPric1(i,l) + CHFPric1(i,l);
InitialHoldings(i) = USDInitH(i) + DEMInitH(i) + CHFInitH(i);
Accruals0(i) = USDInitAccr(i) + DEMInitAccr(i) + CHFInitAccr(i);
Accruals1(i,l) = USDaccr(i,l) + DEMaccr(i,l) + CHFaccr(i,l);
Outstanding(i,l) = USDoutst(i,l) + DEMoutst(i,l) + CHFoutst(i,l);
$offUni
EXECUTE_UNLOAD 'BondIndexData';