2011. 6. 27. 09:36 quantlib/Implementation
Aside: Cinderella method
DefaultProbabilityTermStructure의 구현에 있어, 전에 언급했던 것과 비슷한 symmetry break가 있다는 것을 인지하였을 것이다. 이번의 경우, discount factors는 privileged role이 주어졌다는 것이다. 이 경우 hazard rates는 학대당하는 stepsister의 역할이 주어졌다; survival 혹은 default density를 위해 선언된 비슷한 함수들을 제외하고 hazardRateImpl은 존재하지 않는다. 과거에 구현된 버젼을 보면 symmetric이었다; 이러한 변화에 대한 이유를 설명할수 없다 - 이번것은 good idea라고 확신하지만.
효과는 HazardRateStructure adapter를 파생하는 클래스는 hazardRateImpl을 직접 호출할수 없기 때문에, hazard rates를 리턴하기 위해 some hoops를 고려해야만한다; 대신에 default 구현을 사용해야만 하며 ratio of default density와 survival probability를 리턴해야만 한다. 불행히도 현재 우리의 요정 대모조차도 기존의 코드를 break하는 위험 없이는 이것을 바꿀수 없다.
효과는 HazardRateStructure adapter를 파생하는 클래스는 hazardRateImpl을 직접 호출할수 없기 때문에, hazard rates를 리턴하기 위해 some hoops를 고려해야만한다; 대신에 default 구현을 사용해야만 하며 ratio of default density와 survival probability를 리턴해야만 한다. 불행히도 현재 우리의 요정 대모조차도 기존의 코드를 break하는 위험 없이는 이것을 바꿀수 없다.
'quantlib > Implementation' 카테고리의 다른 글
Aside: late payments (0) | 2011.06.27 |
---|---|
4. Cash flows and coupons (0) | 2011.06.27 |
Aside: a friend in need (0) | 2011.06.20 |
TTP: Template template parameter (0) | 2011.06.20 |
Aside: twin classes (0) | 2011.06.20 |