DEFINITION of 'Algorithm'

An algorithm is set of rules for accomplishing a task in a certain number of steps. One common example is a recipe, which is an algorithm for preparing a meal. Algorithms are essential for computers to process information. As such, they have become central to the daily lives of humans, whether someone orders a book online, makes an airline reservation or uses a search engine.

Financial companies use algorithms in areas such as loan pricing, stock trading and asset-liability management. For example, algorithmic trading, known as "algo," is used for deciding the timing, pricing and quantity of stock orders.


Algo trading, also known as automated trading or black-box trading, uses a computer program to buy or sell securities at a pace not possible for humans. Since prices of stocks, bonds and commodities appear in various formats online and in trading data, the process by which an algorithm digests scores of financial data becomes easy. The user of the program simply sets the parameters and gets a desired output when securities meet the trader's criteria.

Types of Algos

Several types of trading algorithms help investors decide whether to buy or sell. A mean reversion algorithm examines short-term prices over the long-term average price, and if a stock goes much higher than the average, a trader may sell it for a quick profit. Seasonality refers to the practice of traders buying and selling securities based on the time of year when markets typically rise or fall. A sentiment analysis algorithm gauges news about a stock price that could lead to higher volume for a particular trading period.


Following is an example of a simple algorithm for trading. A trader instructs his automated account to sell 100 shares of a stock if the 50-day moving average goes below the 200-day moving average. Contrarily, the trader could tell his program to buy 100 shares if the 50-day moving average of a stock rises above the 200-day moving average. Sophisticated algorithms can take into account hundreds of criteria before buying or selling securities. The reason for this is that computers are highly efficient machines for performing complex calculations very quickly.

In Computer Science

A programmer must employ five basic parts of an algorithm to create a successful program. The person must describe the problem in mathematical terms before setting up the formulas and processes that creates a result. Next, the programmer inputs the parameters that give the outcome, and then he executes the program over and over again to test it. The conclusion of the algorithm is the result given after the set of parameters goes through the set of instructions in the program.

For financial algorithms, the more complex the program, the more data the software can use to make accurate assessments to buy or sell securities. Also, programmers must test complex algorithms more thoroughly than simple ones, to ensure the right quality control.