An algorithm is a set of clearly defined instructions aimed to carry out a task or process.
Algorithmic trading (automated trading, black-box trading, or simply algo-trading) is the process of using computers programmed to follow a defined set of instructions for placing a trade in order to generate profits at a speed and frequency that is impossible for a human trader.
Suppose a trader follows these simple trade criteria:
- Buy 1 lot of EUR/USD when its 50-day moving average goes above the 200-day moving average
- Sell 1 lot of EUR/USD when its 50-day moving average goes below the 200-day moving average
Using this set of two simple instructions, it is easy to write a computer program which will automatically monitor the asset price (and the moving average indicators) and place the buy and sell orders when the defined conditions are met. The trader no longer needs to keep a watch for live prices and graphs, or put in the orders manually. The algorithmic trading system automatically does it for him, by correctly identifying the trading opportunity.
Benefits of Algorithmic Trading
Algo-trading provides the following benefits:
- Trades executed at the best possible prices.
- Instant and accurate trade order placement.
- Trades are timed correctly and instantly, to avoid significant price changes.
- Reduced transaction costs.
- 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.
Designing and Testing Your Robot
There are essentially four steps needed to build and manage a trading robot:
Preliminary Research: This step focuses on developing a strategy that suits your own personal characteristics. Factors such as personal risk profile, time commitment and trading capital are all important to think about when developing a strategy. You can then begin to identify the persistent market inefficiencies, like the ones i have mentioned below. Having identified a market inefficiency you can begin to code a trading robot suited to your own personal characteristics.
Backtesting: This step focuses on validating your trading robot. This includes checking the code to make sure it is doing what you want and understanding how it performs over different time frames, asset classes, or different market conditions, especially in black swan type events such as the 2008 global financial crisis .
Optimization: So, now you have coded a robot that works and at this stage you want to maximize its performance while minimizing overfitting bias. To maximize performance you first need to select a good performance measure that captures risk and reward elements, as well as consistency (e.g. Sharpe ratio). Overfitting bias occurs when your robot is too closely based on past data; such a robot will give off the illusion of high performance but since the future never completely resembles the past it may actually fail.
Live Execution: You are now ready to begin using real money. However, aside from being prepared for the emotional ups and downs that you might experience, there are a few technical issues that need to be addressed. These issues include selecting an appropriate broker, and implementing mechanisms to manage both market risks and operational risks such as potential hackers and technology downtime. It is also important at this step to verify that the robot’s performance is similar to that experienced in the testing stage. Finally, continual monitoring is needed to ensure that the market efficiency that the robot was designed for still exists.
Algorithmic Trading Strategies
Any strategy for algorithmic trading requires an identified opportunity which is profitable in terms of improved earnings or cost reduction. The following are common trading strategies used in algorithmic trading:
Trend Following Strategies:
The most common algorithmic trading strategies follow trends in moving averages, channel breakouts, price level movements and related technical indicators. These are the easiest and simplest strategies to implement through algorithmic trading because these strategies do not involve making any predictions or price forecasts. Trades are initiated based on the occurrence of desirable trends, which are easy and straightforward to implement through algorithms without getting into the complexity of predictive analysis. The above mentioned example of 50 and 200 day moving average is a popular trend following strategy.
Buying a dual listed stock at a lower price in one market and simultaneously selling it at a higher price in another market offers the price differential as risk-free profit or arbitrage. The same operation can be replicated for stocks versus futures instruments, as price differentials do exists from time to time. Implementing an algorithm to identify such price differentials and placing the orders allows profitable opportunities in efficient manner.
Index Fund Rebalancing:
Index funds have defined periods of rebalancing to bring their holdings to par with their respective benchmark indices. This creates profitable opportunities for algorithmic traders, who capitalize on expected trades that offer 20-80 basis points profits depending upon the number of stocks in the index fund, just prior to index fund rebalancing. Such trades are initiated via algorithmic trading systems for timely execution and best prices.
Mathematical Model Based Strategies:
A lot of proven mathematical models, like the delta-neutral trading strategy, which allow trading on combination of options and its underlying security, where trades are placed to offset positive and negative deltas so that the portfolio delta is maintained at zero.
Trading Range (Mean Reversion):
Mean reversion strategy is based on the idea that the high and low prices of an asset are a temporary phenomenon that revert to their mean value periodically. Identifying and defining a price range and implementing algorithm based on that allows trades to be placed automatically when price of asset breaks in and out of its defined range.
Volume Weighted Average Price (VWAP):
Volume weighted average price strategy breaks up a large order and releases dynamically determined smaller chunks of the order to the market using stock specific historical volume profiles. The aim is to execute the order close to the Volume Weighted Average Price (VWAP), thereby benefiting on average price.
Time Weighted Average Price (TWAP):
Time weighted average price strategy breaks up a large order and releases dynamically determined smaller chunks of the order to the market using evenly divided time slots between a start and end time. The aim is to execute the order close to the average price between the start and end times, thereby minimizing market impact.
Percentage of Volume (POV):
Until the trade order is fully filled, this algorithm continues sending partial orders, according to the defined participation ratio and according to the volume traded in the markets. The related "steps strategy" sends orders at a user-defined percentage of market volumes and increases or decreases this participation rate when the stock price reaches user-defined levels.
The implementation shortfall strategy aims at minimizing the execution cost of an order by trading off the real-time market, thereby saving on the cost of the order and benefiting from the opportunity cost of delayed execution. The strategy will increase the targeted participation rate when the stock price moves favorably and decrease it when the stock price moves adversely.
The Bottom Line
Considering that Richard Dennis, the legendary commodity trader, taught a group of students his personal trading strategies who then went on toearn over $175 million in just five years, it is completely possible for inexperienced traders to be taught a strict set of guidelines and become successful traders . However, this is one extraordinary example and beginners should definitely remember to have modest expectations.
If you want tomake more income, work less, and have an enjoyable retirement, you must start creating income streams that DO NOT require your direct involvement.
In order to be successful it is important to not just follow a set of guidelines but to understand how those guidelines are working. Algorithmic trading can be rewarding but the key to success is understanding. Any course or teacher promising high rewards with minimal understanding should be a major warning sign.
Ever wanted to become an algorithmic trader with the ability to code your own trading robot?Well, Hackner Intel, creator of the online algorithmic trading course'The Algorithmic Trading Blueprint', may have the solution for you. With a team of former research analysts and proprietary firm traders, the course is a step by step blueprint to take you from beginner to expert in algorithmic trading.
Click on the link below where we will show you How To Effortlessly Create your own Trading Algorithm Even if You Have NO Programming Skills.
Get Instant Access To Our Algorithmic Trading System Blueprint That Is Proven To Work!
This communication is for informational purposes only and does not purport to be all inclusive or to contain all the information that a prospective investor may require in evaluating a possible investment of any kind. Hackner Intel does not warrant or represent or give any undertakings either express or implied that the information contained in this communication is free from errors or omissions or is suitable for your intended use or for any purpose for such content. This communication is not intended as an offer or solicitation with respect to the purchase or sale of any security. This communication does not take into consideration the investment objectives, financial situation or needs of any person and any reader should seek their own independent advice regarding this communication’s contents.