home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpm / basic / aim30.lbr / AIM.BZS / AIM.BAS
BASIC Source File  |  1988-01-30  |  39KB  |  418 lines

  1. 1 CLEAR:GOSUB 394:PRINT CHR$(26);HI$:PRINT "Checking data files:                    AIM.BAS v. 3.0"
  2. 2 ON ERROR GOTO 303:S$="S1NAM.AIM":GOSUB 305:S$="S2NAM.AIM":GOSUB 305:S$="S3NAM.AIM":GOSUB 305:S$="S4NAM.AIM":GOSUB 305:S$="S5NAM.AIM":GOSUB 305:S$="S6NAM.AIM":GOSUB 305:CLEAR
  3. 3 ON ERROR GOTO 304:S$="S1AMT.AIM":GOSUB 305:S$="S2AMT.AIM":GOSUB 305:S$="S3AMT.AIM":GOSUB 305:S$="S4AMT.AIM":GOSUB 305:S$="S5AMT.AIM":GOSUB 305:S$="S6AMT.AIM":GOSUB 305:CLEAR
  4. 4 ON ERROR GOTO 304:S$="ORIGVAL.AIM":GOSUB 305:S$="LASTVAL.AIM":GOSUB 305:S$="CASHFUND.AIM":GOSUB 305:S$="CONTROL.AIM":GOSUB 305:CLEAR
  5. 5 ON ERROR GOTO 306:OPEN "I",#1,"DATE.AIM":CLOSE #1:ON ERROR GOTO 307:OPEN "I",#1,"ORGDATE.AIM":CLOSE #1:ON ERROR GOTO 308:OPEN "I",#1,"NEWDATE.AIM":CLOSE #1:ON ERROR GOTO 298:OPEN "I",#1,"HISTORY.AIM":CLOSE #1:CLEAR
  6. 6 ON ERROR GOTO 302:OPEN "I",#1,"HISTORY.BAK":CLOSE #1:PRINT CHR$(7);"OK!":FOR I=1 TO 2000:NEXT I
  7. 7 CLOSE:CLEAR:GOSUB 394:X=1
  8. 8 PRINT CHR$(26);"            AUTOMATIC INVESTMENT MANAGER (AIM) - by D.C.Mack 9/25/86"
  9. 9 PRINT "             Based on stock investment strategy by Robert Lichello";LO$:PRINT "The AIM stock and cash reserve investment method is a superior investment"
  10. 10 PRINT "strategy to LUMP-SUM investing, DOLLAR & DOUBLE-DOLLAR AVERAGING, and other":PRINT "methods.  AIM outperforms these systems by uniquely monitoring CASH and EQUITY"
  11. 11 PRINT "holdings in relation to long-term capital growth.  It fully optimizes purchase":PRINT "& sale of stock during VOLATILE market cycles.  This strategy is based upon"
  12. 12 PRINT CHR$(34);"HOW TO MAKE A MILLION IN THE STOCK MARKET - AUTOMATICALLY!";CHR$(34);" by Robert":PRINT "Lichello.  This method has received favorable attention in Dunn & Bradstreet,"
  13. 13 PRINT "The Wall Street Journal, Business Week and other publications.  Read the book":PRINT "to fully understand this strategy and ways this program may benefit you.";HI$:GOTO 26
  14. 14 CLOSE #1:CLOSE #2:IF YY=1 THEN OPEN "O",#1,"NEWDATE.AIM" ELSE 17
  15. 15 PRINT#1,MID$(D$,1,2):PRINT#1,MID$(D$,4,2):PRINT#1,MID$(D$,7,2):CLOSE #1
  16. 16 OPEN "I",#1,"ORGDATE.AIM":INPUT#1,D:CLOSE #1:IF D=0 THEN OPEN "O",#1,"ORGDATE.AIM":PRINT#1,MID$(D$,1,2):PRINT#1,MID$(D$,4,2):PRINT#1,MID$(D$,7,2):CLOSE ELSE 17
  17. 17 CLEAR:GOSUB 394
  18. 18 PRINT CHR$(26);"================================== STATUS ====================================="
  19. 19 GOSUB 328:OPEN "I",#1,"CONTROL.AIM":INPUT#1,A1:CLOSE #1:IF A1=0 THEN OPEN "O",#1,"ORIGVAL.AIM":PRINT#1,A1:CLOSE #1
  20. 20 IF A=0 AND B=0 THEN D=0:GOTO 23
  21. 21 IF A=0 THEN A=1:E=1:GOTO 22 ELSE IF B<1 THEN D=1*(-100):GOTO 23
  22. 22 C=B-A:D=(C/A)*100:IF E=1 THEN A=0
  23. 23 C=(B-A):PRINT "Orig. Investment: $";LO$;:PRINT USING"########";A;:PRINT HI$;"  Last Value: $";LO$;:PRINT USING"########";B;:PRINT HI$;"  Profit/Loss: $";LO$;:PRINT USING"+########";C
  24. 24 GOSUB 336:PRINT HI$;"  -------------------------  Annual Return:";LO$;:PRINT USING"+#####%";I;:PRINT HI$;"  -------------------------":PRINT LO$;"Your last two transactions were recorded as follows:";HI$
  25. 25 GOSUB 208:PRINT HI$;"==============================================================================="
  26. 26 PRINT:PRINT "           1 = SET UP/CHANGE AIM portfolio":PRINT "           2 = UPDATE AIM status":PRINT "           3 = QUICK AIM calculation (Note: Cannot be SAVED to disk)"
  27. 27 PRINT "           4 = REVIEW/CHANGE stocks owned":PRINT "           5 = VIEW  AIM transactions":PRINT "           6 = PRINT AIM transactions":PRINT "           7 = ERASE and ERROR Options"
  28. 28 PRINT "           8 = GENERATE a form for handwritten records":PRINT "           9 = INFO (Broker Fees, Dividends, Interest, Taxes)":PRINT "           0 = QUIT & EXIT FROM PROGRAM."
  29. 29 IF X=1 THEN PRINT:LINE INPUT "           ENTER OPTION (or PRESS RETURN for STATUS): ";Q$:X=0:GOTO 31
  30. 30 CLEAR:PRINT:LINE INPUT "           ENTER OPTION: ";Q$
  31. 31 GOSUB 394:IF Q$="0" THEN PRINT CHR$(26):GOTO 32 ELSE 36
  32. 32 PRINT:PRINT:PRINT:PRINT LO$;"  You are about to exit from the program.  BEFORE you exit, you should check"
  33. 33 PRINT "  options 4 & 5 on the MAIN MENU to be sure you've saved your data.";HI$
  34. 34 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT "            Do you wish to exit from this program (Y/N)";:INPUT Q1$
  35. 35 IF Q1$="Y" OR Q1$="y" THEN GOSUB 406:SYSTEM ELSE 14
  36. 36 IF Q$="1" THEN HOW=1:GOTO 40 ELSE IF Q$="2" THEN HOW=2:GOTO 52 ELSE IF Q$="3" THEN HOW=3:GOTO 180 ELSE IF Q$="4" THEN 273 ELSE IF Q$="5" THEN PRINT CHR$(26):GOTO 194
  37. 37 IF Q$="6" THEN PRINT CHR$(26):GOTO 216
  38. 38 IF Q$="7" THEN PRINT CHR$(26):GOTO 230 ELSE IF Q$="8" THEN GOSUB 373:GOTO 14 ELSE IF Q$="9" THEN PRINT CHR$(26);"                       ADDITIONAL INFORMATION ON AIM":PRINT:GOTO 170
  39. 39 IF Q$="" THEN 14 ELSE 8
  40. 40 PRINT CHR$(26);"HOW TO SET UP AN AIM SYSTEM";LO$;" . . . basic advice is KEEP IT SIMPLE!":PRINT
  41. 41 PRINT HI$;"Step 1:";LO$;" Select an amount to invest ($7,500 to $10,000 or more is best).":PRINT HI$;"Step 2:";LO$;" Set up a nine-column form on a sheet of paper as shown below."
  42. 42 PRINT "        NOTE: USE OPTION 8 on MAIN MENU to print the basic form or use the":PRINT "              SAVE option during this program to save all information on disk.":PRINT
  43. 43 PRINT "  Date |STOCK | Safe |  CASH | CONTROL |Buy/Sell- | MARKET |Portfolio|Broker":PRINT "       |VALUE |(10%) |  FUND |  VALUE  |  Advice  |  ORDER | Value   |Fee"
  44. 44 PRINT "       | 3250 |      |  3250 |   3250  |          |        |  7500   |   ":PRINT 
  45. 45 PRINT HI$;"Step 3:";LO$;" Choose 2 to 6 moderately volatile good-quality stocks or several good":PRINT "        precious metals or mutual funds & INVEST HALF (STOCK VALUE column)."
  46. 46 PRINT HI$;"Step 4:";LO$;" Choose a safe, high-yield money fund account to hold cash reserves":PRINT "        and INVEST HALF the money in the MONEY MARKEY FUND (CASH FUND column)."
  47. 47 PRINT HI$;"Step 5:";LO$;" Record amounts invested in STOCK VALUE and CASH FUND columns.":PRINT HI$;"Step 6:";LO$;" Enter total amount invested in stock in CONTROL VALUE column."
  48. 48 PRINT "         NOTE: The CONTROL VALUE will eventually change in succeeding months,":PRINT "         and will be computed in relation to the prior month's CONTROL VALUE "
  49. 49 PRINT "         and amount of new stock recommended for purchase (MARKET ORDER).":PRINT "         The CONTROL VALUE will increase by half the amount of new stock to be"
  50. 50 PRINT "         purchased; if none, or stock is sold, the CONTROL VALUE is unchanged.":PRINT HI$;"Step 7:";LO$;" On the same day, monthly or biweekly, perform the steps which follow."
  51. 51 PRINT HI$;"                    PRESS RETURN KEY TO CONTINUE: ";:LINE INPUT Q$
  52. 52 PRINT CHR$(26):PRINT "AIM DATE-STAMP":PRINT
  53. 53 PRINT LO$;"The date you enter here will be used to date-stamp the calculations"
  54. 54 PRINT "you will be computing and saving in the HISTORY.AIM file on your disk.";HI$
  55. 55 OPEN "I",#1,"NEWDATE.AIM":INPUT#1,A$,B$,C$:A$=A$+"/"+B$+"/"+C$:CLOSE #1:IF A$="00/00/00" THEN 56 ELSE GOSUB 395
  56. 56 PRINT:PRINT:PRINT "Enter DATE (mm/dd/yy), or press RETURN if date = ";A$;": ";:LINE INPUT D$
  57. 57 IF D$="" THEN D$=A$:GOTO 58 ELSE IF LEN(D$)>8 OR MID$(D$,3,1)<>"/" OR MID$(D$,6,1)<>"/" THEN PRINT:PRINT CHR$(7);"ENTRY ERROR - Try again!":FOR I=1 TO 2000:NEXT I:GOTO 52
  58. 58 OPEN "O",#1,"DATE.AIM":PRINT#1,D$:CLOSE #1:IF HOW=1 THEN 273
  59. 59 F$="1":PRINT CHR$(26);"CURRENT STOCK VALUE COMPUTATIONS -- ";D$:IF HOW=1 THEN PRINT:PRINT:GOTO 61 ELSE PRINT LO$;"   Reminder: When FIRST buying stocks, the cash value invested in each company:"
  60. 60 PRINT "   WITHIN A STOCK CATEGORY should be about equal. This program uses three major":PRINT "   categories (BLUE CHIP, QUALITY GROWTH, and MODERATELY SPECULATIVE stocks).";HI$:PRINT
  61. 61 PRINT "BLUE CHIP STOCKS           (Should consist of 50-80% of all stock value held):"
  62. 62 S$="S1NAM.AIM":GOSUB 295:IF A$="---- " THEN FF=FF+1:GOTO 65 ELSE SN1$=A$:PRINT "*  Current PRICE PER SHARE (ounce) of ";A$;:INPUT S1
  63. 63 IF HOW=1 THEN 65 ELSE SS$="S1AMT.AIM":GOSUB 296:PRINT "   Current NUMBER OF SHARES (ounces) held (";A;" prior)";:INPUT S1$
  64. 64 IF S1$="" THEN S1#=A:GOTO 65 ELSE OPEN "O",#1,"BUFF.AIM":PRINT#1,S1$:CLOSE #1:OPEN "I",#1,"BUFF.AIM":INPUT#1,A:CLOSE #1:S1#=A
  65. 65 S1V=S1*S1#:S$="S2NAM.AIM":GOSUB 295:IF A$="---- " THEN FF=FF+1:GOTO 68 ELSE SN2$=A$:PRINT "*  Current PRICE PER SHARE (ounce) of ";A$;:INPUT S2
  66. 66 IF HOW=1 THEN 68 ELSE SS$="S2AMT.AIM":GOSUB 296:PRINT "   Current NUMBER OF SHARES (ounces) held (";A;" prior)";:INPUT S2$
  67. 67 IF S2$="" THEN S2#=A:GOTO 68 ELSE OPEN "O",#1,"BUFF.AIM":PRINT#1,S2$:CLOSE #1:OPEN "I",#1,"BUFF.AIM":INPUT#1,A:CLOSE #1:S2#=A
  68. 68 IF SN1$=SN2$ THEN PRINT LO$;"*  No Blue Chip Stocks, Mutual Funds, or Precious Metals recorded.";HI$
  69. 69 S2V=S2*S2#:PRINT:PRINT "QUALITY GROWTH STOCKS      (Should consist of 20-50% of all stock value held):"
  70. 70 S$="S3NAM.AIM":GOSUB 295:IF A$="---- " THEN FF=FF+1:GOTO 73 ELSE SN3$=A$:PRINT "*  Current PRICE PER SHARE of ";A$;:INPUT S3
  71. 71 IF HOW=1 THEN 73 ELSE SS$="S3AMT.AIM":GOSUB 296:PRINT "   Current NUMBER OF SHARES held (";A;" prior)";:INPUT S3$
  72. 72 IF S3$="" THEN S3#=A:GOTO 73 ELSE OPEN "O",#1,"BUFF.AIM":PRINT#1,S3$:CLOSE #1:OPEN "I",#1,"BUFF.AIM":INPUT#1,A:CLOSE #1:S3#=A
  73. 73 S3V=S3*S3#:S$="S4NAM.AIM":GOSUB 295:IF A$="---- " THEN FF=FF+1:GOTO 76 ELSE SN4$=A$:PRINT "*  Current PRICE PER SHARE of ";A$;:INPUT S4
  74. 74 IF HOW=1 THEN 76 ELSE SS$="S4AMT.AIM":GOSUB 296:PRINT "   Current NUMBER OF SHARES held (";A;" prior)";:INPUT S4$
  75. 75 IF S4$="" THEN S4#=A:GOTO 76 ELSE OPEN "O",#1,"BUFF.AIM":PRINT#1,S4$:CLOSE #1:OPEN "I",#1,"BUFF.AIM":INPUT#1,A:CLOSE #1:S4#=A
  76. 76 IF SN3$=SN4$ THEN PRINT LO$;"*  No Quality Growth Stocks recorded.";HI$
  77. 77 S4V=S4*S4#:PRINT:PRINT "MODERATELY SPECULATIVE STOCKS (May consist of  0-20% of all stock value held):"
  78. 78 S$="S5NAM.AIM":GOSUB 295:IF A$="---- " THEN FF=FF+1:GOTO 81 ELSE SN5$=A$:PRINT "*  Current PRICE PER SHARE of ";A$;:INPUT S5
  79. 79 IF HOW=1 THEN 81 ELSE SS$="S5AMT.AIM":GOSUB 296:PRINT "   Current NUMBER OF SHARES held (";A;" prior)";:INPUT S5$
  80. 80 IF S5$="" THEN S5#=A:GOTO 81 ELSE OPEN "O",#1,"BUFF.AIM":PRINT#1,S5$:CLOSE #1:OPEN "I",#1,"BUFF.AIM":INPUT#1,A:CLOSE #1:S5#=A
  81. 81 S5V=S5*S5#:S$="S6NAM.AIM":GOSUB 295:IF A$="---- " THEN FF=FF+1:GOTO 85 ELSE SN6$=A$:PRINT "*  Current PRICE PER SHARE of ";A$;:INPUT S6
  82. 82 IF HOW=1 THEN 84 ELSE SS$="S6AMT.AIM":GOSUB 296:PRINT "   Current NUMBER OF SHARES held (";A;" prior)";:INPUT S6$
  83. 83 IF S6$="" THEN S6#=A:GOTO 84 ELSE OPEN "O",#1,"BUFF.AIM":PRINT#1,S6$:CLOSE #1:OPEN "I",#1,"BUFF.AIM":INPUT#1,A:CLOSE #1:S6#=A
  84. 84 S6V=S6*S6#
  85. 85 IF SN5$=SN6$ THEN PRINT LO$;"*  No Speculative Stocks recorded. ";HI$
  86. 86 IF FF=6 THEN FF=0:GOTO 87 ELSE PRINT:PRINT " PRESS RETURN KEY TO CONTINUE: ";:LINE INPUT Q$:GOTO 89
  87. 87 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT CHR$(7);"    Since your portfolio contains no stock information, you must enter":PRINT "    stock symbols and number of shares.":PRINT:PRINT "    PRESS RETURN KEY TO CONTINUE (or X to abort): ";:LINE INPUT Q$
  88. 88 IF Q$="X" OR Q$="x" THEN 17 ELSE 273
  89. 89 SVS = S1V+S2V+S3V+S4V+S5V+S6V
  90. 90 IF SVS = 0 THEN PCB=0:PCM=0:PCS=0:GOTO 94 ELSE PCB = ((S1V+S2V)/SVS)*100
  91. 91 IF PCB<1 THEN PCB=0
  92. 92 PCM = ((S3V+S4V)/SVS)*100:IF PCM<1 THEN PCM=0
  93. 93 PCS = ((S5V+S6V)/SVS)*100:IF PCS<1 THEN PCS=0
  94. 94 PRINT CHR$(26);"                 AIM WORKSHEET INFORMATION & MARKET ADVICE"
  95. 95 PRINT LO$;"If adding NEW cash, put 1/2 in STOCK. Raise CONTROL VAL by amt. added to stock."
  96. 96 PRINT "-------(50-80%)-------\ /---------(20-50%)----------\ /--------( 0-20%)--------"
  97. 97 PRINT "BLUE CHIP STOCKS=";:PRINT USING "###%";PCB;:PRINT "  |  QUALITY GROWTH STOCKS=";:PRINT USING "###%";PCM;
  98. 98 PRINT " | SPECULATIVE STOCKS=";:PRINT USING "###%";PCS
  99. 99 PRINT "1.";:PRINT USING"\    \";SN1$;:PRINT " = ";:PRINT USING"$$######.##";S1V;:PRINT " | 3.";:PRINT USING"\    \";SN3$;:PRINT " = ";:PRINT USING"$$######.##";S3V;:PRINT "      | 5.";
  100. 100 PRINT USING"\    \";SN5$;:PRINT " = ";:PRINT USING"$$######.##";S5V
  101. 101 PRINT "2.";:PRINT USING"\    \";SN2$;:PRINT " = ";:PRINT USING"$$######.##";S2V;:PRINT " | 4.";:PRINT USING"\    \";SN4$;:PRINT " = ";:PRINT USING"$$######.##";S4V;:PRINT "      | 6.";
  102. 102 PRINT USING"\    \";SN6$;:PRINT " = ";:PRINT USING"$$######.##";S6V;:
  103. 103 PRINT HI$;"                  Current TOTAL STOCK VALUE  = ";:PRINT USING "##########";SVS
  104. 104 GOSUB 208
  105. 105 OPEN "I",#1,"CONTROL.AIM":INPUT#1,A1:CLOSE #1:IF A1=0 THEN 106 ELSE 107
  106. 106 IF F$="1" THEN 108 ELSE PRINT HI$;"* Enter VALUE OF INITIAL STOCK PURCHASE";:INPUT SVS:GOTO 109
  107. 107 IF HOW=3 THEN PRINT HI$;"* Enter TOTAL DOLLAR VALUE of STOCK owned";:INPUT SVS:GOTO 109
  108. 108 PRINT HI$;"* VALUE OF STOCK = $";LO$;SVS;HI$;".  ";
  109. 109 SV=SVS
  110. 110 SF=SV*.1
  111. 111 OPEN "I",#1,"CASHFUND.AIM":INPUT#1,A:CLOSE #1:IF A1=0 THEN 112 ELSE 117
  112. 112 IF F$="1" THEN PRINT
  113. 113 PRINT HI$;CHR$(7);"* Deposit $";SV;" CASH in a money market account (Press RETURN KEY): ";:LINE INPUT Q$:CF=SV:OPC=SV
  114. 114 PRINT LO$;"Your intial AIM record is as follows:";HI$:GOTO 124
  115. 115 IF HOW<>3 THEN 117 ELSE PRINT HI$;"* Enter LAST MONTH'S CASH IN CASHFUND (Press RETURN if $";A;"):";:LINE INPUT CF$
  116. 116 IF CF$="" THEN CF=A:GOTO 120 ELSE 119
  117. 117 PRINT HI$;"  LAST MO.'s CASH FUND = $";LO$;A;HI$;"." 
  118. 118 IF CF$="" THEN CF=A:GOTO 120 ELSE 119
  119. 119 OPEN "O",#1,"BUFF.AIM":PRINT#1,CF$:CLOSE #1:OPEN "I",#1,"BUFF.AIM":INPUT#1,B:CLOSE #1:CF=B
  120. 120 PRINT HI$;"* Enter cash ADDED to CASHFUND (dividend/interest/stock sold)";:INPUT SP:CF=CF+SP:PRINT "* Enter cash DEDUCTED from CASHFUND (broker fee/stock bought)";:INPUT SP:CF=CF-SP
  121. 121 OPEN "I",#1,"CONTROL.AIM":INPUT#1,A:CLOSE #1:PRINT "* Enter LAST MONTH'S CONTROL VALUE   (Press RETURN if ";A;")";:INPUT OPC$:IF HOW<>3 THEN PRINT LO$;"New update and advice as of ";D$;" is shown below:"ELSE IF HOW=3 THEN PRINT
  122. 122 IF OPC$="" THEN OPC=A:GOTO 124 ELSE 123
  123. 123 OPEN "O",#1,"BUFF.AIM":PRINT#1,OPC$:CLOSE #1:OPEN "I",#1,"BUFF.AIM":INPUT#1,B:CLOSE #1:OPC=B
  124. 124 IF SV>OPC THEN BS=SV-OPC:AD$="SELL $" ELSE IF SV<OPC THEN BS=OPC-SV:AD$="PURCHASE $"
  125. 125 IF SV=OPC THEN BS=0:MO=0:GOTO 127
  126. 126 IF BS>SF THEN MO=BS-SF ELSE IF BS<=SF THEN MO=0
  127. 127 IF AD$="PURCHASE $" AND MO>100 THEN NPC=OPC+(MO/2) ELSE NPC=OPC
  128. 128 PV=SV+CF:IF BS>0 AND AD$="SELL $" THEN BS$="-" ELSE BS$=" "
  129. 129 IF MO>0 AND AD$="SELL $" THEN MO$="-" ELSE MO$=" "
  130. 130 IF D$="" THEN D$="00/00/00"
  131. 131 IF S=1 THEN PRINT LO$;CHR$(26);"[ DATA SAVED ] The AIM data below has been saved to disk.";HI$
  132. 132 IF P=1 THEN PRINT LO$;"[ HARD COPY  ] The AIM data below has been printed on list device.";HI$
  133. 133 IF S=1 OR P=1 THEN PRINT:PRINT
  134. 134 PRINT HI$;" NEW AIM| STOCK  |  Safe  | CASH   | CONTROL   |Buy/Sell- | MARKET   |Portfolio"
  135. 135 PRINT " UPDATE | VALUE  |  (10%) | FUND   |  VALUE    | Advice   | ORDER    |  Value  "
  136. 136 PRINT D$;"|";:PRINT USING "#######";SV;:PRINT " |";:PRINT USING "#######";SF;:PRINT " |";:PRINT USING "#######-";CF;:PRINT "|";
  137. 137 PRINT USING "##########";NPC;:PRINT " |";:PRINT USING "########";BS;:PRINT BS$;" |";:PRINT USING "########";MO;
  138. 138 PRINT MO$;" |";:PRINT USING "########";PV
  139. 139 IF MO<100 AND AD$="SELL $" THEN PRINT "[ Amount of stock to SELL is too small.  TAKE NO ACTION. ]":GOTO 143 ELSE IF MO<100 AND AD$="PURCHASE $" THEN PRINT "[ Amount of stock to PURCHASE is too small. TAKE NO ACTION. ]":GOTO 143
  140. 140 IF BS<=SF AND AD$="SELL $" THEN PRINT "[ Sale of Stock is UNSAFE!  TAKE NO ACTION! ]" :GOTO 143 ELSE IF BS<=SF AND AD$="PURCHASE $" THEN PRINT "[Stock Purchase UNSAFE!  TAKE NO ACTION! ]" :GOTO 143
  141. 141 IF BS=0 THEN PRINT "[ BUY/SELL column is zero.  TAKE NO ACTION! ]":GOTO 143 ELSE IF AD$="PURCHASE $" AND MO>CF THEN PRINT "[ You should ";AD$;MO;" of stock (all of CASHFUND). ]":GOTO 143
  142. 142 IF AD$="SELL $" AND MO>SV THEN PRINT "[ You should ";AD$;" ALL SHARES of stock now! ]":GOTO 143 ELSE PRINT "[ You are ORDERED to ";AD$;MO;" of stock.  CALL BROKER NOW! ]"
  143. 143 IF S=1 THEN 144 ELSE IF HOW=3 THEN 144 ELSE PRINT:LINE INPUT "Enter S to SAVE ON DISK, P to PRINT, or RETURN KEY to ABORT: ";Q$:GOTO 145
  144. 144 PRINT:LINE INPUT "Enter P to PRINT, or RETURN KEY to ABORT: ";Q$:GOTO 148
  145. 145 IF Q$="S" OR Q$="s" THEN S=1:YY=1:PRINT CHR$(26);"SAVING DATA TO FILES . . .":GOSUB 150:GOTO 146 ELSE 148
  146. 146 IF F$="1" THEN 147 ELSE 130
  147. 147 SS$="S1AMT.AIM":A=S1#:GOSUB 297:SS$="S2AMT.AIM":A=S2#:GOSUB 297:SS$="S3AMT.AIM":A=S3#:GOSUB 297:SS$="S4AMT.AIM":A=S4#:GOSUB 297:SS$="S5AMT.AIM":A=S5#:GOSUB 297:SS$="S6AMT.AIM":A=S6#:GOSUB 297 GOSUB 297:F$="":GOTO 130
  148. 148 IF Q$="P" OR Q$="p" THEN P=1:PRINT CHR$(26);" AIM INFO SENT TO PRINTER":GOSUB 152:PRINT CHR$(26):GOTO 130
  149. 149 IF Q$="" THEN 14 ELSE PRINT CHR$(26):PRINT LO$;"[ Select an option below or press RETURN KEY to abort. ]";HI$: GOTO 130
  150. 150 ON ERROR GOTO 151
  151. 151 GOSUB 185:GOSUB 332:RETURN:REM PRINT CHR$(26):RETURN
  152. 152 LPRINT "   DATE   STOCK     Safe    CASH     CONTROL    Buy/Sell-   MARKET   Portfolio":LPRINT "          VALUE     (10%)   FUND      VALUE      Advice     ORDER      Value"
  153. 153 LPRINT "------------------------------------------------------------------------------"
  154. 154 IF D$="" THEN D$="00/00/00"
  155. 155 LPRINT D$;"|";:LPRINT USING "#######";SV;:LPRINT " |";:LPRINT USING "#######";SF;:LPRINT " |";:LPRINT USING "#######-";CF;:LPRINT "|";
  156. 156 LPRINT USING "##########";NPC;:LPRINT " |";:LPRINT USING "########";BS;:LPRINT BS$;" |";:LPRINT USING "########";MO;
  157. 157 LPRINT MO$;" |";:LPRINT USING "########";PV
  158. 158 LPRINT "        |        |        |        |           |          |          |         "
  159. 159 LPRINT "-------------------------------------------------------------------------------"
  160. 160 LPRINT "PORTFOLIO AS OF ";D$
  161. 161 LPRINT "   1:";:LPRINT USING"\  \";SN1$;:LPRINT " ";:LPRINT USING"#####";S1#;:LPRINT " @ $";:LPRINT USING"####.##";S1;:LPRINT "   3:";:LPRINT USING"\  \";SN3$;:LPRINT " ";:LPRINT USING"#####";S3#;:LPRINT " @ $";:LPRINT USING"####.##";S3;
  162. 162 LPRINT "   5:";:LPRINT USING"\  \";SN5$;:LPRINT " ";:LPRINT USING"#####";S5#;:LPRINT " @ $";:LPRINT USING"####.##";S5:LPRINT "   2:";:LPRINT USING"\  \";SN2$;:LPRINT " ";:LPRINT USING"#####";S2#;:LPRINT " @ $";:LPRINT USING"####.##";S2;
  163. 163 LPRINT "   4:";:LPRINT USING"\  \";SN4$;:LPRINT " ";:LPRINT USING"#####";S4#;:LPRINT " @ $";:LPRINT USING"####.##";S4;:LPRINT "   6:";:LPRINT USING"\  \";SN6$;:LPRINT " ";:LPRINT USING"#####";S6#;:LPRINT " @ $";:LPRINT USING"####.##";S6
  164. 164 LPRINT:LPRINT "-------------------------------------------------------------------------------":LPRINT "AIM RECOMMENDATION FOR ";D$
  165. 165 IF MO<100 AND AD$="SELL $" THEN LPRINT " Amount of stock to SELL is too small.  TAKE NO ACTION.":GOTO 169 ELSE IF MO<100 AND AD$="PURCHASE $" THEN LPRINT " Amount of stock to PURCHASE is too small. TAKE NO ACTION.":GOTO 169
  166. 166 IF BS<=SF AND AD$="SELL $" THEN LPRINT " Sale of Stock is UNSAFE!  TAKE NO ACTION!" :GOTO 169 ELSE IF BS<=SF AND AD$="PURCHASE $" THEN LPRINT " Stock Purchase UNSAFE!  TAKE NO ACTION!" :GOTO 169
  167. 167 IF BS=0 THEN LPRINT " BUY/SELL is zero.  TAKE NO ACTION!":GOTO 169 ELSE IF AD$="PURCHASE $" AND MO>CF THEN LPRINT " You should ";AD$;CF;" of stock (use all CASHFUND).":GOTO 169
  168. 168 IF AD$="SELL $" AND MO>SV THEN LPRINT " You should ";AD$;" ALL SHARES of stock now!":GOTO 169 ELSE LPRINT "You have a MARKET ORDER to ";AD$;MO;" of stock.  ACT NOW!"
  169. 169 LPRINT:LPRINT:PRINT CHR$(26):GOTO 130
  170. 170 PRINT "  COMMISSIONS (FEES) CHARGED BY BROKERS TO BUY & SELL STOCK:"
  171. 171 PRINT LO$;"    DO NOT include commission charges in the CONTROL VALUE column.":PRINT "    Brokerage commissions should be deducted from the MONEY FUND"
  172. 172 PRINT "    account.  A separate column can be made on your AIM form to":PRINT "    keep a running tally of each commission for later reference.";HI$
  173. 173 PRINT "  CREDITING STOCK DIVIDENDS:":PRINT LO$;"    Stock dividends should added to the CASH FUND as they are received.";HI$
  174. 174 PRINT "  CREDITING INTEREST ON MONEY FUND:":PRINT LO$;"    Earned interest SHOULD BE INCLUDED in the CASH FUND column each month.";HI$
  175. 175 PRINT "  TAXES:":PRINT LO$;"    Taxes should NOT be paid from the CASH FUND.  If you must withdraw":PRINT "    money from the money fund to pay taxes, then you must also sell an"
  176. 176 PRINT "    equal amount of stock.  DO NOT adjust the CONTROL VALUE.";HI$
  177. 177 PRINT "  DEPLETED CASH FUND:":PRINT LO$;"    If you run out of money to buy stocks from CASH FUND that's good!"
  178. 178 PRINT "    You may add additional cash from another source, but be sure to add":PRINT "    an equal amount in cash fund and stock purchases & increase CONTROL"
  179. 179 PRINT "    VALUE by the amount of added stock purchased.";HI$:PRINT:PRINT "  READ ROBERT LICHELLO'S BOOK FOR MORE DETAILS.":PRINT:LINE INPUT "  Press RETURN for MAIN MENU: ";Q$:GOTO 14
  180. 180 OPEN "I",#1,"NEWDATE.AIM":INPUT#1,A$,B$,C$:A$=A$+"/"+B$+"/"+C$:CLOSE #1:IF A$="00/00/00" THEN 181 ELSE GOSUB 395
  181. 181 PRINT CHR$(26);"SIMPLIFIED AIM CALCULATION":PRINT:PRINT:PRINT "Enter DATE (mm/dd/yy), or press RETURN if date = ";A$;": ";:LINE INPUT D$
  182. 182 IF D$="" THEN D$=A$:GOTO 183 ELSE IF LEN(D$)>8 OR MID$(D$,3,1)<>"/" OR MID$(D$,6,1)<>"/" THEN PRINT:PRINT CHR$(7);"ENTRY ERROR - Try again!":FOR I=1 TO 2000:NEXT I:GOTO 181
  183. 183 OPEN "O",#1,"DATE.AIM":PRINT#1,D$:CLOSE #1
  184. 184 PRINT CHR$(26);"AIM QUICK COMPUTATION -- ";D$:PRINT:PRINT:PRINT:PRINT:PRINT:GOTO 104
  185. 185 OPEN "O",#1,"CASHFUND.AIM":PRINT#1,CF:CLOSE #1:OPEN "O",#1,"CONTROL.AIM":PRINT#1,NPC:CLOSE #1:OPEN "O",#1,"LASTVAL.AIM":PRINT#1,PV:CLOSE #1:OPEN "I",#1,"HISTORY.AIM":OPEN "O",#2,"COPY"
  186. 186 IF EOF(1) THEN 188
  187. 187 LINE INPUT#1,A$:PRINT#2,A$:GOTO 186
  188. 188 CLOSE #1:KILL"HISTORY.AIM":
  189. 189 IF D$="" THEN D$="00/00/00"
  190. 190 N=2:GOSUB 363:N=1:GOSUB 319:CLOSE #2:NAME "COPY" AS "HISTORY.AIM"
  191. 191 OPEN "O",#2,"CASHFUND.AIM":PRINT#2,CF:CLOSE #2:OPEN "O",#2,"CONTROL.AIM":PRINT#2,NPC:CLOSE #2
  192. 192 ON ERROR GOTO 14
  193. 193 RETURN
  194. 194 ON ERROR GOTO 204:OPEN "I",#1,"HISTORY.AIM"
  195. 195 PRINT CHR$(26);
  196. 196 IF EOF(1) THEN 202
  197. 197 LINE INPUT#1,A1$:IF MID$(A1$,4,4)="DATE" OR MID$(A1$,11,5)="VALUE" THEN 200 ELSE 198
  198. 198 IF MID$(A1$,1,1)="[" THEN 199 ELSE 201
  199. 199 PRINT MID$(A1$,1,79):PRINT:COUNT=COUNT+1:IF COUNT>=22 THEN COUNT=0:GOSUB 205:GOTO 196 ELSE 196
  200. 200 PRINT MID$(A1$,1,79):COUNT=COUNT+1:IF COUNT>=22 THEN COUNT=0:GOSUB 205:GOTO 196 ELSE 196
  201. 201 PRINT MID$(A1$,1,79):PRINT LO$;MID$(A1$,82,78):PRINT MID$(A1$,160,79);HI$:COUNT=COUNT+4:IF COUNT>=22 THEN COUNT=0:GOSUB 205:GOTO 196 ELSE 196
  202. 202 CLOSE #1
  203. 203 PRINT:PRINT "                       Press RETURN KEY to continue: ";:LINE INPUT Q$:COUNT=0:GOTO 14
  204. 204 PRINT CHR$(26):PRINT "No prior record of AIM data has been established.":PRINT:LINE INPUT "PRESS RETURN KEY FOR MAIN MENU: "; Q$:GOTO 14
  205. 205 PRINT:PRINT "                      PRESS RETURN KEY FOR MORE DATA: ";:LINE INPUT Q$:COUNT=2
  206. 206 PRINT CHR$(26);"   DATE   STOCK     Safe    CASH     CONTROL    Buy/Sell-   MARKET   Portfolio"
  207. 207 PRINT "          VALUE     (10%)   FUND      VALUE      Advice     ORDER      Value  ":RETURN
  208. 208 CLOSE:OPEN "I",#1,"HISTORY.AIM"
  209. 209 PRINT "LAST TWO| STOCK  |  Safe  | CASH   | CONTROL   |Buy/Sell- | MARKET   |Portfolio"
  210. 210 PRINT " UPDATES| VALUE  |  (10%) | FUND   |  VALUE    | Advice   | ORDER    |  Value"
  211. 211 IF EOF(1) THEN 213
  212. 212 D1$=C1$:C1$=B1$:B1$=A1$:LINE INPUT#1,A1$:GOTO 211
  213. 213 IF MID$(D1$,4,4)="DATE" THEN PRINT LO$;MID$(B1$,1,79):PRINT MID$(A1$,1,79);HI$:PRINT:PRINT:CLOSE #1:RETURN ELSE 214
  214. 214 PRINT LO$;MID$(D1$,1,79):PRINT MID$(C1$,1,79):PRINT MID$(B1$,1,79):PRINT MID$(A1$,1,79);HI$:CLOSE #1:RETURN
  215. 215 CLOSE #2:NAME "COPY" AS "HISTORY.AIM":GOTO 208
  216. 216 PRINT CHR$(26);"PRINTOUT OF AIM DATA FILE REQUESTED.":PRINT:PRINT
  217. 217 PRINT LO$;"This option sends all date-stamped AIM calculations saved in the HISTORY.AIM"
  218. 218 PRINT "file to your printer for a hard copy of your portfolio history.";HI$  
  219. 219 PRINT:PRINT "Do you wish to proceed with printing (Y/N)";:INPUT Q$
  220. 220 IF Q$="Y" OR Q$="y" THEN PRINT HI$:PRINT:GOTO 221 ELSE PRINT:GOTO 14
  221. 221 OPEN "I",#1,"HISTORY.AIM"
  222. 222 PRINT "SENDING AIM DATA FROM DISK TO PRINTER . . . ";
  223. 223 IF EOF(1) THEN 229
  224. 224 LINE INPUT#1,A1$:IF MID$(A1$,4,4)="DATE" OR MID$(A1$,11,5)="VALUE" THEN 227 ELSE 225
  225. 225 IF MID$(A1$,1,1)="[" THEN 226 ELSE 228
  226. 226 LPRINT MID$(A1$,1,79):LPRINT:GOTO 223 ELSE 223
  227. 227 LPRINT MID$(A1$,1,79):GOTO 223 ELSE 223
  228. 228 LPRINT MID$(A1$,1,79):LPRINT MID$(A1$,83,78):LPRINT MID$(A1$,161,79):GOTO 223 ELSE 223
  229. 229 CLOSE:GOTO 14
  230. 230 PRINT CHR$(26);"DISK ERASE OPTIONS":PRINT:PRINT
  231. 231 PRINT LO$;"The option below will erase the last AIM calculation saved in the HISTORY.AIM"
  232. 232 PRINT "file.  It will not harm any previous data saved in HISTORY.AIM.":PRINT HI$
  233. 233 INPUT "Do you wish to erase the last SAVED CALCULATION ONLY (Y/N)";Q$
  234. 234 IF Q$="Y" OR Q$="y" THEN 250 ELSE 235
  235. 235 PRINT LO$
  236. 236 PRINT "The option below will erase all information from HISTORY.AIM file and create"
  237. 237 PRINT "a new HISTORY.AIM file. USE WITH CAUTION!":PRINT HI$
  238. 238 INPUT "CAUTION: Do you wish to erase ALL CALCULATIONS (Y/N)";Q$
  239. 239 IF Q$="Y" OR Q$="y" THEN PRINT "New HISTORY.AIM file created.  Saving old file as HISTORY.BAK":KILL "HISTORY.BAK":NAME "HISTORY.AIM" AS "HISTORY.BAK":GOSUB 309 ELSE 240
  240. 240 PRINT LO$
  241. 241 PRINT "The next option will erase all company names and amounts of stock but"
  242. 242 PRINT "will NOT damage your HISTORY.AIM info.  USE THIS OPTION WHEN SELLING ALL"
  243. 243 PRINT "COMPANY STOCK AND INVESTING IN SHARES OF ALL NEW COMPANIES.":PRINT HI$
  244. 244 INPUT "Do you wish to erase ALL STOCK NAMES & SHARE AMOUNTS from portfolio (Y/N)";Q$
  245. 245 IF Q$="Y" OR Q$="y" THEN PRINT "Deleting prior data.":GOTO 246 ELSE 14
  246. 246 KILL "S1NAM.AIM":KILL "S2NAM.AIM":KILL "S3NAM.AIM":KILL "S4NAM.AIM":KILL "S5NAM.AIM":KILL "S6NAM.AIM":KILL "S1AMT.AIM":KILL "S2AMT.AIM":KILL "S3AMT.AIM":KILL "S4AMT.AIM":KILL "S5AMT.AIM":KILL "S6AMT.AIM":PRINT "Creating new file space."
  247. 247 S$="S1NAM.AIM":GOSUB 317:S$="S2NAM.AIM":GOSUB 317:S$="S3NAM.AIM":GOSUB 317:S$="S4NAM.AIM":GOSUB 317:S$="S5NAM.AIM":GOSUB 317:S$="S6NAM.AIM":GOSUB 317
  248. 248 S$="S1AMT.AIM":GOSUB 318:S$="S2AMT.AIM":GOSUB 318:S$="S3AMT.AIM":GOSUB 318:S$="S4AMT.AIM":GOSUB 318:S$="S5AMT.AIM":GOSUB 318:S$="S6AMT.AIM":GOSUB 318
  249. 249 GOTO 14
  250. 250 PRINT " Deleting last transaction in HISTORY.AIM file only . . ."
  251. 251 OPEN "I",#1,"HISTORY.AIM"
  252. 252 IF EOF(1) THEN 255
  253. 253 LINE INPUT#1,A$:COUNT=COUNT+1
  254. 254 GOTO 252
  255. 255 CLOSE #1:LINES=(COUNT-1)
  256. 256 COUNT=0
  257. 257 OPEN "I",#1,"HISTORY.AIM"
  258. 258 OPEN "O",#2,"COPY"
  259. 259 COUNT=COUNT+1:IF EOF(1) THEN 263
  260. 260 B$=A$:LINE INPUT#1,A$:IF COUNT=(LINES-1) THEN PRINT#2,A$:GOTO 263
  261. 261 PRINT#2,A$
  262. 262 GOTO 259
  263. 263 CLOSE #1:COUNT=0:LINES=0
  264. 264 IF MID$(B$,4,4)="DATE" THEN CLOSE:GOTO 14
  265. 265 KILL"HISTORY.AIM"
  266. 266 D1$=MID$(B$,1,2):D2$=MID$(B$,4,2):D3$=MID$(B$,7,2):C1$=MID$(B$,71,9):C1$=MID$(C1$,2,8):B1$=MID$(B$,28,7):A1$=MID$(B$,37,10)
  267. 267 OPEN "O",#1,"NEWDATE.AIM":PRINT#1,D1$:PRINT#1,D2$:PRINT#1,D3$:CLOSE #1:OPEN "O",#1,"LASTVAL.AIM":PRINT#1,C1$:CLOSE #1:OPEN "O",#1,"CASHFUND.AIM":PRINT#1,B1$:CLOSE #1:OPEN "O",#1,"CONTROL.AIM":PRINT#1,A1$:CLOSE #1
  268. 268 IF D$="" THEN 269 ELSE N=2:GOSUB 363:N=1
  269. 269 CLOSE #2:NAME "COPY" AS "HISTORY.AIM":GOSUB 332
  270. 270 ON ERROR GOTO 240:OPEN "I",#1,"CONTROL.AIM":INPUT#1,X:CLOSE #1
  271. 271 IF X=0 THEN OPEN "O",#1,"ORIGVAL.AIM":PRINT#1,X:CLOSE #1
  272. 272 GOTO 240
  273. 273 PRINT CHR$(26);"CURRENT PORTFOLIO"
  274. 274 PRINT LO$;" NOTE: When FIRST buying stocks, the cash value invested in each company":PRINT " WITHIN A STOCK CATEGORY should be about equal. This program uses three major"
  275. 275 PRINT " categories (BLUE CHIP, QUALITY GROWTH, and MODERATELY SPECULATIVE stocks).";HI$:PRINT:PRINT " BLUE CHIP STOCKS should consist of 50-80% of all stock value held."
  276. 276 PRINT " QUALITY GROWTH STOCKS should consist of 20-50% of all stock value held.":PRINT " MODERATELY SPECULATIVE STOCKS may consist of  0-20% of all stock value held."
  277. 277 PRINT HI$:PRINT "Your stocks (by category) are shown below (add or delete as needed) --":PRINT
  278. 278 T$="Blue Chip Stocks (or precious metals):":GOSUB 287:S$="S1NAM.AIM":SS$="S1AMT.AIM":N$="1":GOSUB 288:S1#=B:S$="S2NAM.AIM":SS$="S2AMT.AIM":N$="2":GOSUB 288:S2#=B
  279. 279 T$="Quality Growth Stocks:":GOSUB 287:S$="S3NAM.AIM":SS$="S3AMT.AIM":N$="3":GOSUB 289:S3#=B:S$="S4NAM.AIM":SS$="S4AMT.AIM":N$="4":GOSUB 289:S4#=B
  280. 280 T$="Moderately Speculative Stocks:":GOSUB 287:S$="S5NAM.AIM":SS$="S5AMT.AIM":N$="5":GOSUB 289:S5#=B:S$="S6NAM.AIM":SS$="S6AMT.AIM":N$="6":GOSUB 289:S6#=B:GOTO 281
  281. 281 PRINT:LINE INPUT "Enter stock number to edit (1 to 6) or hit RETURN if NO CHANGE: ";Q$
  282. 282 IF Q$="1" THEN S$="S1NAM.AIM":SS$="S1AMT.AIM":GOTO 290 ELSE IF Q$="2" THEN S$="S2NAM.AIM":SS$="S2AMT.AIM":GOTO 290
  283. 283 IF Q$="3" THEN S$="S3NAM.AIM":SS$="S3AMT.AIM":GOTO 290 ELSE IF Q$="4" THEN S$="S4NAM.AIM":SS$="S4AMT.AIM":GOTO 290
  284. 284 IF Q$="5" THEN S$="S5NAM.AIM":SS$="S5AMT.AIM":GOTO 290 ELSE IF Q$="6" THEN S$="S6NAM.AIM":SS$="S6AMT.AIM":GOTO 290
  285. 285 IF Q$="X" OR Q$="x" THEN 17 ELSE IF Q$="" THEN 286 ELSE 273
  286. 286 IF HOW=1 THEN 59 ELSE IF HOW=2 THEN 59 ELSE 14
  287. 287 PRINT LO$;T$;HI$:RETURN
  288. 288 OPEN "I",#1,S$:OPEN "I",#2,SS$:INPUT#1,A$:INPUT#2,B:C$=MID$(A$,1,10):PRINT N$;".  ";:PRINT USING "&";C$;:PRINT "   (";LO$;B;HI$;" shares/ounces )":CLOSE:RETURN
  289. 289 OPEN "I",#1,S$:OPEN "I",#2,SS$:INPUT#1,A$:INPUT#2,B:C$=MID$(A$,1,10):PRINT N$;".  ";:PRINT USING "&";C$;:PRINT "   (";LO$;B;HI$;" shares )":CLOSE:RETURN
  290. 290 PRINT "Enter ticker symbol of company whose shares you own (example: IBM): ";:LINE INPUT A$:IF A$="" THEN A$="----":B=0:GOTO 294 ELSE IF LEN(A$)>6 THEN GOSUB 405:GOTO 273
  291. 291 IF D$="" THEN D$="today"
  292. 292 PRINT "How many shares of ";A$;" do you own as of ";D$;" (example: 1000)";:INPUT B
  293. 293 PRINT CHR$(26);HI$;"SAVING NEW INFO TO STOCK FILES . . . ";
  294. 294 OPEN "O",#1,S$:PRINT#1,A$:CLOSE:OPEN "O",#1,SS$:PRINT#1,B:CLOSE:FOR I=1 TO 1000:NEXT I:GOTO 273
  295. 295 OPEN "I",#1,S$:INPUT#1,B$:A$=MID$(B$,1,10)+" ":CLOSE:RETURN
  296. 296 OPEN "I",#1,SS$:INPUT#1,A:CLOSE:RETURN
  297. 297 OPEN "O",#1,SS$:PRINT#1,A:CLOSE:RETURN
  298. 298 OPEN "O",#1,"HISTORY.AIM"
  299. 299 PRINT#1,"   DATE   STOCK     Safe    CASH     CONTROL    Buy/Sell-   MARKET   Portfolio":PRINT#1,"          VALUE     (10%)   FUND      VALUE      Advice     ORDER      Value"
  300. 300 D$="00/00/00":BS$=" ":MO$=" ":SN1$="----":SN2$="----":SN3$="----":SN4$="----":SN5$="----":SN6$="----"
  301. 301 N=1:GOSUB 363:PRINT#1,"[ No prior data recorded. ]":CLOSE #1:PRINT "HISTORY.AIM":RESUME
  302. 302 OPEN "O",#1,"HISTORY.BAK":PRINT#1,"No data to back up.":CLOSE:PRINT "HISTORY.BAK":RESUME
  303. 303 OPEN "O",#1,S$:PRINT#1,"----":CLOSE:PRINT S$:RESUME
  304. 304 OPEN "O",#1,S$:PRINT#1,"0":CLOSE:PRINT S$:RESUME
  305. 305 OPEN "I",#1,S$:CLOSE:RETURN
  306. 306 OPEN "O",#1,"DATE.AIM":PRINT#1,"00/00/00":CLOSE:PRINT "DATE.AIM":RESUME
  307. 307 OPEN "O",#1,"ORGDATE.AIM":PRINT#1,"00":PRINT#1,"00":PRINT#1,"00":CLOSE:PRINT "ORGDATE.AIM":RESUME
  308. 308 OPEN "O",#1,"NEWDATE.AIM":PRINT#1,"00":PRINT#1,"00":PRINT#1,"00":CLOSE:PRINT "NEWDATE.AIM":RESUME
  309. 309 KILL "ORGDATE.AIM":OPEN "O",#1,"ORGDATE.AIM":PRINT#1,"00":PRINT#1,"00":PRINT#1,"00":CLOSE #1
  310. 310 KILL "NEWDATE.AIM":OPEN "O",#1,"NEWDATE.AIM":PRINT#1,"00":PRINT#1,"00":PRINT#1,"00":CLOSE #1
  311. 311 KILL "DATE.AIM":OPEN "O",#1,"DATE.AIM":PRINT#1,"00/00/00":CLOSE:OPEN "O",#1,"HISTORY.AIM"
  312. 312 PRINT#1,"   DATE   STOCK     Safe    CASH     CONTROL    Buy/Sell-   MARKET   Portfolio":PRINT#1,"          VALUE     (10%)   FUND      VALUE      Advice     ORDER      Value"
  313. 313 D$="00/00/00":BS$=" ":MO$=" ":N=1:GOSUB 363:PRINT#1,"[ No prior data recorded. ]":CLOSE
  314. 314 ON ERROR GOTO 315:KILL "CASHFUND.BAK":KILL "CONTROL.BAK"
  315. 315 NAME "CASHFUND.AIM" AS "CASHFUND.BAK":NAME "CONTROL.AIM" AS "CONTROL.BAK"
  316. 316 OPEN "O",#1,"CASHFUND.AIM":PRINT#1,"0":CLOSE:OPEN "O",#1,"CONTROL.AIM":PRINT#1,"0":CLOSE:OPEN "O",#1,"ORIGVAL.AIM":PRINT#1,"0":CLOSE:OPEN "O",#1,"LASTVAL.AIM":PRINT#1,"0":CLOSE:RETURN
  317. 317 OPEN "O",#1,S$:PRINT#1,"----":CLOSE:RETURN
  318. 318 OPEN "O",#1,S$:PRINT#1,"0":CLOSE:RETURN
  319. 319 IF AD$="SELL $" THEN ADX$="SOLD $" ELSE IF AD$="PURCHASE $" THEN ADX$="BOUGHT $"
  320. 320 IF MO<100 AND ADX$="SOLD $" THEN PRINT#2,"[ Amount of stock to SELL was too small.  NO ACTION TAKEN. ]":RETURN
  321. 321 IF MO<100 AND ADX$="BOUGHT $" THEN PRINT#2,"[ Amount of stock to PURCHASE was too small.  NO ACTION TAKEN. ]":RETURN
  322. 322 IF BS<=SF AND ADX$="SOLD $" THEN PRINT#2,"[ Sale of Stock was UNSAFE!  NO ACTION TAKEN! ]" :RETURN
  323. 323 IF BS<=SF AND ADX$="BOUGHT $" THEN PRINT#2,"[ Stock Purchase UNSAFE!  NO ACTION TAKEN! ]" :RETURN
  324. 324 IF BS=0 THEN PRINT#2,"[ BUY/SELL column was zero.  NO ACTION TAKEN! ]":RETURN
  325. 325 IF ADX$="BOUGHT $" AND MO>CF THEN PRINT#2,"[ You should've ";ADX$;CF;" of stock (all your CASH). ]":RETURN
  326. 326 IF ADX$="SOLD $" AND MO>SV THEN PRINT#2,"[ You should've ";ADX$;" ALL SHARES of stock! ]":RETURN
  327. 327 PRINT#2,"[ You were ADVISED to ";AD$;MO;" of stock. ]":RETURN
  328. 328 OPEN "I",#1,"ORIGVAL.AIM"
  329. 329 IF EOF(1) THEN CLOSE #1 ELSE INPUT#1,A:CLOSE #1
  330. 330 OPEN "I",#1,"LASTVAL.AIM"
  331. 331 IF EOF(1) THEN CLOSE #1:RETURN ELSE INPUT#1,B:CLOSE #1:RETURN
  332. 332 OPEN "I",#1,"ORIGVAL.AIM"
  333. 333 IF EOF(1) THEN CLOSE #1:GOTO 334 ELSE INPUT#1,X:CLOSE #1
  334. 334 IF X=0 THEN 335 ELSE RETURN
  335. 335 OPEN "O",#1,"ORIGVAL.AIM":PRINT#1,PV:CLOSE #1:RETURN
  336. 336 DIM A(150)
  337. 337 FOR I=1 TO 12:READ A(I):NEXT I
  338. 338 FOR I=101 TO 112:READ A(I):NEXT I
  339. 339 DATA 0,31,59,90,120,151,181,212,243,273,304,334
  340. 340 DATA 31,28,31,30,31,30,31,31,30,31,30,31
  341. 341 OPEN "I",#1,"NEWDATE.AIM"
  342. 342 IF EOF(1) THEN CLOSE #1 ELSE INPUT#1,M:INPUT#1,D:INPUT#1,Y:CLOSE #1
  343. 343 A=M:C=Y:GOSUB 347:Z=T
  344. 344 OPEN "I",#1,"ORGDATE.AIM"
  345. 345 IF EOF(1) THEN CLOSE #1 ELSE INPUT#1,M,D,Y:CLOSE #1
  346. 346 E=M:F=D:G=Y:GOSUB 347:V=T-Z:V=ABS(V):GOTO 359
  347. 347 H=Y-1800:I=INT(H/4):J=INT(I/25):L=INT((H+200)/400):K=0
  348. 348 IF I*4<>H THEN 352
  349. 349 IF J*100<>H THEN 352
  350. 350 IF L*400-200<>H THEN 352
  351. 351 K=1
  352. 352 T=365*H+I-J+L-K
  353. 353 T=T+A(M)+D-1
  354. 354 IF M<3 THEN 356
  355. 355 T=T+K
  356. 356 IF INT(H/4)<>H/4 THEN 358
  357. 357 IF M>2 THEN 358 ELSE T=T-1
  358. 358 N=T-7*INT(T/7):RETURN
  359. 359 OPEN "I",#1,"ORIGVAL.AIM":INPUT#1,P:CLOSE #1:IF P=0 THEN I=0:RETURN
  360. 360 OPEN "I",#1,"LASTVAL.AIM":INPUT#1,T:CLOSE #1:IF T=0 THEN I=0:RETURN
  361. 361 IF V<1 THEN V=1
  362. 362 Y=(V)/365:I=12*((T/P)^(1/(12*Y))-1)*100:RETURN
  363. 363 PRINT#N,D$;:PRINT#N,"|";:PRINT#N,USING"#######";SV;:PRINT#N," |";:PRINT#N,USING"#######";SF;:PRINT#N," |";:PRINT#N,USING"#######-";CF;:PRINT#N,"|";
  364. 364 PRINT#N,USING"##########";NPC;:PRINT#N," |";:PRINT#N,USING"########";BS;:PRINT#N,BS$;" |";:PRINT#N,USING"########";MO;
  365. 365 PRINT#N,MO$;" |";:PRINT#N,USING"########";PV;
  366. 366 PRINT#N,"   1:";:PRINT#N,USING"\  \";SN1$;:PRINT#N," ";:PRINT#N,USING"#####";S1#;:PRINT#N," @ $";:PRINT#N,USING"####.##";S1;
  367. 367 PRINT#N,"   3:";:PRINT#N,USING"\  \";SN3$;:PRINT#N," ";:PRINT#N,USING"#####";S3#;:PRINT#N," @ $";:PRINT#N,USING"####.##";S3;
  368. 368 PRINT#N,"   5:";:PRINT#N,USING"\  \";SN5$;:PRINT#N," ";:PRINT#N,USING"#####";S5#;:PRINT#N," @ $";:PRINT#N,USING"####.##";S5;
  369. 369 PRINT#N,"   2:";:PRINT#N,USING"\  \";SN2$;:PRINT#N," ";:PRINT#N,USING"#####";S2#;:PRINT#N," @ $";:PRINT#N,USING"####.##";S2;
  370. 370 PRINT#N,"   4:";:PRINT#N,USING"\  \";SN4$;:PRINT#N," ";:PRINT#N,USING"#####";S4#;:PRINT#N," @ $";:PRINT#N,USING"####.##";S4;
  371. 371 PRINT#N,"   6:";:PRINT#N,USING"\  \";SN6$;:PRINT#N," ";:PRINT#N,USING"#####";S6#;:PRINT#N," @ $";:PRINT#N,USING"####.##";S6
  372. 372 RETURN
  373. 373 PRINT CHR$(26);LO$;"            AUTOMATIC INVESTMENT MANAGER (AIM) NUMBER _____ "
  374. 374 PRINT "Stock 1:_______________ Shares:_____ Stock 4:_______________ Shares:_____":PRINT "Stock 2:_______________ Shares:_____ Stock 5:_______________ Shares:_____" 
  375. 375 PRINT "Stock 3:_______________ Shares:_____ Stock 6:_______________ Shares:_____":PRINT "Money Fund:______________________________________________________________"
  376. 376 PRINT "  (1)     (2)      (3)     (4)      (5)       (6)        (7)       (8)     (9)":PRINT " DATE    STOCK    SAFE    CASH   PORTFOLIO  BUY(SELL-) MARKET  PORTFOLIO Broker"
  377. 377 PRINT "         VALUE    (10%)           CONTROL     ADVICE   ORDER    VALUE      Fee":PRINT "==============================================================================="
  378. 378 FOR I=1 TO 5
  379. 379 PRINT "      |        |       |        |          |         |        |         |":PRINT "______|________|_______|________|__________|_________|________|_________|______"
  380. 380 NEXT I
  381. 381 PRINT "      |        |       |        |          |         |        |         |"
  382. 382 PRINT HI$;"A FULL-PAGE COPY of the above form will be sent to your printer for printing.":PRINT:INPUT "DO YOU WANT TO PRINT THIS FORM (Y/N)";A$
  383. 383 IF A$="Y" OR A$="y" THEN PRINT "-> Printing . . .":GOTO 384 ELSE 393
  384. 384 LPRINT "         AUTOMATIC INVESTMENT MANAGER (AIM) NUMBER _____ "
  385. 385 LPRINT "Stock 1:_______________ Shares:_____ Stock 4:_______________ Shares:_____":LPRINT "Stock 2:_______________ Shares:_____ Stock 5:_______________ Shares:_____" 
  386. 386 LPRINT "Stock 3:_______________ Shares:_____ Stock 6:_______________ Shares:_____":LPRINT "Money Fund:______________________________________________________________"
  387. 387 LPRINT "  (1)     (2)      (3)     (4)      (5)       (6)        (7)       (8)     (9)":LPRINT " DATE    STOCK    SAFE    CASH   PORTFOLIO  BUY(SELL-) MARKET  PORTFOLIO Broker"
  388. 388 LPRINT "         VALUE    (10%)           CONTROL     ADVICE   ORDER    VALUE      Fee ":LPRINT "==============================================================================="
  389. 389 FOR I=1 TO 24
  390. 390 LPRINT "      |        |       |        |          |         |        |         |":LPRINT "______|________|_______|________|__________|_________|________|_________|______"
  391. 391 NEXT I
  392. 392 FOR I=1 TO 8:LPRINT:NEXT I
  393. 393 RETURN
  394. 394 LO$=CHR$(27)+CHR$(41):HI$=CHR$(27)+CHR$(40):RETURN
  395. 395 A1=VAL(MID$(A$,1,2)):A2=VAL(MID$(A$,4,2)):A3=VAL(MID$(A$,7,2))
  396. 396 A1=A1+1:IF A1=13 THEN A1=1:A3=A3+1:IF A3=100 THEN A3=0
  397. 397 IF A1<10 THEN A1$="0"+STR$(A1) ELSE A1$=STR$(A1)
  398. 398 IF A2<10 THEN A2$="0"+STR$(A2) ELSE A2$=STR$(A2)
  399. 399 IF A3<10 THEN A3$="0"+STR$(A3) ELSE A3$=STR$(A3)
  400. 400 A1$=MID$(A1$,2,2):A3$=MID$(A3$,2,2):A2$=MID$(A2$,2,2)
  401. 401 IF A1<10 THEN A1$="0"+MID$(A1$,2,1)
  402. 402 IF A2<10 THEN A2$="0"+MID$(A2$,2,1)
  403. 403 IF A3<10 THEN A3$="0"+MID$(A3$,2,1)
  404. 404 A$=A1$+"/"+A2$+"/"+A3$:RETURN
  405. 405 PRINT CHR$(26);CHR$(7);"Your TICKER SYMBOL ENTRY was TOO LONG! - Wait and try again!":FOR I=1 TO 3000:NEXT I:RETURN
  406. 406 PRINT CHR$(26);
  407. 407 PRINT "This shareware has been tediously and painstakingly written for the financial"
  408. 408 PRINT "benefit and welfare of all who wish to share it.  If you care to make a modest"
  409. 409 PRINT "donation to the programmer for his time and effort on this project, please"
  410. 410 PRINT "send contributions or program enhancements to:":PRINT
  411. 411 PRINT "            Dave Mack (CIS 71256,44)"
  412. 412 PRINT "            178 Daffodil Circle"
  413. 413 PRINT "            Vallejo, California 94591"
  414. 414 PRINT:PRINT "Also invest in a copy of Robert Lichello's book ";CHR$(34);"How to Make $1,000,000"
  415. 415 PRINT "in the Stock Market - Automatically!";CHR$(34);", Signet AE3807."
  416. 416 PRINT:PRINT:RETURN
  417. How to Make $1,000,000"
  418. 415 PRINT "in the Stock Market - Automatically!";CHR$(34);", Signet AE3807."