Quantitative Software Engineering
Log In | Register
Skip Navigation Links.

COM component


The Quantz COM component lets you use all the Quantz toolkit functions from Visual Basic, C++ or any other language or environment that can use ActiveX controls or COM components. The library:
  • is based on the same C++ calculation library as the Excel add-in interface for consistency.

  • incorporates all the functions in the Excel toolkit. The function signatures are similar to the Excel add-in library to allow easy migration from one library version to another.

  • can use the same reference asset database as the Excel add-in or an external database.

  • can be used for:
    • research analytics or complex market analysis
    • trading book P&L, hedging and tactical risk calculations
    • calculating regular prices or term sheets for distribution
    • valulation in back office transaction systems or middle office risk systems
  • is ideal for use once the number of transactions or the quantity of data to be analysed increases.

  • can be integrated into existing trading, risk management or back office systems.
Here is a Visual Basic code example:

logTitle ("define risky curves with bond prices")

polishCurve = quantzLibrary.DefineBondPriceCurve(thisUSDRiskFreeCurve, "Poland", thisValuationDate, "Poland 04", 100.4698)
log (polishCurve)

bmwCurve = quantzLibrary.DefineBondPriceCurve(thisUSDRiskFreeCurve, "BMW", thisValuationDate, "BMW 04", 105.5455)
log (bmwCurve)

vwCurve = quantzLibrary.DefineBondPriceCurve(thisDEMRiskFreeCurve, "VW", thisValuationDate, "Volkswagen 03", 111.9946)
log (vwCurve)

phillipMorrisCurve = quantzLibrary.DefineBondPriceCurve(thisUSDRiskFreeCurve, "Phillip Morris", thisValuationDate, "Phillip Morris 05", 105.6999)
log (phillipMorrisCurve)

logTitle ("price a new cds (minimum parameters with bond)")
thisCDS = quantzLibrary.DefineCreditDefaultSwap("Poland 04 CDS", "Poland 04", polishCurve, 0.25)
log (thisCDS)

Call log(asRate("premium", quantzLibrary.GetPremium(thisCDS)))
Call log(asRate("value", quantzLibrary.GetValue(thisCDS)))

logTitle ("price a new cds (minimum parameters without bond)")
thisCDS = quantzLibrary.DefineCreditDefaultSwap("BMW 2y CDS", , bmwCurve, 0.25, , "2y")
log (thisCDS)

Call log(asRate("premium", quantzLibrary.GetPremium(thisCDS)))
Call log(asRate("value", quantzLibrary.GetValue(thisCDS)))

logTitle ("price a new cds (with all parameters)")
thisCDS = quantzLibrary.DefineCreditDefaultSwap("Volkswagen 03 CDS", "Volkswagen 03", vwCurve, 0.25, #9/25/1998#, "18m", 0, 4, "act/360", "6m", "3b", "same day", "last day")
log (thisCDS)

Call log(asRate("premium", quantzLibrary.GetPremium(thisCDS)))
Call log(asRate("value", quantzLibrary.GetValue(thisCDS)))

log ("premium cash flows")
Dim theseCashFlows() As Variant
Call quantzLibrary.GetCashflows(thisCDS, , theseCashFlows)
Call logCashFlows(theseCashFlows)
Copyright © 1998-2007 Quantz ltd. All rights reserved. Site by Synapse Communications.
Terms of Use | Trademarks | Privacy | Site Map | Advertise With Us | About Us