Forums  > General  > your perspective on independent study of quant topics  
     
Page 1 of 1
Display using:  

JTDerp


Total Posts: 34
Joined: Nov 2013
 
Posted: 2016-12-02 18:49
Looking for musings on a few questions...try not to roll your eyes too much :)

If you have a formal education in financial engineering / quantitative finance, do you find that post-graduate study of academic or institutional research papers, whether on behalf of your firm or for yourself alone, offers a significant amount of improvement for your understanding of the more 'classical' aspects of finance? As examples, option pricing models or volatility forecasting methods - do you see better/worse/same levels of details in papers freely-available online versus what you learned in university?

Thus far, Rob Carver's blog (http://qoppac.blogspot.co.uk/) and Michael Halls Moore (quantstart.com) have been the most useful resources I've seen when it comes to balancing practicality of assumptions with classification of what issues are really faced in the earlier steps of analysis and design of systems to coordinate such.

I'm from a mechanical engineering background (stopped at B. Sci) and, while I had a decent amount of exposure to the mathematical and programming tasks needed in quant finance (Fourier series, pde's, some EE and programming courses, etc) combing through the hundreds (literally) of papers I've amassed seems like an impractical/unnecessary goal for sake of 'thoroughness.'...stating one's assumptions before solving an engineering exercise was frequently emphasized during my undergrad, so in a limited-but-growing awareness, I can contrast the (sketchy) assumptions of more than several academic papers versus more to-the-point practicioner views put forth in these forums along with other sources, and decide to discard such papers.

So, likewise, if you're not formally educated in finance, either before or after being employed by a firm, have you found a more streamlined research process over the years which helps you process & understand info more efficiently?

Separately, when it comes to the more-intensive work with formulae, do you lean heavily on manipulation using Mathematica/Maple/etc, then take your final equation(s) to be used and iterate/solve in your chosen language(s) ? Or, have you found R/Python/C-based languages to handle most of the heavy lifting for manipulation?

The clouded mind seeks; the emptied mind finds.

chiral3
Founding Member

Total Posts: 4970
Joined: Mar 2004
 
Posted: 2016-12-02 19:21
If you plan to stay at the lowest levels - building components and not directing strategy - then staying attached to academia makes sense. Barring this the best thing you can do is go and work. You'll learn far more. All academia does is gives you the toolbox and the skills to do unsupervised learning. Nobody even built a strategy, made money, or participated in global markets by "fourier transform". I don't ask what kind of scalpel my surgeon likes to use before he cuts me open. Further, it would be polite to say academics are the last in the room to know - often they never know.

I am too far along to say that I do much concrete building these days. I am on white boards all the time, scribbling math, and prototyping chunks of ideas in matlab and python all the time. Occasionally c++. This is unusual for somebody in my position. I am the idea guy. The make stuff happen guy. That being said, all the people on my team, who are smarter than me, still do stuff the way I did 10 years ago when I was in their position. We argue and ideate and conceptualize at the whiteboards. Then we go back and scribble a bunch of math. Then we start to prototype. Might be in R, python, or matlab. Maybe c++. Existing libraries and code are always leveraged. Could be quantlib, numpy, matlab optimization toolbox, etc. Could be bespoke. Could be really low level for performance. Could be parallelized C++. Could be CUDA on GPU. C++ and CUDA are still as big now for me as they were almost 10 years ago. Same with matlab. The new kid is python. R kinda died some. I love python. I know some people hate python. I really love python, as do the young kinds on my team. Coding / problem solving bottlenecks always are around data and memory. Started using AWS, which has helped. Production code is always C#, C++, CUDA. XML. Coding standards need to be enforced. Therefore, code in the prototype space looks like a goatfuck. If you want to see a dying shop go find one that turned themselves into a software shop without leaning from those before them. Their full-time jobs will be un-fucking things as opposed to innovating and building. My $0.02

Nonius is Satoshi Nakamoto. 物の哀れ

JTDerp


Total Posts: 34
Joined: Nov 2013
 
Posted: 2016-12-02 20:18
Interesting perspective & notes chiral, thank you!

To clarify, I graduated almost 10 yrs ago with a BSME & never looked back, been in the private sector since, mostly in manufacturing (done some robotic welding & what-not). The low-level research being done with quantitative finance is just me trying to jump into the field, for my own ventures, and hopefully become well-rounded enough to actually know how to design/build/maintain a profitable system.

The tendency to get into academic papers is just the outcome of a Google search, informed by the topics brought up on NucPhy, quant.stackexchange (more quicksand/flame wars over there), etc...if I search "GARCH model for stochastic volatility," inevitably I get several academic papers in the top 10, and maybe a Goldman/JPM paper in there as well. Jump around topics ranging from options, swaps, etc to machine learning and so on, the count adds up pretty quickly. So, in a very crude sense, I'm trying to use the net as my whiteboard and 'team.'

On the programming side, ya Python has become a fave here, too. Took a course in C++ my freshman year per-curriculum, then sprinkles of Fortran and MATLAB in junior-yr courses. Atm, I've got a developer building out the core infrastructure of a systematic trading program...he has no background in finance, so in my optimism (aka naivete), I'm the 'idea guy' in a crude sense.
Aside from Rob's blog and Python package 'pysystemtrade' alluded to in OP, I've been keeping up with Qtpylib.io and PortfolioEffect, and to a lesser extent some packages that don't appear to be updated as often (https://pmorissette.github.io/bt/ , https://github.com/jamesmawm/High-Frequency-Trading-Model-with-IB). The trading engine/connector packages all interface with InteractiveBrokers TWS, so in that regard I'm just referring to their designs where swapping for Rithmic's API, in my case. Neither TWS nor Rithmic offer Python classes for their API (guess the bottlenecks aren't up to standards, understandably), so the aim is to use SIP, Boost or Cython to make bindings in non-critical areas, and port to pure C++ where needed.

Overall, been trading and studying for almost 6 years...not a total newb, but not a true pro, either.

The clouded mind seeks; the emptied mind finds.

Scotty


Total Posts: 721
Joined: Jun 2004
 
Posted: 2016-12-13 01:26
Hi, traditional financial engineering courses don't seem that useful for systematic trading. Seems to be targeted towards bank roles in structured products. Less on computing, statistics and even machine learning. The schools seem behind the curve.

We try to do everything in Python as far as we can from a notebook development environment on Jupyter Hub to testing and product in Python. Just keeps things much simpler in a complex business. Starting to see open APIs in Python so that is great.

We operate real-time on tick data, but don't try low-latency trading. We expect to go from tick to execution in less than one second - which is OK for our holding periods of hours and days.

“Whatever you do, or dream you can, begin it. Boldness has genius and power and magic in it.”
Previous Thread :: Next Thread 
Page 1 of 1