Where Can I Find the Best C++ Tutorials for Quantitative Analytics?

In summary: If you're interested in working as a coder in quant. fin. then, at an absolute minimum, you should be familiar with everything in Joshi's C++ Design Patterns and Derivatives Pricing. Of course, to understand the models in that you'll probably also need to be familiar with his other book The Concepts and Practice of Mathematical Finance, which is terribly written but often useful.You'd be surprised. Many, many Ph. D students know that they're going to graduate school with the sole intention of entering finance once they've finished. Hence, there's a ready pool of students who have been learning C++ on the side all the way through grad school.
  • #1
robousy
334
1
well I've been putting this off for a good decade, but I really need a crash course of sorts in C++.

I'm weeks away from graduating with a theoretical physics Ph.D and I am proficient in matlab. I want to move into quantitive analytics which involves building computer models to help traders. A typical requirement is C++, so i want to pick enough up so that I could start a job say Jan 2nd (6 weeks from now) amd hit the ground running so to speak.

Could anyone advise me on what a good starting point would be??

I'm looking for online tutorials or books or any good advice!

Rich
 
Technology news on Phys.org
  • #2
The short answer is that you can't realistically hope to learn a sufficient amount of C++ from scratch in that space of time. Quantitative finance often involves lots of rather sophisticated code (particularly if, as is often the case, that code is running on impressive hardware) and you really do need about a year or more of experience with the language to feel comfortable with that. (The typical period of time required for somebody new to the language to become comfortable with C++ is about a year.)

Moreover, learning the base language isn't close to being enough, in my opinion. You'll also need a solid knowledge of several of the boost libraries, a good idea of how to export C++ code to xlls that the traders can use to price in Excel, and a corresponding familiarity with VBA. An acquaintance with QuantLib and the ability to cannibalize it for useful code wouldn't go amiss either.

If you're interested in working as a coder in quant. fin. then, at an absolute minimum, you should be familiar with everything in Joshi's C++ Design Patterns and Derivatives Pricing. Of course, to understand the models in that you'll probably also need to be familiar with his other book The Concepts and Practice of Mathematical Finance, which is terribly written but often useful.
 
  • #3
Wow, so how are you supposed to get into this in the first place? I can't see that many physics PhD's having that kind of experience straight out of school. Surely there must be some kind of Junior roles to bring us up to scratch?
 
  • #4
robousy said:
Wow, so how are you supposed to get into this in the first place? I can't see that many physics PhD's having that kind of experience straight out of school.

You'd be surprised. Many, many Ph. D students know that they're going to graduate school with the sole intention of entering finance once they've finished. Hence, there's a ready pool of students who have been learning C++ on the side all the way through grad school.

(By the way, I've never been convinced that a straight theory Ph. D. is all that good a candidate for quantitative finance. It's much, much more common to find that successful quants will have a background in experimental physics, applied mathematics, or statistics. When the chips are down, knowing quantum field theory and/or general relativity is utterly useless if you're not going to be a physicist; knowing how to speed up convergence for a Monte Carlo simulation, however, is pretty lucrative in any walk of life.)

I don't want to rain on anyone's parade, but a solid knowledge of C++ is an essential requirement if you're going to be implementing models as a quant. There really is no way around that.
robousy said:
Surely there must be some kind of Junior roles to bring us up to scratch?

Yup: they're called internships. :tongue:

You may get lucky and find a permanent job like this. That said, I've never seen the job market in quant. fin. to be weaker than it is right now. Those firms that are hiring can afford to be very picky since there are far more applicants for far fewer places.

I, for one, would hate to be trying to break into the field right now.
 
Last edited:
  • #5
Thanks for the reply shoehorn. Yes, I know its a bad time to get into the biz.

I did have a 3 month internship last summer at a hedge fund, so have a small selling point on my resume. The fund has since bust however, and I used MATLAB the whole time there anyway.

I agree with your statement regarding QFT and GR not being much good unless you are going to become a physicist. I know I have a lot of stats and coding to master.

I'm hoping I have something to offer Houston as that's where I'm headed.
 

1. What are the best resources for learning C++?

Some popular resources for learning C++ include online tutorials, textbooks, and programming forums. It is important to find a resource that aligns with your learning style and offers comprehensive information on C++ concepts.

2. How long does it take to learn C++?

The amount of time it takes to learn C++ varies from person to person. It largely depends on your prior programming experience and how much time you dedicate to studying and practicing. It is recommended to set aside at least a few months to become proficient in C++.

3. Are there any tips for beginners learning C++?

Yes, some tips for beginners learning C++ include starting with the basics, practicing regularly, and seeking help from resources such as online forums or experienced programmers. It is also important to have a good understanding of programming fundamentals before diving into C++.

4. What are some common mistakes to avoid when learning C++?

Some common mistakes to avoid when learning C++ include not fully understanding the syntax and concepts, not practicing regularly, and not asking for help when needed. It is also important to avoid relying too heavily on online tutorials and not experimenting with your own code.

5. How can I improve my C++ skills?

To improve your C++ skills, it is important to continually practice and challenge yourself with new projects. You can also read books, attend workshops or conferences, and participate in online communities to gain knowledge and advice from experienced programmers. It is also helpful to regularly review and refactor your code to improve efficiency and readability.

Similar threads

  • Programming and Computer Science
Replies
9
Views
1K
  • Programming and Computer Science
Replies
2
Views
1K
  • Programming and Computer Science
Replies
10
Views
6K
  • Programming and Computer Science
Replies
8
Views
6K
  • Programming and Computer Science
Replies
5
Views
1K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
11
Views
1K
  • Programming and Computer Science
Replies
1
Views
1K
  • Programming and Computer Science
Replies
1
Views
1K
  • Programming and Computer Science
Replies
20
Views
3K
  • Programming and Computer Science
Replies
6
Views
4K
Back
Top