What is Autotrading?
Autotrading is a trading plan based on buy and sell orders that are automatically placed based on an underlying system or program. The buy or sell orders are placed when the trade conditions in the underlying system or program are met.
- Autotrading is when buy and sell orders are placed automatically based on a programmed strategy.
- Advanced autotrading, which limits human interference in the trading program, requires a sophisticated and well-written trading program. The program still requires human monitoring to assure it is working properly.
- Autotrading allows for rapid execution of orders, as soon as a programmed strategy's conditions are met.
- Autotrading programs can be based on nearly any strategy, but the strategy must be programmable, and ideally, the strategy should be thoroughly tested for profitability before attempting to program it.
Autotrading is a type of trading plan that allows investors to capitalize on market opportunities in real time. It typically involves complex programming and in some cases sophisticated trading platforms that support external programming or plugins.
Traders can program the trading software, or connect a program to the trading software, to make automated trades based on a customized trading strategy.
Basic forms of autotrading can also be utilized by all types of retail investors. For example, setting orders that will execute in the future when certain criteria are met is the most basic form of autotrading. On a more advanced level, autotrading can potentially eliminate human input entirely. Once the software is programmed, it will continue to run without the need for human interference or input. In the advanced case, program traders will still monitor their programs closely to make sure it is operating as expected.
Overall, autotrading systems are used in a wide range of markets including stocks, futures, options, and forex.
Autotrading requires a pre-determined trading strategy. The strategy is the basis for the autotrading program, defining when and why it will trade. It can be structured in various ways for all types of investors. Retail investors may deploy basic autotrading plans that buy investments at regular intervals throughout the year, or that place conditional orders in stocks that meet certain parameters. Conditional orders allow an investor to enter trades at specified levels for automatic execution when a price is reached.
Many technical day traders will only work with brokers that allow plugins or external programs to connect to their platform, or that offer a coding program within the platform itself to create indicators and autotrading programs.
Brokerage platforms such as TD Ameritrade and Interactive Brokers, for example, offer coding and autotrading capabilities. Institutional investors will typically have their own proprietary trading platforms that allow for autotrading through algorithmic programming.
Institutional investors may use complex algorithms that seek to place trades for investment portfolios based on defined criteria governed by a portfolio’s objective. This may include buying or selling securities automatically to maintain a specific percentage or dollar allocation to each stock, or matching the holdings in the portfolio to an index.
Technical day traders will use autotrading to invest based on technical market signals. They commonly use complex conditional orders for auto trading. These types of orders allow an investor to specify an entry price and build a collar around the trade to institute pre-determined profit and loss levels for risk management. Autotrading programs can be built to capitalize on trends that develop, trade gaps, trade ranges, or scalp the bid/ask spread. There are countless strategies. Utilizing them is only limited by the trader's ability to come up with profitable strategies and effectively program them.
Autotrading is also popular for investors in the forex market. Most brokers offer a platform that comes equipped with the ability to install programs provided by other traders and businesses. The widespread use of autotrading programs in the forex market means there is a plethora of autotrading software which is essentially junk, untested on live trading conditions, and unprofitable. When buying a trading program, tread carefully as the arena is fraught with scammers offering the hopes of riches for a small (or large) fee.
Forex traders can also create their own trading programs, using MetaTrader4 or MetaTrader5 coding language called MQL4 and MQL5, for example.
Example Criteria to Consider For an Autotrading Strategy
Autotrading may sound simple, but programming even a simple trading strategy requires a lot of thought. Rules need to be simple enough to be coded, and can't include subjectivity, as the computer needs defined rules to follow.
Things to consider include, but are not limited to:
- Position size, and how it will be defined.
- How trades will be entered, and what specific parameters will trigger a trade.
- How trades will be closed, and what triggers the closing of a trade.
- The programmer will also want to think of constraints on the system, such as when it shouldn't or should trade.
- They may also wish to put in some safeguards.
These topics are elaborated on in more detail below.
Position Size, and How it Will Be Defined
It could be defined as position size is equal to 10% of account equity, for example. Or it could be more advanced, first defining the difference between the entry price and stop loss, setting a maximum risk, such as 1% of the account capital, and then defining the position size based on the 1% risk and the distance between the stop loss and entry on the particular trade. This more advanced position sizing approach is sometimes called optimal position sizing since the position size changes based on the particulars of a trade.
How Trades Will Be Entered, and What Specific Parameters Trigger a Trade
For example, for a trade to be entered on a moving average (MA) crossover requires that the price first be on one side of the MA, and then be on the other. The data source must also be specified. How is the price determined: the last price? the bid price? the ask price?
How Trades Will Be Closed, and What Triggers the Closing of a Trade
This could be accomplished by placing limit orders and stop loss orders at the outset of the trade. These orders will close the trade at the order prices, whether the trade is profitable or unprofitable. A more complex strategy could be to program a trailing stop loss.
The Programmer Will Also Want to Think of Constraints On the System
This includes things like such as when the programmer shouldn't or should trade. For example, the programmer may not want the program to run until five minutes after the stock market opens. Therefore, they would need to put in a time constraint in the programming code.
They May Also Wish to Put in Some Safeguards
For example, if more than 5% equity is lost, or an open trade is losing more than a defined amount, the program closes all trades and/or an email is sent to an administrator to check on the program.
These are basic criteria to consider when making an automated trading program. The more complex the system, the more criteria and factors that need to be considered.