summaryrefslogtreecommitdiffstats
path: root/cdsone.pyx
diff options
context:
space:
mode:
Diffstat (limited to 'cdsone.pyx')
-rw-r--r--cdsone.pyx71
1 files changed, 0 insertions, 71 deletions
diff --git a/cdsone.pyx b/cdsone.pyx
deleted file mode 100644
index 13c517e..0000000
--- a/cdsone.pyx
+++ /dev/null
@@ -1,71 +0,0 @@
-from cdsone cimport (JpmcdsCdsoneUpfrontCharge,
- JpmcdsCdsoneSpread, JpmcdsStringToStubMethod)
-from curve cimport YieldCurve
-from date cimport JpmcdsStringToDateInterval, pydate_to_TDate, dcc
-
-cdef int SUCCESS = 0
-
-def upfront_charge(date, value_date, benchmark_start_date, stepin_date,
- start_date, end_date, double coupon_rate,
- YieldCurve yc,
- double spread,
- double recovery_rate,
- TBoolean pay_accrued_at_start = True,
- TBoolean pay_accrued_on_default = True):
-
- cdef:
- TDate today = pydate_to_TDate(date)
- TDate value_date_c = pydate_to_TDate(value_date)
- TDate benchmark_start_date_c = pydate_to_TDate(benchmark_start_date)
- TDate stepin_date_c = pydate_to_TDate(stepin_date)
- TDate start_date_c = pydate_to_TDate(start_date)
- TDate end_date_c = pydate_to_TDate(end_date)
- double result
- TStubMethod stub
- TDateInterval ivl
- char* routine = "upfront_charge"
-
- if JpmcdsStringToStubMethod(b"f/s", &stub) != SUCCESS:
- raise ValueError("can't convert stub")
- if JpmcdsStringToDateInterval(b"3M", routine, &ivl) != SUCCESS:
- raise ValueError("can't convert to date interval")
- if JpmcdsCdsoneUpfrontCharge(today, value_date_c, benchmark_start_date_c, stepin_date_c,
- start_date_c, end_date_c, coupon_rate, pay_accrued_on_default,
- &ivl, &stub,
- dcc("ACT/360"), b'F', b"None", yc._thisptr, spread, recovery_rate,
- pay_accrued_at_start, &result) == SUCCESS:
- return result
- else:
- raise ValueError("computation failed")
-
-def spread_from_upfront(date, value_date, benchmark_start_date, stepin_date,
- start_date, end_date, double coupon_rate,
- YieldCurve yc,
- double upfront,
- double recovery_rate,
- TBoolean pay_accrued_at_start = True,
- TBoolean pay_accrued_on_default = True):
- cdef:
- TDate today = pydate_to_TDate(date)
- TDate value_date_c = pydate_to_TDate(value_date)
- TDate benchmark_start_date_c = pydate_to_TDate(benchmark_start_date)
- TDate stepin_date_c = pydate_to_TDate(stepin_date)
- TDate start_date_c = pydate_to_TDate(start_date)
- TDate end_date_c = pydate_to_TDate(end_date)
- double result
- TStubMethod stub
- TDateInterval ivl
- char* routine = "upfront_charge"
-
- if JpmcdsStringToStubMethod(b"f/s", &stub) != SUCCESS:
- raise ValueError("can't convert stub")
- if JpmcdsStringToDateInterval(b"3M", routine, &ivl) != SUCCESS:
- raise ValueError("can't convert to date interval")
- if JpmcdsCdsoneSpread(today, value_date_c, benchmark_start_date_c, stepin_date_c,
- start_date_c, end_date_c, coupon_rate, pay_accrued_on_default,
- &ivl, &stub,
- dcc("ACT/360"), b'F', b"None", yc._thisptr, upfront, recovery_rate,
- pay_accrued_at_start, &result) == SUCCESS:
- return result
- else:
- raise ValueError("computation failed")