Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose CPIBond class #121

Closed
ceaza opened this issue Mar 17, 2016 · 8 comments
Closed

Expose CPIBond class #121

ceaza opened this issue Mar 17, 2016 · 8 comments

Comments

@ceaza
Copy link

ceaza commented Mar 17, 2016

CPI bonds normally form a key part of many fixed income portfolios.

https://github.com/lballabio/QuantLib/blob/master/ql/instruments/bonds/cpibond.cpp

@ceaza
Copy link
Author

ceaza commented Mar 22, 2016

@dpinte what tools would one use to do this?

@dpinte
Copy link
Member

dpinte commented Mar 22, 2016

@ceaza you would need to write the same kind of cython wrappers as we did for the various instruments that are exposed through pyql. For example here are the standard bonds: https://github.com/enthought/pyql/blob/master/quantlib/instruments/bonds.pyx

@ceaza
Copy link
Author

ceaza commented Mar 22, 2016

And the type of tools you used to make sure it all works. For example would
one have to put the wrappers together, then compile using print statements
for error tracking or are there better ways of doing this through an IDE?

On Tue, Mar 22, 2016 at 10:53 AM, Didrik Pinte notifications@github.com
wrote:

@ceaza https://github.com/ceaza you would need to write the same kind
of cython wrappers as we did for the various instruments that are exposed
through pyql. For example here are the standard bonds:
https://github.com/enthought/pyql/blob/master/quantlib/instruments/bonds.pyx


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#121 (comment)

@dpinte
Copy link
Member

dpinte commented Mar 22, 2016

@ceaza you'll definitely need an IDE. Using print statements for error tracking is not the best way to do things. PyQL has a decent test suite and you would test your developments by implementing a suite of tests that cover the new code you're writing.

On what platform are you? The compilation steps are quite simple as Python does most of it for you byt you'll need a local development version of Quantlib, etc.

@ceaza
Copy link
Author

ceaza commented Mar 22, 2016

I could use either platform, but at work on Windows. Agreed print
statements would be very tedious, hence the question. So which IDE will
interpret .pxd and .pyx cython files? PyCharm perhaps or is there a plugin
for spyder? I now see the tests in pyql/quantlib/test/.

On Tue, Mar 22, 2016 at 12:02 PM, Didrik Pinte notifications@github.com
wrote:

@ceaza https://github.com/ceaza you'll definitely need an IDE. Using
print statements for error tracking is not the best way to do things. PyQL
has a decent test suite and you would test your developments by
implementing a suite of tests that cover the new code you're writing.

On what platform are you? The compilation steps are quite simple as Python
does most of it for you byt you'll need a local development version of
Quantlib, etc.


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#121 (comment)

@dpinte
Copy link
Member

dpinte commented Mar 22, 2016

Pycharm will work fine. Spyder too. You'll probably have to play with the command line for the compilation steps. Windows is the hardest platform as it requires a custom build of QuantLib to run properly. I can provide pre-built dll's for some versions of QL if you want. Also, depending on your Python version, the MSVC compiler you must use is different (MSVC2008 for Python 2.7, 2010 for < 3.5 and 2015 for >= 3.5)

@dpinte
Copy link
Member

dpinte commented Mar 22, 2016

@ceaza feel free to contact me by e-mail if you need more technical details.

@thrasibule
Copy link
Collaborator

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants