Hacker’s Guide to Quantitative Trading(Algorithmic Trading) Part 1
Word Quant is derived from Quantitative Analytics. In present system financial market is very heterogeneous in nature, With coming of many private banks in financial sector now most the private banks also invest their account holder’s fund into the stock market as a safe trading, with very low but almost guaranteed returns(money they earn from trading)
There was an exception of this ‘safe investment’ term used by banks when whole economy crashed and millions of people suicided,lost their homes,lost their jobs,lost their lives as well as most the small countries in Europe like Greece ,____,____, were almost finished.
Main reason of this whole disaster happened in digital age was due to ‘not looking into data properly’.
Now we can also use term Quantitative Analytics is process where a
person/Mathematician/Expert/Data Scientist/Computer-Programmer(with domain specific knowledge) parses,analyses and develops results from MBs , GBs or sometimes TBs of data to produce results those results are based on history of trading. Such results helps BIG banks or big investors in the Financial market to build trading Strategies with the target to gain maximum profit from trading equities or at-lest to play safely with their money which results low but assured returns.
Statistical science Plays an important role in study of Quantitative Analytics:
Statistical Science deals with every aspect of our life. Before going further into Statistical science we have to understand the meaning of ‘Statistics’.
According to Dictionary of Statistical terms:
“”Numerical data relating to an aggregate of individuals or the science of collecting,analyzing and interpretation such data.””
There are various Statistical methods those are used to analyze the data which is Quantitative(HUGE with number of variables or SMALL with number of variables and Quant’s job is to analyze how those variables are correlated) in nature for example: using grouping,measures of location:average-mean,median,mode, measures of spread-range,variance and standard deviation,skew,identifying patterns, univariate and multivariate analysis, comparing groups,choosing right test for data.
Word Quant comes from:
Word Quant come from the the person who use Mathematical formulas and machine learning techniques to predict output of stock market. There are various other profiles as well, Like Quant Developer- Trading strategy written in steps(not programming) is provided to programmer with domain specific knowledge of financial system.
it is job of Quant developer to convert Trading Strategy into Live Trading System(System that buy or sells stocks,options,futures to get profit from market).
Mathematician and Quant:
The relationship between Quant and Mathematician is quite close or in some sense it can be stated that Quant is the person having fun in real life with Mathematics. Quant calculate various factors while implementating an algorithm/equation in real-time trading system. with showing results to other people in the form of graphs rather than complicated equations of significances.
So in some sense Quant uses serious Statistics to get sense out of data and tell people why his/her trading strategy is better to produce profit from the financial market. As a Quant developer only job is to write code for equal
Algorithms those are being used but as a Quantitative Analytics we can assume one has to have various skills of statistics which help to make sense out of Stock-Trading-Data.
Process(!steps) of doing Quantitative analytics:
Take Care of Data: At first as a analyst you should not get yourself lost in the data.
Frequency Distribution: Find frequencies of occurring values against one variable.
Histograms are best for Frequency Analysis.
Find Descriptive Statistics: We can use Central tendencies(mean,median,mode) and
dispersion(range,standard deviation,variance) to learn more about data.
Comparing means:Need to perform various tests on your Data like T-Tests.
Cross Tabulation: Cross tabulation tells what are the relations among different variables.
Correlations: Find relationship between two variables
** Never mix Correlation and Cross Tabulation between your thoughts.
When Traders buy/sell stock/options/future in trading market based on various calculations to make decisions, Combination of such decisions is called Trading Strategy. Strategy can be built applied without using any Programming Language. In Algorithmic trading A Quant+developer come up with self-running computer program(Trading Strategy/Quantitative model) that is built based upon various trading decisions to automate
whole process of buying/selling stocks.
Tips and Tricks while building Quantitative models:
* Important things about Your Trading model is it should be good on Back-testing(Make sure back-testers will be different for stocks as well as for futures) but as well as it should be as good on forward testing(paper trading).
* You need Separate Model for Separate Trading. Trading model(Strategy) working at Bitcoin Market will not be beneficial for Stocks.
* You should run Strategy as an experimental Project for various Days to get data from results, Read the data and refine the Strategy.
* Every Strategy is sort of sensitive to various risk factors.
* Think about **risks** , Think about Eliminations.
* Run Multiple models at same time, Some will loose some will win.
* One strategy is not enough , Strategies loose it’s Efficiencies after certain period of time.
* Back-testing is not always true. Never try to create model that matches 100% to your back-testing because that would be over-fitting rather than try to create generalized/simple models which will be more effective to predict abrupt changes in the live-trading.
* What actually happens is strategies are catching strategies.
* Right now every Strategy need a human to operate.
* If we know what kind of shields we have given our model we will get to know that either such kind of things those are coming in-News can effect
* Only Human is not well enough to do trading by it’s own. We must use trading strategies to come out as great trading with profitable returns.
* Diversification of Strategies are as important as required.
* Momentum trade’s behave is somewhat in loss and sometimes very ‘’good’’ Profit, Because on Momentum we try to find what’s hot in market and that hot could go so high as well as so low.
* A trading model may not take consideration of Earth-Quake, some kind of Govt. fall into any country but humans can.
* Now using the Sentiment Data analysis tools we can incorporate news while building a strategy but for most of the back-testers does not contain that news data to check performance of strategy. So if you say news data record will increase the chances of working that might not be true all the time.
* Sometimes using a news data as input can cause overwrite of entire model because ‘news are not true always’ :)
* Keep reading new Ideas on Blog Posts, Look for interesting Books.
* Learn how to interpret the live market.
* As in the programming we say it mostly does not work at the first time, that is also true with trading strategies. :)
* Back-test is at-least good not to give -ve results, Highest the Sharp ratio great is the significance of strategy.
* Data you use to build your own strategy is equally important as important as the factors you are considering to build your model.
- You could come to situations where you feel either you need to stop usage of perticular strategy or modify it.
* Back-test is null Hypothesis.We assume that at this specific case our model is accurate.
* Always concentrate on Sharp Ratios.
* Quantitative Trading is suitable for technically anybody. Quantitative Trading could be slow or Fast, One does not need to be a Math Ninja or Computer Wizard to do Quantitative Trading.
* It is always good to start with Simple Strategies present in Public Domains, implement those, run tests, tune,Play and get rich, :)
* It’s better if you go with Open-Source Languages because those can very easily turn into live trading systems.(Python or C++)
* Choosing a standard Language is always a great idea because wide range of library support is there to build things! :) :D * (Python)