Algorithmic Trading

According to google, the definition of algorithmic trading is automated trading by computers which are programmed to take certain actions in response to varying market data. This topic has intrigued me since I discovered it. Considering how far machine learning has come, it is almost scary to witness the power that machines have. Due to well written libraries, anyone with a computer can jump in on this seemingly effortless task. In the article 'Algorithmic Trading in less than one hundred lines of python code' Dr. Yves Hilpisch, a German Computational Finance Lecturer, walks us through the basic steps in partaking in a formerly reserved practice. In the article Yves takes notice of just how easy it is for the average person to get in on this, stating "The barriers to entry for algorithmic trading have never been lower. Not too long ago, only institutional investors with IT budgets in the millions of dollars could take part, but today even individuals equipped only with a notebook and an Internet connection can get started within minutes."

Using well devised open source libraries like pandas, a trading platform that offers some sort of API access such as OANDA, and an interactive shell such as iPython, you should be all good to go! Just make sure to install all of the requirements you need using pip, otherwise, you can run into alot of trouble when not have specific dependancies. After you have all that setup, you will have everything you need to start fetching the data. It will be up to you to create the algorithm! To the right is a fetch of apple stock data using the pandas library in IPython on my raspberry pi.

Now that you are all setup, you will need a basic understanding of the algorithms used in trading. In the article 'Basics of Algorithmic Trading: Concepts and Examples' by Shobhit Seth, common algorithms that are used by traders are explored. To those who may not know, "An algorithm is a specific set of clearly defined instructions aimed to carry out a task or process" According to the article, the benefits of algorithmic trading include:
  • Trades executed at the best possible prices
  • Instant and accurate trade order placement (thereby high chances of execution at desired levels)
  • Trades timed correctly and instantly, to avoid significant price changes
  • Reduced transaction costs (see the implementation shortfall example below)
  • Simultaneous automated checks on multiple market conditions
  • Reduced risk of manual errors in placing the trades
  • Backtest the algorithm, based on available historical and real time data
  • Reduced possibility of mistakes by human traders based on emotional and psychological factors
Considering we are living in a time of the cloud and open source, it was only a matter of time before some genius decided to create a cloud service for trading algorithms. In the article 'Quants-R-Us? Algorithmic Trading Trickles Down To Individual Investors' by Jeremy Bogaisky, Jeremy gives us a brief overview of this upcoming market. Jeremey speaks on an up and coming website named Rizm, stating Armed with $4.5 million in funding, the 2011 Harvard grad recently launched a Web-based platform called Rizm, designed to let individual investors with no coding skills build computer programs that select and trade stocks automatically, similar to the trading programs used by quant funds and high-frequency trading firms. The pitch: For $99 per month investors get quick cloud access to sophisticated algorithm-building tools and the capability to back-test strategies. You can easily generate rapid-fire executable trades, sans emotion, and place them with an e-broker. Suddenly the notion of blasting out math-driven trades like ├╝ber-successful quant hedge funds, such as James Simons' Renaissance Technologies, are a few clicks away."

Works Cited