Share Brilliantly
fixed income analytics
let cashflows = [{time:1, value:10},{time:2, value:10},{time:3, value:110}];
let price = 95;
let ratecurve = function(date){
return 0.1
}
let discountValue = function(){
let value = 0;
cashflows.forEach(p=>{
let rate = ratecurve(p.time);
value += Math.exp(-1*rate*p.time) * p.value;
});
return value;
}
let spreadValue = function(spread){
let value = 0;
cashflows.forEach(p=>{
let rate = ratecurve(p.time) + spread;
value += Math.exp(-1*rate*p.time) * p.value;
});
return value;
}
let diff = function(spread){
return spreadValue(spread) - price;
}
let cashflows = [{time:1, value:10},{time:2, value:10},{time:3, value:110}];
let sp = await import('/lib/finance/fixed-income/spread/v1.0.0/spread.mjs');
let price = 95;
let ratecurve = function(date){
return 0.1
}
let test = sp.staticSpread(price,cashflows);
Try it!