Technical analysis software automates the charting, analysis and reporting functions that support technical analysts in their review and prediction of financial markets (e.g. the stock market).
The following are the most common features of technical analysis applications. Some software may focus on only one aspect (say back testing) and the combination of more than one software package is often required to build a fully automated trading system.
A graphical interface that presents price, volume and technical analysis indicators through a variety of visual interfaces such as line, bar, candlestick and open-high-low-close (OHLC) charts. The chart data is presented as a time series and users typically have the ability to view historical data with varying interval (sampling) periods. Interval periods range from seconds through to months; short term traders tend to use frequent interval periods, such as 1 minute i.e. the price data is updated every 1 minute, whereas longer term traders tend to use daily, weekly or monthly interval periods when trying to identify price and technical analysis trends. Some charting packages enable users to draw support and resistance trend line or for example Fibonacci retracements to help establish trending patterns.
Enables traders to test technical analysis investment timing strategies against historical price movement for one or more specific securities. Strategies are compared to each other using diverse performance measurements such as maximum drawdown, annual profit and Sharpe ratio. The objective is to try and develop a trading strategy based on technical analysis indicator criteria, which will generate a positive return. This concept was computerized and introduced to traders by Louis B. Mendelsohn in 1983 with his ProfitTaker Futures Trading Software (see August 2010 issue of Stocks, Futures & Options Magazine).
A process of testing technical analysis indicator parameters, with the view to developing an investment strategy that generates the maximum return based on historical price movement. The optimization process is achieved through the fine-tuning of the associated technical analysis charting parameters. Typically technical analysis indicators have a range of parameters that can be adjusted, such as the interval period and the technical analysis indicator variables. For example, the stochastic indicator has four parameters that effect its results: %k, %d, slowing period, interval period. Optimization must be performed carefully to avoid curve fitting. Back testing of an over-optimized system will perform real-time. One way to diminish over-optimization is by carrying out optimization on historical data and then performing future testing (sometimes referred to as 'out of sample') before making a final evaluation of a trading strategy.
Scanners enable users to 'scan' the market, be it stocks, options, currencies etc., to identify investment opportunities that meet a user's specific investment criteria. Using a technical analysis scanner, a user could, for example, scan the market to identify oversold stocks that have stochastic and RSI value of less than 20% and 30 respectively.
Alert software is used to monitor specific equities, such as stocks, options, currencies, warrants, etc., and provide a notification of when specific price, volume and technical analysis investment conditions are met. As an example, a person who uses technical analysis might want to be notified when the RSI indicator rises above 70, followed by the price falling below its 20-day moving average; using alerting software the user will be able to create an alert, which will provide a notification of when the technical analysis investment conditions are met. When alert conditions are met, a notification is typically communicated via an on screen pop up or sent as an email, instant message or text alert (to a mobile phone).
Most technical analysis software includes a library of de facto standard indicators (e.g. moving averages and MACD). Some software will also provide a means to customize, combine or create new indicators. This is typically achieved with a proprietary scripting or graphical language.
Technical analysis software is typically used with end of day (EOD), delayed or real time data feeds. EOD data feeds provide the end of day closing price for the given equity and is typically updated once a day at market close. Delayed data is typically delayed 15 to 30 minutes depending on the exchange and is the most commonly used data feed type. Real time data feeds provide tick by tick 'real time' data. Real time data is licensed on a per-exchange basis whereas delayed data is typically purchased on a regional basis, such as US markets, rather than an exchange basis.
Some technical analysis software can be integrated with brokerage platforms to enable traders to place trades via a user interface that they are familiar with. Typically these software providers try to differentiate themselves from the brokerage software through enhanced features such as automated trading.
Technical analysis software is available in the form of commercial or open source software. Such software may be available on a computer, or on a mobile phone or personal digital assistant (PDA). Mobile phones and PDAs allow a user to access online technical analysis packages when away from their computer. However, packages that require the use of Java applets may not work on older model mobile phones or PDAs. Online technical analysis software packages provide access from any Internet-connected computer (including a suitably equipped mobile or PDA), but may require the user to store their information with the provider. Installed, downloaded software will only be available on the computers that the user has downloaded and installed it on.