• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Pricing engine project

Joined
1/9/21
Messages
14
Points
13
Hey guys,

I am new to the forum and I would like to implement a pricing engine for classic equity derivatives and structured products.
I am not sure whether this topic belongs to this section (My apologies if this is not the case).

I am looking for two to three people with basic knowledge of Object-Oriented Programming in C++ and design patterns.
We would start from a basic Monte Carlo engine for Vanilla, Asian options in the Black&Scholes world. Bit by bit we would move to more complex products in a multi-asset framework with the Heston model (Phoenix Notes, Auto-Callable Notes, or Capital-Guaranteed Notes).

The goal is to think ahead of an architecture that satisfies as much as possible the SOLID principles (cf. down below for the meaning).

Depending on the success of this implementation, we could implement a binomial tree and/or the finite difference method for American options. And hopefully, we would move towards interest rate and credit derivatives.

This is not an easy task and it will take time.

If you're interested do not hesitate to contact me.

Regards.
NotAQuant

PS: The SOLID principles are:
1. Single-Responsibility Principle​
2. Open-Close Principle​
3. Liskov Substitution Principle​
4. Interface Segregation Principle​
5. Dependency Inversion Principle​
 
Is this a (student) project? Or production?

SOLID is neither necessary nor sufficient.

Is it pro-bono or commercial?


This is not an easy task and it will take time. And SPENDING MONEY and PRECIOUS TIME.

 
Last edited:
This is not a student project nor a professional one. As a beginner, I am looking for other beginners to join forces.

The aim is to learn.

Regarding the SOLID principles, I understand that it is not necessary to follow them strictly. However, it will force us to think about the reusability of code and manage the dependencies as much as possible.

Obviously, you are not a beginner in the field. Thanks for the reply.
 
Last edited:
"basic knowledge of Object-Oriented Programming in C++ and design patterns."
Not a good start.
 
This is not an easy task and it will take time. And SPENDING MONEY and PRECIOUS TIME.

I don't understand how this will cost me money or precious time. As I am a beginner, I don't want to jump into Quantlib without any experience.
 
With all due respect, do you think your book is a better starting point than Mark Joshi's book?

C++ Design Patterns and Derivatives Pricing

 
With all due respect, do you think your book is a better starting point than Mark Joshi's book?

C++ Design Patterns and Derivatives Pricing

Depends what you want to learn. The best way to learn C++ is QN C++ course.

// OO Design patterns is OK but somewhat outdated in the C++11/C++17 era. Mark's book is 90s C++.
TBD traditional OOP has seen its best days. But what do I know.

I would install Quantlib and get Luigi's book

 
Last edited:
If your book is a bit expensive for me, I let you imagine what I think about the QN C++ course.

I consider Part I to Part IV of the QN course to be basic. As I know my knowledge covers most of the course, I would pay the full price for Part V and Part VI. Which I can learn by myself.

To sum up:
1. According to the QN C++ course, I have sufficient knowledge to start (I don't mean master) programming in C++;​
2. I believe my math background is good enough to understand the scope of the project.​
3. I know enough of quantitative finance to start this project​
4. I am currently unemployed and this is not a scam to make people work for me for free
5. The project is about sharing and growing together​
6. All I have to give is a bit of knowledge and some time, and I am looking for beginners like me who are willing to do the same​
 
When I see the price of the QN C++ course, thinking about people actually paying for it reminds me of Will Hunting's saying: "You wasted $150,000 on an education you coulda got for a buck fifty in late charges at the public library"
 
When I see the price of the QN C++ course, thinking about people actually paying for it reminds me of Will Hunting's saying: "You wasted $150,000 on an education you coulda got for a buck fifty in late charges at the public library"
A little knowledge is a dangerous thing.
Of Will Hunting is Hollywood, i.e. fantasy.

Good luck.
 
A little knowledge is a dangerous thing.

I totally agree with you.
No matter what we want to learn, we have to start with little knowledge and build on it.

Will Hunting is Hollywood, i.e. fantasy.

Indeed it is fantasy. The fact remains that his saying isn't any less true in the real world because he is a fictional character.

Thanks for the luck and for your time. It is very much appreciated.
 
You're welcome. Regarding design patterns, I have used them since 1994 in application an 1000s of students QL uses them a lot. There are 23 patterns .. about 5 do the business.
 
Back
Top