shogunmike
Buying vs. Renting a GPU-Based Deep Learning Machine for Quant Trading Research
What Alternative Technology Career Paths Exist for Quants?
This article is in fact the second part of a larger planned series. The idea is to present more depth than a "quick refresher" that seems to be common to a lot of blog posts, but far less material than would be found in a 10-week (or single semester) undergraduate course.
Thanks for the Stanford link. I'll check it out.
Linear Algebra for Deep Learning: Matrix Algebra
Scalars, Vectors, Matrices and Tensors – Linear Algebra for Deep Learning
What Are the Different Types of Quant Funds?
The Theory of Rough Paths and Signatures (Part 2)
Setting Up an Algorithmic Trading Business
What Are the Career Paths in Systematic Trading?
The Theory of Rough Paths and Signatures (Part 1)
What is Deep Learning?
Python is primarily used because the machine learning libraries within it are very mature and play nicely with each other.
It is easy to get started in Python (and most of its libraries) by downloading the freely-available Anaconda distribution. This usually "just works", cross-platform. The language itself is extremely straightforward to pick up.
Within the Python ecosystem there are many mature libraries. In particular NumPy was written for carrying out vectorised computation. This enabled more libraries, such as pandas (for dataframe manipulation), SciPy (for general scientific computation) and scikit-learn (for ML) to be developed. Each of these libraries also possess clean and consistent APIs for carrying out their specialty tasks.
Thus it becomes straightforward in Python to import data from many sources, "wrangle" it into the correct format (even with real-world, messy data), put it into an ML data pipeline and then visualise it easily (via Matplotlib or Seaborn). In addition there is Jupyter for straightforward "notebook" style research.
Finally, Theano and TensorFlow are two great deep learning libraries. There are a few hiccups on installation sometimes, but for the most part they "just work".
There are still some "missing pieces" however. The statsmodels library does a good job of time series analysis, but it doesn't yet compete fully with R in this respect.
Julia is also likely to make serious inroads into Python's usage in the near future. I'm excited about where the project is heading.
I'm actually in the process of overhauling the design of the site, particularly with regards to mobile, as the current Bootstrap-derived design pushes all sidebar content to the top on mobile/table.
Each part of the series is designed to cover the "typical" modules on a UK four-year undergraduate Masters of Mathematics degree.
However, it can be challenging in the latter two years to include a broad enough set of modules to cover all interests, so I have had to stick to those "core" modules likely to be found in many degrees, as well as those more specifically related to quant finance and machine learning.
However, it is my hope that individuals will be motivated to look at other areas as well, even if they're not directly related to career paths!
How to Learn Advanced Mathematics Without Heading to University – Part 3
How Do You Move from Quant Developer to Quant Trader?
Beginner's Guide to Unsupervised Learning
I should probably nuance my statement that it is easy to find trading strategies by saying that it is easy to find new trading /ideas/. There are a huge number of freely available trading ideas on forums, pre-print servers (arXiv, SSRN), blogs etc. The trick is knowing how to implement them properly, accounting for any transaction costs and adjusting the parameters of the model. This is often where the stated performance falls down. It takes a lot of time to carry out this sort of research.
Long-term profitable strategies are tricky to find, due to the ever-present spectre of "alpha decay". This is where your strategy's edge is "arb'd out" - everyone else knows what you're doing and so there's no tradeable edge anymore. Hence it is necessary to have a portfolio of strategies and gradually phase out the ones that aren't doing well, and bring in new ones over time.
That being said there are a large number of trend following funds (known as Commodity Trading Advisors, or CTAs, in the industry) that all broadly do the same thing (follow "trends" in the commodity futures markets) and have great years every now and then. There are some well-known "retail" quant traders who do well by trend following, but it does require quite a bit of capital to trade in futures.
The philosophy that I do try to emphasise is to always be learning and researching new ideas. Also, as you mention, I'm pretty keen on discussing the math(s)/statistics aspect because once you have a solid math capability, it is easier to see where potential edges might exist and how to really assess whether it is a true "edge" or just a statistical anomaly.
I believe someone else in a grandchild comment below said that there are many areas that bigger quant funds won't touch because of institutional incentives. If you have $10bn assets under management (AUM), then you're not going to care about investing $100-200k, even if the returns are good, because it won't move the needle on your monthly reports.
The trick is to niche down into markets that you can spend a lot of time researching to find a distinct edge, that won't likely be touched by bigger funds. One area that is becoming interesting recently, due to the prevalence of satellite data/AI/deep learning-esque VC-backed startups, is building commodity supply/demand models. A good example is forecasting oil supply/demand by analysing large quantities of storage tank heights in global refineries [1].
Also, a small related-to-Zipline plug: I've recently started a free Python-based MIT-licensed open-source backtester [2], predominantly as a learning tool for programming and quant trading. There's about 4-5 of us working on it at the moment and it's in an early alpha stage, but we're always looking for people willing to help.
[1] - https://orbitalinsight.com/solutions/ [2] - https://github.com/mhallsmoore/qstrader/
Can You Get a Job in HFT Without a Degree?
Cointegrated Time Series Analysis for Mean Reversion Trading with R
Deep Learning with Theano, Part 1 – Logistic Regression
While it's pretty straightforward to find open courses/content on Linear Algebra and Calculus, there's very little on, say, Compressible Flow/Gas Dynamics or Turbomachinery, for instance.
If anybody knows of any courses on topics related to the above engineering disciplines, I'd love to take a look.
I also agree that at the end of part 2, one would have sufficient "mathematical maturity" to handle most commercial environments.