10 REM AAII PROGRAM 2--BOND YIELDS LAST REVISED 9/01/82 20 DIM M(2),N(2) 30 PRINT CHR$(26) 40 PRINT "BOND YIELDS TO MATURITY" 50 PRINT "FIGURES IN ( ) ARE EXAMPLES OF INPUT FORM" 60 PRINT "CURRENT PRICE PER $100 (89.50)" 70 INPUT I1 80 I1 = INT(I1 * 1000 + .5) / 1000 90 PRINT "ANNUAL COUPON % (8.50)" 100 INPUT C1 110 PRINT "NUMBER YEARS, + MONTHS TO MATURITY (20,2)" 120 INPUT Y1,M1 130 T1 = Y1 + M1 /12 140 PRINT "MARGINAL TAX RATE-ORDINARY-%(50)" 150 INPUT M(2) 160 PRINT "MARGINAL TAX RATE-CAPITAL-%(20)" 170 INPUT N(2) 180 PRINT:PRINT " PLEASE WAIT FOR CALCULATIONS TO BE COMPLETED":PRINT 190 M(2) = 1 - M(2) / 100 200 N(2) = 1 - N(2) / 100 210 M(1) = 1 220 N(1) = 1 230 K = 1 240 L1 = 0 250 H1 = (C1 / I1 + (100 - I1) / ( T1 * 100)) * 1.2 260 R2 = 0 270 R1 = (L1 + H1) / 2 280 IF R1 = R2 THEN 440 290 R2 = R1 300 P1 = 0 310 FOR J = 1 TO Y1 320 P1 = P1 + (C1 * M(K)) / (R1 + 1) ^ J 330 NEXT J 340 P1 = P1 + ((M1 / 12) * C1 * M(K)) / (R1 + 1) ^ T1 350 P1 = P1 + (I1 + N(K) * (100 - I1)) / (R1 + 1) ^ T1 360 P1 = INT(P1 * 1000 + .5) / 1000 370 IF P1 = I1 THEN 430 380 IF I1 > P1 THEN 410 390 L1 = R1 400 GOTO 270 410 H1 = R1 420 GOTO 270 430 R1 = INT(R1 * 10000 + .5) /100 440 IF K = 2 THEN 490 450 PRINT "PRETAX YIELD TO MATURITY=";R1;"%" 460 PRINT 470 K = 2 480 GOTO 240 490 PRINT "AFTER TAX YIELD TO MATURITY=";R1;"%" 500 PRINT:PRINT:PRINT "WANT TO RUN BOND YIELD AGAIN? (YES OR NO)"; 510 INPUT L1$:IF MID$(L1$,1,1) = "Y" THEN GOTO 30 530 END