StockChart Stock Market Technical Analysis Program Version 2.18 - December 1990 User's Manual Copyright 1988, 1989, 1990 - David A. Wizda All rights reserved Portions of this program include material Copyrighted by Absoft Corp 1988 THE UBIQUITOUS DISCLAIMER StockChart was written by an amateur programmer and investor. While every effort has been made to assure the accuracy of the information provided by this program, no warranty of any kind is either expressed or implied. If you make investment decisions based solely on the information supplied by this program, might I remind you that a fool and his money are soon parted. INTRODUCTION StockChart is designed for investors who want to perform technical analysis on stocks. The current version provides you with the facilities to input the high, low, close, and volume of stock prices on a daily basis; display the data for the latest six months; rescale the charts; and draw trend lines. Additional features include weekly graphs which show up to 2 1/2 years of data, moving averages, put-call ratio graphs, and advance-decline graphs. FILES The only file you need to run this program is "StockChart", however, you should have also received the data files "sp500", "AdvDec.dat" and "PutCall.dat" along with their ".info" files. We will assume that you have all or these files for the purposes of the rest of this Manual. AdvDec.dat and PutCall.dat must be in the current directory. RUNNING STOCKCHART To run StockChart, simply double-click its icon, or type "StockChart" from the CLI. (WARNING: When running from the CLI, make sure the stack is set to at least 13,256). You will be greeted by the copyright message and a window prompting you to enter a file name. Type "sp500" followed by the RETURN or ENTER key. Assuming that you have the file "sp500" and that it is in the same directory as StockChart, you should see a graph of the S&P 500 data for the last six months. To draw lines on the graph, position the pointer at any point on the graph and press the left mouse button. Reposition the pointer somewhere to the right of the first point and press the left mouse button again. Voila! Trend lines. Other features of the program are controlled by selecting items from the menu with the mouse as shown in Figure 1. FIGURE 1 MENU OPTIONS Data Graph Options Put-Call Ratio Choose Stock Auto Price Limits Enter Data Enter Data Set Price Limits Revise Data Revise Data Set Volume Limits Show Put-Call Ratio Quit Auto Volume Limits Daily Graph Weekly Graph Moving Average Redraw Screen Advance-Decline Enter Data Revise Data Set Limits Auto Limits Show Adv-Dec Data Choose Stock--A window will appear prompting you to enter a file name which includes the data for a specific stock. With this release of the program, we have included data for the S&P 500 (file name "sp500"). If you have this file and you enter the correct name, you will be displayed a graph of the stock performance for the past few months. Enter Data--You will be prompted to enter the year, month, day, high, low, close, and volume of the stock selected under the "Data--Choose Stock" option. You will then be prompted with "Enter Data (y,N,q,m)?" - Type "y" (Yes) if the data is correct and you want it to be written to the file. - Type "n" (No, the default) if the data is incorrect and you want to re-enter it. - Type "q" (Quit) if you do not want to enter any data. - Type "m" (More) if the data is correct, you want it to be written to the file, and you want to continue entering more data for the following day. Your first date for entering data must be a Monday. Years, months, and days must be entered as one or two-digit integers (e.g "88" for 1988, "8" for August). Prices must be entered in decimal form (e.g. "112.5", not 112 1/2). After the first day of data has been entered, the date will be entered automatically. The program knows about weekends and leap years, but not holidays. I suggest entering volumes in thousands (000 omitted) for single stocks and in millions (000 000 omitted) for stock indexes. For holidays, enter the date as described above, and "0" for the high, low, close, and volume. After you enter data, the graph will be redrawn. Revise Data--You will be prompted to enter the record number for the data that you want to review for possible revision. If you hit "RETURN" you will be shown the last 20 entries. If you want to revise one of the entries shown, enter its record number and then enter the data as described above. If you do not want to revise any of the data, press "RETURN". Graph Options Auto Price Limits--This is the default when you first review the graph. When selected, the top of the price graph will be set to the highest price within the period and the bottom of the price graph (the lowest vertical line, about 2/3 down the window) will be set to the lowest price. All other prices will be scaled proportionately. After you perform this function, the graph will be redrawn. Set Price Limits--You will be prompted to set the Upper Bound and the Lower Bound which correspond to the top and bottom horizontal lines. All other prices will be scaled proportionately. Since there are 20 fixed intervals between lines, you may wish to set the limits at "round" values by inputing multiples of 20. For example, if the Automatic Price Limits are 275.125 and 249.875, you could set the Upper Bound at 280 and the Lower Bound at 240. If you enter an upper bound which is less than the actual high, some of the higher prices will be off the screen. Likewise, if you enter a lower bound which is higher than the actual low, some of the lower prices will extend into the volume area. After you enter these values, the graph will be redrawn. Note the "Grid %" number in the lower right-hand column. This number is calculated by dividing the interval between the horizontal grid lines by the last closing price. It indicates the relative vertical (price) scale of the graph. This is useful in visualizing the commonly used 3% break-out rule. Auto Volume Limits--This is the default when you first review the graph. When selected, the top of the volume graph (the lowest line of the price graph) will be set to the highest volume within the period. All other volumes will be scaled proportionately. After you perform this function, the graph will be redrawn. Set Volume Limits--You will be prompted to set the upper bound of the volume graph (the lowest line of the price graph). All other volumes will be scaled proportionately. You may set the upper bound at a value lower than the actual high volume, in which case the volume line will extend into the price graph. Daily Graph--This is the default mode, showing six months of data. Weekly Graph--This mode shows about 2 1/2 years of weekly data with Friday's closing price. The vertical lines separate months, and since some months will have five Fridays instead of four, the lines are not evenly spaced. Moving Average--You will be prompted to enter the number of days for a moving average line (up to 200). To erase the line, enter "0". This feature has not yet been implemented in the weekly graph mode. Redraw Screen--The screen is redrawn, erasing any trend lines which you may have drawn, but not the moving average line. Put-Call Ratio Versions 2.0 and greater add provisions for entering one Put-Call ratio graph in a separate window. The accompanying file "PutCall.dat" includes data for the S&P 100 Index. You are free to use any index, however, this version limits you to one. Enter Data--This operation is the same as described above except that you enter the date followed by the call volume and the put volume. All data is written to the file "PutCall.dat" in the current directory. For holidays, enter the date and the previous day's call and put volumes. Revise Data--This operates the same as described above under "Data--Revise Data." Show Put-Call Ratio--A graph will appear in a window at the bottom of the screen showing the put-call ratio for the last six months. Some analysts believe that a put-call ratio above 1.3 (the shaded area at the top) is a bullish indicator and that a ratio below 0.6 (the shaded area at the bottom of the graph) is a bearish indicator. Advance-Decline Versions 2.06 and greater add provisions for entering one advance-decline line graph in a separate window. The accompanying file "AdvDec.dat" includes data for the NYSE. You are free to use any exchange, however, this version limits you to one. Enter Data--This operation is the same as described above except that you enter the date followed by the number of advancing issues followed by the number of declining issues. All data is written to the file "AdvDec.dat" in the current directory. For holidays, enter "0"'s. Revise Data--This operates the same as described above under "Data--Revise Data." Set Limits--Allows you to rescale the chart. Auto Limits--Rescales the chart proportionally between the highest and lowest values. Show Adv-Dec--A graph will appear in a window at the bottom of the screen showing the cumulative number of advances minus the number of declines for the last six months. I realize that this is not a traditional advance-decline line graph, but I think it is more meaningful. ENHANCEMENTS The following enhancements are under consideration for the next version. Your input is requested as to which should take priority. - Trim File--As you continue to add to the data files, they may soon become filled with useless data. This function will trim off the data from the beginning of the file - Print Data--This function will print the contents of data files - Better I/O and Error handling - Automatic data entry from news services. - Anything else that you want. Please let me know, whether or not you send me any money. BUGS For some reason, the program screws up the automatic scaling of the price chart for weekly data if you are entering data for more than one stock. You can still set the limits manually, so this is no big deal. I'm trying to fix it, but I can't seem to find out why it doesn't work correctly. SOURCE CODE Source Code is available on request. Versions 2.0 and later of this program have been written in AC/BASIC (a compiled BASIC language available from the Absoft Corporation). I am fairly sure that most of the program functions will work using the Amiga Basic interpreter except that you will have to rewrite the routines for drawing trend lines because of timing differences between the compiler and the interpreter.