With more than 70% of the trading volumes in the US markets being automated, the rise of the algorithms seems more inevitable than ever before. The mechanical jobs are shifting to computers and only those who can tame the machines can rule the trade markets. Equipping oneself with the skills of Algorithmic trading is one of the best ways to prepare for the changing face of financial markets.
One of the recent trends in markets has been the emergence of DIY traders. By day, they do their regular jobs and by night they run their algorithmic trading strategies after putting their children to sleep.
This article is especially aimed at those who want to learn algorithmic trading and wish to set up their own trading system. Your success as an algorithmic trader is determined not only by your quantitative skills but also depends on a large extent to the process and the tools you select for analyzing, devising, and executing your strategies.
Let’s get acquainted with the tools required for the trade!
1. Data is everything (well almost!)
The first and perhaps the most important aspect of algo trading is data. Data is an algorithmic trader’s best friend. A trader needs to have access to data for the respective segments of the exchange that he intends to trade-in. How does this data originate in the first place? Let us take the case of an emerging market’s exchange:
The National Stock Exchange of India Limited (NSE)
NSE provides market quotes and data for Capital Market Segment (CM), Futures and Options Segment (F&O), Wholesale Debt Market Segment (WDM), Securities Lending & Borrowing Market (SLBM), Currency Derivative Market Segment (CDS) and Corporate Data.
These quotes are provided by DotEx International Ltd., a 100% subsidiary of NSE dedicated solely for this purpose. It broadcasts real-time data to various information agencies.
NSE provides the 5 different types of data products viz.
- Real-Time Data (Level1, Level 2, Level 3, and tick by tick data)
- Snapshot Data
- End of Day (EOD) Data
- Corporate Data
- Historical Data
Now let us try to understand level 1, level 2, level 3, and Tick-By-Tick (TBT) data.
Level 1 data includes the Best Bid and Best Ask, plus the Bid Size and the Ask Size. Level 2 provides market depth data up to 5 best bid and ask prices and Level 3 provides market depth data up to 20 best bid and ask prices. Tick-By-Tick (TBT) data includes each and every order or a change in the order.
Level 2 data example - NSE:YESBANK
For new traders, level 1 data is sufficient enough for analyzing price charts, devising strategies and to arrive at trading decisions. Other types of data are generally used by experienced traders and high frequency trading firms/institutions.
NSE provides data to the authorized data vendors (List of Authorized Data Vendors/Redistributors) which in turn redistribute the data to trading firms and retail traders.
Some of the data vendors for the Indian markets include:
Some data vendors provide Datafeed only, while some others provide a charting platform and other analytics for creating watchlists, tracking different markets, strategy development, generating buy/sell signals etc.
A trader can connect the platform with his broker’s platform via a bridge, and have the orders executed. Data vendors usually list the broker partners on their websites, and also the compatibility of their feed with different charting platforms.
Let us take the example of eSignal to list some of the services provided by such data vendors. eSignal is a leading global data vendor which offers three main products –
SIGNATURE is the most popular one, and some of its important features include:
- Streaming Real-Time Data
- Advanced Charting with customizable Studies
- Stocks, Futures, Forex and Options
- Download Data using Qlink or RTD
- 1-year Intra-day Historical Data
- News, Commentary and Research
Apart from the algorithmic trading platform, eSignal also offers QLink service that makes it quick and simple to download real-time, streaming data into your Excel worksheets. Traders can perform further analysis and build strategies in excel using worksheet functions/macros, and have them executed via Excel API.
2. Charting Platforms
As a trader, you must acquaint yourself with different charting techniques and chart based strategies that can be profitably applied in the markets. There are many charting platforms available with advanced charting features and analytics.
Some popular charting platforms among traders include:
Features offered by these platforms include real-time scanning, number of technical indicators, expert advisors, backtesting, company fundamentals, news services, placing trades automatically, forecasting, level 2 data etc. A trader should choose an algorithmic trading platform based on his trading style, features and pricing.
Let us take the example of MetaStock to list some of the features of charting platforms. MetaStock is a very popular platform and offers solutions for individual end of day traders, real-time traders, and FOREX traders.
The basket of products offered includes:
- METASTOCK Real-Time
- METASTOCK XENITH
- METASTOCK Daily Charts
- Third-Party add-ons
Features of METASTOCK Real-Time –
- Markets Explorer – Scan across markets and securities
- Enhanced System Tester – to test your trading ideas
- Indicators & Trading Systems - comprehensive collection of indicators
- Expert advisor - expert inputs of industry professionals
- Forecaster – a tool to view probable Future Prices
Most of these charting platforms offer a trial period which can be used by a trader to assess whether the platform would fulfil his trading needs.
Before subscribing to an algorithmic trading platform it is also vital that a trader understands the pricing policy, as these platforms in addition to the software charges also charge for Datafeed, exchange fees, and for third-party add-ons separately.
3. It is all about Programming, baby
Algorithmic trading involves devising & coding strategies by analyzing the historical/real-time data which is procured from the data vendors. Some of the algorithmic trading platform mentioned above have their own scripting language which can be used for coding & backtesting strategies in the platforms itself.
When Van Rossum started working on Python to keep himself occupied during his Christmas week, he wanted to make an interpreter that would appeal to Unix and C hackers. However, today Python is one of the most appealing languages for algorithmic traders all over the world. The reason is very simple and can be found here.
Using languages like Python, Java and Matlab for trading on trading platforms is a method which is extensively used by algorithmic traders.
There are hundreds of external analytical packages that can be used in these languages which aid in developing various trading strategies like:
- momentum based,
- strategies based on machine learning algorithms,
- sentiment-based strategies, etc.
We use external wrappers to implement codes written by us into the trading platform. We have talked about using two such wrappers which can be used to implement algorithmic trading strategies in Python on Interactive Brokers in our articles on IBPy and IBridgePy.
Suggested Course: Automated Trading with IBridgePy using Interactive Brokers Platform
Hence, as a trader, it is vital to have a sound programming knowledge to trade successfully in the markets. QuantInsti’s EPAT course includes Python, R, and MATLAB wherein the students not only learn the basics of programming but also learn to devise different strategies for different markets using these languages.
4. Brokers Brokers Brokers
The next aspect of algorithmic trading is choosing the right broker.
Considerations that go into choosing the right broker include:
- Speed and reliability of the trading platform
- Segments offered
- Leverage and the margin requirements
- Compatibility of charting software with the broker’s platform
- Gateway API's offered by the broker
Some of the popular brokers for the Indian markets include:
- Interactive Brokers
- Presto ATS by Symphony Fintech
- Composite Edge
- Lightspeed trading
As an algorithmic trader who wants to automate the trading process, you can execute your strategies in live markets via charting platforms that connect to your broker or through the gateway API’s offered. The available API’s are usually listed by the broker on their websites.
Some brokers like Zerodha offer platforms which are a set of simple HTTP APIs built on top of their exchange-approved web-based trading platform. This enables users to gain programmatic access to data such as profile and funds information, order history, positions, live quotes etc.
In addition, it enables users to place orders and manage portfolio at their convenience using any programming language of their choice (from excel VBAs to Python, Java, C#).
Thus for a prospective trader, it is essential that he gets himself acquainted with the workings of an API and other relevant features offered by the broker’s platform.
5. A System to beat the heat of algorithmic trading
By now you must have realized that as an algorithmic trader you will be working with different applications (charting platforms/Programming tools/Broker terminal /Newsfeed etc.), dealing with huge data for backtesting, and multi-tasking in live markets. So, it is essential to have the right computer system that fulfils all these needs without going on occasional breaks and strikes.
After all, that is the aim of automation, to get things done smoothly and quickly (and of course, devoid of emotions). Trading with a laptop is not reliable and would limit your multi-tasking abilities. Therefore, it is advisable to use a high-end desktop system with multiple monitors for algorithmic trading.
You’d need reasonable desktop machines with a fast processor, high RAM, multiple monitors with the relevant graphics card(s), reliable motherboard, and ample storage space shall do.
A trader can purchase the right system after researching on his requirements, or by consulting someone having sound knowledge of computer hardware & technology.
- Processor: Intel Core2Duo 2.13Mhz
- Operating system: Windows7 Professional or Ubuntu x64 is preferable if R is required
- RAM: 3gb DDR3
This was just a prelude that we thought you should know before you watch the informative session on Algorithmic trading. Click here to watch the video recording of the session on algo trading. In the video, you will not only get to hear everything that you should be knowing before venturing into algorithmic trading from one of the stalwarts of the industry.
If you’re looking to enter the world of Algorithmic Trading and Quantitative Trading, we could guide you and equip you with the necessary skillset and knowledge required to excel in this field with our Executive Programme in Algorithmic Trading (EPAT).
Disclaimer: All data and information provided in this article are for informational purposes only. QuantInsti® makes no representations as to accuracy, completeness, currentness, suitability, or validity of any information in this article and will not be liable for any errors, omissions, or delays in this information or any losses, injuries, or damages arising from its display or use. All information is provided on an as-is basis.