Non Random

Trade-A-Stock Web App: Selecting A Stock


To narrow down the universe of stocks a bit, set each box however you would like and the application randomly selects a stock that fits the criteria you've selected. Leaving a box set to 'any' causes the application to ignore that criteria.

A central idea of the application is you must remain blind to as many characteristics of the stock as possible to ensure objectivity and remove hindsight bias. The bias exists because you are relying on historical data to test or hone your trading skills and, at some level, you already know what happened in the past. For example, would be long or short a stock if you knew the year was late 2008? How would you trade a technology stock on the NASDAQ in the late 1990s? The goal is to trade by analyzing price action, not using your memory of recent market events. Don't fool yourself into thinking you are a better trader than you are. Evaluate your trading as objectively as possible.

Duration of exercise

You may select 6 months, one year, or two years as the duration of the exercise. This means that you will trade for the equivalent amount of trading days before the application stops and analyzes your performance. Note, one year is treated as 255 trading days, as opposed to a specific calendar year. The actual number of trading days in a year varies a bit, but this is a good average value and sufficient for the purposes of the application.


All stocks in the database are binned (classified) according to the country's market where the stock trades. Listing every stock in the New York Stock Exchange (NYSE), for example, yields many closed end funds as well as Exchange Traded Funds (ETF). Normally stocks reflect the value of single underlying company. ETFs and closed end funds trade like stocks in the market, but reflect the performance of groups of securities or underlying commodities - kind of like mutual funds. As these are slightly different animals, they have been removed from being listed under the respective markets they trade in and have been given a separate classification. Choosing, “USA-ETF & Funds”, for example, will choose a stock in this category regardless of whether it trades on the NASDAQ or NYSE. It is up to the user to decide whether these types of securities have different price behavior when compared common stocks of a company.

Time Period

There are three unequal time periods from which you can choose to trade a stock. The time periods are sufficiently wide that you cannot be biased too much by choosing a specific period. If you do select this criteria, then the starting day of when you begin to trade will fall within the dates listed. For example, if you choose 1960-1989, then the day you start trading will be within that time period, but not necessarily the last day of trading. It is conceivable, then, that in the above example, you might trade from December 29, 1989 to December 29, 1990, spending most of your time trading in 1990. The database has considerably more data for recent years, then it does for years far in the past. Allowing you the ability to choose a rough time period allows you to ensure that you won't always be trading the years from 2005 to the present - where there is a lot more available data.

Pays Dividends

The application allows you to choose between dividend paying and non-dividend paying stocks, if you would like. Dividend paying stocks tend to behave differently ( less volatile) than stocks that don't pay dividends and you may wish to adjust your trading techniques accordingly. Note that the definition of a dividend paying stock is that it has to average paying one dividend a year for the decade in which it is our database.


Each stock on the market that isn't a fund (ETF or closed end) has been classified according to standard market sector classification for that stock. There are some that are unknown and some that defy a simple classification and these are binned as miscellaneous. The funds are classified as best as is possible, but sometimes these too defy simple sector classification.

As an example, choosing the criteria shown in the screenshot to the right will result in a randomly selected stock ( not an ETF or closed-end fund ) that trades ( or traded ) on the NASDAQ. You will trade the stock for one year with the first day you are allowed to trade being sometime between January 1st, 2000 and the present time. The stock may, or may not pay dividends, and it will be in the energy sector.


Pressing the “Go” button causes the application to retrieve the stock ( and market data ) that meets the criteria you've specified. The “Help” button takes you to this page and the “Back” button returns you to the home page.

Trade-A-Stock is a free web app designed to help you practice trading using technical analysis on historical stock data as objectively as possible. Each time you use Trade-A-Stock, you will trade one randomly selected stock for a fixed time period. Using the "Select a Stock" form, the user can, if desired, choose a certain class of stock as well as choosing the time frame of the exercise. If the user does not want to choose to trade a certain class of stock, then simply press the "Go" button and the application will reach into the database and randomly choose a stock.

Next Help PagePreferencesHelp.htmlHelpReport.htmlshapeimage_2_link_0