summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuillaume Horel <guillaume.horel@gmail.com>2018-04-18 13:03:24 -0400
committerGuillaume Horel <guillaume.horel@gmail.com>2018-04-18 13:23:30 -0400
commit4afcece1ec84ffc3ec562e4213ae5e96862c457d (patch)
tree10bc2caffa8bbd2572067898a27c52585109f9d7
parent731431f988bac3451384e91a3048f8eb0721721f (diff)
downloadpyisda-4afcece1ec84ffc3ec562e4213ae5e96862c457d.tar.gz
reorg enum
-rw-r--r--pyisda/curve.pyx9
-rw-r--r--pyisda/date.pxd15
-rw-r--r--pyisda/date.pyx2
-rw-r--r--pyisda/utils.py3
4 files changed, 16 insertions, 13 deletions
diff --git a/pyisda/curve.pyx b/pyisda/curve.pyx
index 4f83f71..b5266e0 100644
--- a/pyisda/curve.pyx
+++ b/pyisda/curve.pyx
@@ -1,7 +1,8 @@
from libc.math cimport log1p, log
from date cimport (JpmcdsStringToDateInterval, pydate_to_TDate, dcc, TMonthDayYear,
JpmcdsDateIntervalToFreq, JpmcdsDateFwdThenAdjust, TDate_to_pydate,
- JpmcdsDateFromBusDaysOffset, JpmcdsStringToDayCountConv, ACT_360)
+ JpmcdsDateFromBusDaysOffset, JpmcdsStringToDayCountConv, ACT_360,
+ BadDay, FOLLOW, MODIFIED, NONE)
from date import dcc_tostring
from date cimport _previous_twentieth, _roll_date
from cdsone cimport JpmcdsStringToStubMethod, TStubMethod
@@ -28,12 +29,6 @@ cdef extern from "numpy/arrayobject.h":
cdef int SUCCESS = 0
-cpdef public enum BadDay:
- FOLLOW = <long>'F'
- PREVIOUS = <long>'P'
- NONE = <long>'N'
- MODIFIED = <long>'M'
-
cdef inline shared_ptr[TCurve] make_shared(TCurve* ptr) nogil:
return shared_ptr[TCurve](ptr, JpmcdsFreeTCurve)
diff --git a/pyisda/date.pxd b/pyisda/date.pxd
index acb191f..9755ced 100644
--- a/pyisda/date.pxd
+++ b/pyisda/date.pxd
@@ -52,10 +52,17 @@ cdef extern from "isda/busday.h" nogil:
long method, # See ldate.h
char *holidayFile, # Filename w/ Holidays
TDate *outDate)
- int JPMCDS_BAD_DAY_FOLLOW
- int JPMCDS_BAD_DAY_PREVIOUS
- int JPMCDS_BAD_DAY_NONE
- int JPMCDS_BAD_DAY_MODIFIED
+ cdef enum:
+ JPMCDS_BAD_DAY_FOLLOW
+ JPMCDS_BAD_DAY_PREVIOUS
+ JPMCDS_BAD_DAY_NONE
+ JPMCDS_BAD_DAY_MODIFIED
+
+cpdef enum BadDay:
+ FOLLOW = JPMCDS_BAD_DAY_FOLLOW
+ PREVIOUS = JPMCDS_BAD_DAY_PREVIOUS
+ NONE = JPMCDS_BAD_DAY_NONE
+ MODIFIED = JPMCDS_BAD_DAY_MODIFIED
cpdef TDate pydate_to_TDate(c_datetime.date d)
diff --git a/pyisda/date.pyx b/pyisda/date.pyx
index c83fc8e..821d224 100644
--- a/pyisda/date.pyx
+++ b/pyisda/date.pyx
@@ -93,7 +93,7 @@ cdef TMonthDayYear next_twentieth(TDate d) nogil:
cdef inline TDate next_business_day(TDate date) nogil:
cdef TDate r
- if JpmcdsBusinessDay(date, JPMCDS_BAD_DAY_FOLLOW, "NONE", &r) != SUCCESS:
+ if JpmcdsBusinessDay(date, FOLLOW, "NONE", &r) != SUCCESS:
return -1
else:
return r
diff --git a/pyisda/utils.py b/pyisda/utils.py
index 3f08939..24a2e4b 100644
--- a/pyisda/utils.py
+++ b/pyisda/utils.py
@@ -13,7 +13,8 @@ import requests
import zipfile
from io import BytesIO
import xml.etree.ElementTree as ET
-from pyisda.curve import YieldCurve, BadDay
+from pyisda.curve import YieldCurve
+from pyisda.date import BadDay
def getMarkitIRData(date = datetime.date.today() - datetime.timedelta(days = 1),
currency="USD"):