Hi, and thanks for the feedback.
The current CDS implementation is the one part of Strata that has been borrowed from our previous analytics library, and this operates in a less optimal way than the other asset classes which were all written from the ground up in Strata. In particular, curves are recalibrated during each PV calculation, which will contribute significantly to the performance you have observed.
We are currently in the process of completely rewriting this implementation in order to address these issues and make full use of Strata's capabilities. This work is expected to be completed over the coming weeks, and will include the ability to apply scenarios using standard curve perturbations (by implementing Strata's standard
Curve interface), rather than requiring the custom implementation shown in
Hope this helps.