Professional Documents
Culture Documents
[1] Page 20, line 4: Indicates a typo which was corrected that exists in the
first printing and does not exist in later printings.
[2] Page 890, exercise 6: Indicates a typo that exists in both the first and
second printings but is corrected in the third printing.
[3] Page 690: A typo in both the first, second and third printing; corrected
in fourth.
If
you
have
more
typos
Benninga@wharton.upenn.edu .
to
report,
please
write
me
at
[1] Page before title page: It says Neither MIT press nor the authors is
responsible . Shouldnt this be are responsible? [My 96 year-old aunt Sara
pointed this out to me !]
[1] On the disk with the book, under the subdirectory Additional materials,
there is a typo in the file Adding Getformula to your spreadsheet.doc. The last
line of the VBA program is missing. It is added below and highlighted.
'Prints out formulas as text
'Thanks to Maja Sliwinski and Beni Czaczkes
Page 1
P0 =
Div0 ( 1 + g )
1 + rE
=
t =1
Div1 * ( 1 + g )
Div0 * ( 1 + g )
( 1 + rE )
( 1 + rE )
Div1 * ( 1 + g )
( 1 + rE )
Div1 * ( 1 + g )
( 1 + rE )
It should be:
Page 2
Div0 ( 1 + g ) Div0 * ( 1 + g )
Div0 * ( 1 + g )
Div0 * ( 1 + g )
P0 =
+
+
+
K
2
3
4
1 + rE
( 1 + rE )
( 1 + rE )
( 1 + rE )
2
=
t =1
Div0 * ( 1 + g )
( 1 + rE )
[1] Page 72, top Excel clip; there is a mistake in cell B14. Should be:
A
1
2
3
4
5
6
7
8
9
10
1,669,880,755
27.75
46,339,190,951 <-- =B2*B3
2,612,000,000 <-- =E18
Date
31-Dec-01
31-Dec-02
31-Dec-03
31-Dec-04
31-Dec-05
Growth rates
Four year
Two year
Stock issuance
8,425,000,000
Cash flow to
equity holders
395,000,000 <-- =B14+C14-D14
-7,117,000,000 <-- =B15+C15-D15
1,461,000,000
1,968,000,000
2,612,000,000
58.97%
14.87%
as negative debt
1,231 <-- =B62
(240) <-- =-B36+B27
991 <-- =B69+B70
Page 3
[2] Exercises on pages 127-129: In the following cells the NPV( ) should be
multiplied by the factor (1+WACC)^0.5: B84 of Exercise 2, B82 of Exercise 3, B81
of Exercise 4, B82 of Exercise 7, B90 of Exercise 8.
[3] Page 128, exercise 3: in the answer in line 32, the depreciation in line 31
should be added to the fixed assets at cost, not subtracted. [The depreciation is
written as a negative number.] Fixed on the disk that comes with the fourth
printing.
[1] Page 138: In spreadsheet at top, cell A6 before instead of nefore
[1] Page 139, line 2 below spreadsheet: some instead of come
[2] Page 155. The graphic should be replaced with the following (the x-axis legend
had a mistake):
A
1
Earnings
Profits
2
Year
per share after taxes
3
1990
0.95
276
4
1991
1.90
276
5
1992
3.01
319
6
1993
2.78
22
7
1994
2.43
515
8
1995
3.80
768
9
1996
3.96
744
10
1997
3.97
714
11
1998
4.52
801
12
1999
3.27
568
13
2000
3.60
620
14
15 Compound growth
14.25%
8.43% <-- =(C13/C3)^(1/10)-1
16
17
PPG: EPS versus Profits
18 Source:
5.00Profit-loss 91-00 in this
19 workbook
4.50
20
4.00
21
3.50
22
3.00
23
S 2.50
24
P
E 2.00
25
26
1.50
27
1.00
28
0.50
29
0.00
30
31
199 0 1991 1992 1993 19 94 1995 1996 1997 1998 1999 2000
32
Earning s
Pro fits
33
per shar e
afte r taxes
34
900
800
700
600
500
400
300
s
itf
o
r
P
200
100
0
Page 4
ABCs interest costs are 10% and XYZs interest costs are 7%.
Thus the whole paragraph will read:
ABCs interest costs are 10% and XYZs interest costs are 7%. Show that it will be
advantageous for ABC to lease the asset and for XYZ to purchase the asset in order
to lease it out to ABC.
Page 5
[1] Page 226. The formula in cell D15 is incorrectly identified (the numbers and
the actual formula in the cell are correct). The spreadsheet should look like the
following:
A
Cash
flow
-100,000
31,000
22,000
16,000
22,000
35,000
Year
0
1
2
3
4
5
IRR
14
15
16
17
18
19
20
21
1
2
3
4
5
6
7
8
9
10
11
12
13
1
2
3
4
5
=B16-E16
=$B$10*B15
1
M
1
M
WMT ,t
WMT ,t
Page 6
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
WMT
TGT
1.59%
0.46%
0.93%
0.52%
9.63%
7.19%
0.0038
Proportion of WMT
Portfolio mean return
Portfolio return variance
Portfolio return standard deviation
0.5 <-- In the data table below this is varied from -0.5 to 1.5
1.02% <-- =B8*B3+(1-B8)*C3
0.0055 <-- =B8^2*B4+(1-B8)^2*C4+2*B8*(1-B8)*B6
7.42% <-- =SQRT(B11)
rtu
n
a
e
M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
12%
14%
Standard deviation
Page 7
A
B
C
D
E
F
G
34 A single portfolio calculation
35 Proportion of x
0.3
36 E(rp)
7.05% <-- =B35*B26+(1-B35)*F26
37 p
19.65% <-- =SQRT(B35^2*B27+(1-B35)^2*F27+2*B35*(1-B35)*C30)
38
39
40 Data table: we vary the proportion of x to produce a graph of the frontier
Sigma
Return
41 Proportion of x
42
0.1965
0.0705 <-- Data table header refers to cells B37 and B36
43
-1.400
0.2199
0.0734
44
-1.200
0.2164
0.0730
0.0740
45
-1.000
0.2131
0.0727
46
-0.800
0.2100
0.0724
0.0730
47
-0.600
0.2070
0.0720
48
-0.400
0.2043
0.0717
49
-0.200
0.2018
0.0713
0.0720
50
0.000
0.1995
0.0710
Portfolio y
51
0.100
0.1984
0.0708
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
0.200
0.300
0.400
0.500
0.600
0.700
0.800
0.900
1.000
1.200
1.400
1.600
1.800
2.000
2.200
2.400
2.600
2.800
3.000
0.1974
0.1965
0.1956
0.1948
0.1941
0.1934
0.1927
0.1922
0.1917
0.1909
0.1903
0.1901
0.1901
0.1903
0.1908
0.1916
0.1927
0.1940
0.1956
0.0707
0.0705
0.0703
0.0702
0.0700
0.0698
0.0697
0.0695
0.0693
0.0690
0.0686
0.0683
0.0680
0.0676
0.0673
0.0670
0.0666
0.0663
0.0659
Proportion of x: -1.0
Proportion of y: 2
0.0710
Portfolio w:
50% in x, 50%
in y
0.0700
Portfolio x
0.0690
0.0680
Proportion of x: 2.8
Proportion of y: -1.8
0.0670
0.0660
0.0650
0.1850
0.1900
0.1950
0.2000
0.2050
0.2100
0.2150
0.2200
0.2250
Page 8
[1] Page 246: There is a mistake in cell B11 (refers to cell b7 instead of
b6). Means that the picture in the book needs to be replaced.
A
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
WMT
TGT
1.59%
0.46%
0.93%
0.52%
9.63%
7.19%
0.0038
Proportion of WMT
Portfolio mean return
Portfolio return variance
Portfolio return standard deviation
0.5 <-- In the data table below this is varied from -0.5 to 1.5
1.02% <-- =B8*B3+(1-B8)*C3
0.0055 <-- =B8^2*B4+(1-B8)^2*C4+2*B8*(1-B8)*B6
7.42% <-- =SQRT(B11)
rtu
n
a
e
M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
12%
14%
Standard deviation
Page 9
rtu
n
a
e
M
A
B
C
D
E
F
17 Calculating returns of combinations of Portfolio x and Portfolio y
18 Proportion of Portfolio x
0.3
19 Mean return, E(rp)
11.13% <-- =B18*B12+(1-B18)*E12
2
20 Variance of return, p
14.06% <-- =B18^2*B13+(1-B18)^2*E13+2*B18*(1-B18)*B14
21 Stand. dev. of return, p
37.50% <-- =SQRT(B20)
22
23 Table of returns (uses this example and Data|Table)
Proportion
Standard
Mean
24
of x
deviation
25
37.50%
11.13% Table header: =B21,=B19
26
0.0
45.10%
12.00%
27
0.1
42.29%
11.71%
28
0.2
39.74%
11.42%
29
0.3
37.50%
11.13%
Returns of Combinations of
30
0.4
35.63%
10.84%
Portfolios x and y
13%
31
0.5
34.20%
10.55%
12%
32
0.6
33.26%
10.26%
12%
33
0.7
32.84%
9.97%
11%
34
0.8
32.99%
9.68%
11%
35
0.9
33.67%
9.39%
10%
36
1.0
34.87%
9.10%
10%
37
1.1
36.53%
8.81%
9%
38
1.2
38.60%
8.52%
9%
39
8%
40
30%
35%
40%
45%
41
Standard deviation
42
43
50%
[1] Page 281: The function in cell B42 contains a mistake. Should be:
A
B
C
D
E
Check Propositions 3 & 4: Step 2 coefficients should be:
41 Intercept = c, Slope = E(rw) - c
42 Intercept = c ?
yes
<-- =IF(ROUND(B37-B21,10)=0,"yes","no")
Slope
=
E(r
)
c
?
43
yes
<-- =IF(B38=G11-B21,"yes","no")
w
[1] Page 281 , spreadsheet at bottom of page needs to be replaced with the
following (theres an error in cell B42):
A
B
C
D
E
Check Propositions 3 & 4: Step 2 coefficients should be:
41 Intercept = c, Slope = E(rw) - c
42 Intercept = c ?
yes
<-- =IF(ROUND(B37-B21,10)=0,"yes","no")
43 Slope = E(rw) - c ?
yes
<-- =IF(B38=G11-B21,"yes","no")
Page 10
[1] Page 282, same error in spreadsheet on bottom of page. Should be:
A
Asset 1
-6.63%
8.53%
1.79%
7.25%
0.75%
-1.57%
-2.10%
Mean
Asset 2
-2.49%
2.44%
4.46%
17.90%
-8.22%
0.83%
5.14%
Asset 3
-4.27%
-3.15%
1.92%
-6.53%
-1.76%
12.88%
13.41%
1.15%
2.87%
1.79%
Variance-covariance matrix
Asset 1
Asset 1
0.0024
Asset 2
0.0019
Asset 3
-0.0015
Asset 4
-0.0024
Asset 2
0.0019
0.0056
-0.0007
-0.0016
Asset 3
-0.0015
-0.0007
0.0057
-0.0005
Asset 4
11.72%
-8.33%
19.18%
-7.41%
-1.44%
-5.92%
-0.46%
Efficient portfolio w
-2.95%
3.64%
5.16%
-2.40%
2.24%
0.01%
-0.26%
<-- {=MMULT(B3:E9,B23:B26)}
0.78%
Asset 4
-0.0024 <-- {=MMULT(TRANSPOSE(B3:E9-B11:E11),B3:E9-B11:E11)/7}
-0.0016
-0.0005
0.0094
[1] page 301: Picture should be replaced by following (theres a non-critical error
in row 17):
A
1
2
GE
3
MSFT
4
JNJ
5
K
6
BA
7
IBM
8
9
10 Risk-free rate
11
MSFT
0.0758
0.1657
0.0412
-0.0052
0.0379
-0.0022
JNJ
0.0222
0.0412
0.0360
0.0181
0.0101
-0.0039
K
-0.0043
-0.0052
0.0181
0.0570
-0.0076
-0.0046
BA
0.0857
0.0379
0.0101
-0.0076
0.0896
0.0248
IBM
0.0123
-0.0022
-0.0039
-0.0046
0.0248
0.0184
Means
23.66%
21.38%
18.43%
5.51%
27.63%
17.63%
2%
Page 11
[2] Page 303, the picture should be replaced with the following:
A
IBM
0.0123
-0.0022
0.0412
0.0360
0.0181
0.0101
-0.0039
-0.0052
0.0181
0.0570
-0.0076
-0.0046
0.0857
0.0379
0.0101
-0.0076
0.0896
0.0248
0.0123
-0.0022
-0.0039
-0.0046
0.0248
0.0184
JNJ
0.0222
-0.0043
BA
IBM
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
The range below computes the correlation coefficients based on the formula
=C4/SQRT(INDEX($B$4:$G$9,C$13,C$13)*INDEX($B$4:$G$9,$A14,$A14)).
The correlations on the diagonal (all = 1) are not shown. To make the formula work, we have
labeled the rows and columns from 1 to 6.
GE
MSFT
JNJ
K
BA
IBM
1
2
3
4
5
6
1
GE
0.5791
0.3632
-0.0560
0.8905
0.2819
2
0.5340
-0.0532
0.3113
-0.0406 MSFT
3
JNJ
0.4002
0.1780
-0.1529
4
K
-0.1067
-0.1427
5
BA
0.6116
IBM
Largest correlation
0.8905 <-- =MAX(B14:G18)
2nd largest correlation
0.6116 <-- =LARGE(B14:G18,2)
3rd largest correlation
0.5791 <-- =LARGE(B14:G18,3)
4th largest correlation
0.5340 <-- =LARGE(B14:G18,4)
5th largest correlation
0.4002
6th largest correlation
0.3632
7th largest correlation
0.3113
8th largest correlation
0.2819
9th largest correlation
0.1780
Smallest correlation
-0.1529 <-- =MIN(B14:G18)
Average correlation
0.2398 <-- =AVERAGE(C14:G18)
Number of
correlations greater
32 than 0.5
4 <-- =COUNTIF(B14:G18,">0.5")
Page 12
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
GE
56.44%
18.23%
56.93%
42.87%
47.11%
34.55%
28.15%
4.61%
-19.74%
-44.78%
35.90%
MSFT
-1.50%
33.21%
44.28%
79.12%
38.04%
85.25%
11.20%
-47.19%
4.27%
-29.47%
18.01%
JNJ
6.01%
41.56%
57.71%
22.94%
17.62%
26.62%
3.41%
10.69%
23.11%
-5.67%
-1.27%
K
-9.79%
7.46%
37.76%
-5.09%
32.04%
-10.74%
-48.93%
11.67%
19.90%
10.88%
15.49%
BA
58.73%
-0.24%
65.55%
54.34%
37.11%
15.05%
43.53%
28.29%
-15.09%
-23.23%
39.82%
23.66%
21.38%
18.43%
5.51%
27.63%
32.17%
40.71%
18.97%
23.86%
29.93%
0.1035
0.1657
0.0360
0.0570
0.0896
0.2398 <-- =(AVERAGE(B23:G28)-1/6)*(36/30)
IBM
21.51%
6.04%
27.33%
41.08%
2.63%
-2.11%
23.76%
21.76%
4.55%
15.54%
31.80%
17.63% <-- =AVERAGE(G4:G14)
13.56% <-- =STDEV(G4:G14)
0.0184 <-- =VAR(G4:G14)
Page 13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
GE
56.44%
18.23%
56.93%
42.87%
47.11%
34.55%
28.15%
4.61%
-19.74%
-44.78%
35.90%
MSFT
-1.50%
33.21%
44.28%
79.12%
38.04%
85.25%
11.20%
-47.19%
4.27%
-29.47%
18.01%
JNJ
6.01%
41.56%
57.71%
22.94%
17.62%
26.62%
3.41%
10.69%
23.11%
-5.67%
-1.27%
K
-9.79%
7.46%
37.76%
-5.09%
32.04%
-10.74%
-48.93%
11.67%
19.90%
10.88%
15.49%
BA
58.73%
-0.24%
65.55%
54.34%
37.11%
15.05%
43.53%
28.29%
-15.09%
-23.23%
39.82%
23.66%
21.38%
18.43%
5.51%
27.63%
32.17%
40.71%
18.97%
23.86%
29.93%
0.1035
0.1657
0.0360
0.0570
0.0896
0.3000 <-- This is an educated guesstimate
IBM
21.51%
6.04%
27.33%
41.08%
2.63%
-2.11%
23.76%
21.76%
4.55%
15.54%
31.80%
17.63% <-- =AVERAGE(G4:G14)
13.56% <-- =STDEV(G4:G14)
0.0184 <-- =VAR(G4:G14)
Page 14
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
GE
56.44%
18.23%
56.93%
42.87%
47.11%
34.55%
28.15%
4.61%
-19.74%
-44.78%
35.90%
MSFT
-1.50%
33.21%
44.28%
79.12%
38.04%
85.25%
11.20%
-47.19%
4.27%
-29.47%
18.01%
JNJ
6.01%
41.56%
57.71%
22.94%
17.62%
26.62%
3.41%
10.69%
23.11%
-5.67%
-1.27%
K
-9.79%
7.46%
37.76%
-5.09%
32.04%
-10.74%
-48.93%
11.67%
19.90%
10.88%
15.49%
BA
58.73%
-0.24%
65.55%
54.34%
37.11%
15.05%
43.53%
28.29%
-15.09%
-23.23%
39.82%
Average
Standard deviation
Variance
23.66%
32.17%
0.1035
21.38%
40.71%
0.1657
18.43%
18.97%
0.0360
5.51%
23.86%
0.0570
27.63%
29.93%
0.0896
Shrinkage factor
IBM
21.51%
6.04%
27.33%
41.08%
2.63%
-2.11%
23.76%
21.76%
4.55%
15.54%
31.80%
17.63% <-- =AVERAGE(G4:G14)
13.56% <-- =STDEV(G4:G14)
0.0184 <-- =VAR(G4:G14)
Shrinkage matrix
22 Uses the array formula {=B20*B34:G39+(1-B20)*B44:G49} to compute the shrinkage covariance matrix
GE
MSFT
JNJ
K
BA
IBM
23
GE
24
0.1035
0.0228
0.0066
-0.0013
0.0257
0.0037
MSFT
25
0.0228
0.1657
0.0124
-0.0016
0.0114
-0.0007
JNJ
26
0.0066
0.0124
0.0360
0.0054
0.0030
-0.0012
K
27
-0.0013
-0.0016
0.0054
0.0570
-0.0023
-0.0014
BA
28
0.0257
0.0114
0.0030
-0.0023
0.0896
0.0074
IBM
29
0.0037
-0.0007
-0.0012
-0.0014
0.0074
0.0184
30
31
Uses the array formula {=MMULT(TRANSPOSE(B4:G14-B16:G16),B4:G14-B16:G16)/10} to compute the constant
32 sample covariance matrix. In the shrinkage var-cov, this matrix is given weight lambda.
GE
MSFT
JNJ
K
BA
IBM
33
GE
34
0.1035
0.0758
0.0222
-0.0043
0.0857
0.0123
MSFT
35
0.0758
0.1657
0.0412
-0.0052
0.0379
-0.0022
JNJ
36
0.0222
0.0412
0.0360
0.0181
0.0101
-0.0039
K
37
-0.0043
-0.0052
0.0181
0.0570
-0.0076
-0.0046
BA
38
0.0857
0.0379
0.0101
-0.0076
0.0896
0.0248
IBM
39
0.0123
-0.0022
-0.0039
-0.0046
0.0248
0.0184
40
41
Uses the array formula {=MMULT(TRANSPOSE(B4:G14-B16:G16),B4:G14-B16:G16)/10*IF(A44:A49=B43:G43,1,0)}
to compute a matrix with only variances on diagonal and zeros elsewhere. In the shrinkage var-cov this matrix is
42 given weight 1-lambda.
GE
MSFT
JNJ
K
BA
IBM
43
GE
44
0.1035
0.0000
0.0000
0.0000
0.0000
0.0000
MSFT
45
0.0000
0.1657
0.0000
0.0000
0.0000
0.0000
JNJ
46
0.0000
0.0000
0.0360
0.0000
0.0000
0.0000
K
47
0.0000
0.0000
0.0000
0.0570
0.0000
0.0000
BA
48
0.0000
0.0000
0.0000
0.0000
0.0896
0.0000
IBM
49
0.0000
0.0000
0.0000
0.0000
0.0000
0.0184
[2] Page 313: The picture on this page should be replaced by:
Page 15
1
Return data
2
Date
GE
MSFT
JNJ
K
BA
IBM
3
4
3-Jan-94
56.44%
-1.50%
6.01%
-9.79%
58.73%
7.74%
5
3-Jan-95
18.23%
33.21%
41.56%
7.46%
-0.24% -12.16%
6
2-Jan-96
56.93%
44.28%
57.71%
37.76%
65.55%
30.00%
7
2-Jan-97
42.87%
79.12%
22.94%
-5.09%
54.34% -41.78%
8
2-Jan-98
47.11%
38.04%
17.62%
32.04%
37.11%
47.32%
9
4-Jan-99
34.55%
85.25%
26.62%
-10.74%
15.05%
37.70%
10
3-Jan-00
28.15%
11.20%
3.41%
-48.93%
43.53% -13.32%
11
2-Jan-01
4.61% -47.19%
10.69%
11.67%
28.29% -78.39%
12
2-Jan-02
-19.74%
4.27%
23.11%
19.90% -15.09% -25.16%
13
2-Jan-03
-44.78% -29.47%
-5.67%
10.88% -23.23% -137.03%
14
2-Jan-04
35.90%
18.01%
-1.27%
15.49%
39.82%
16.44%
15
16
Average
23.66%
21.38%
18.43%
5.51%
27.63% -15.33% <-- =AVERAGE(G4:G14)
17 Standard deviation
32.17%
40.71%
18.97%
23.86%
29.93%
54.71% <-- =STDEV(G4:G14)
18
Variance
0.1035
0.1657
0.0360
0.0570
0.0896
0.2993 <-- =VAR(G4:G14)
19 Constant correlation
0.3000
20
Uses the array formula {=IF(A23:A28=B22:G22,B18:G18,MMULT(TRANSPOSE(B17:G17),B17:G17)*B19)}
21 to compute the constant correlation matrix
GE
MSFT
JNJ
K
BA
IBM
22
GE
23
0.1035
0.0393
0.0183
0.0230
0.0289
0.0528
MSFT
24
0.0393
0.1657
0.0232
0.0291
0.0366
0.0668
JNJ
25
0.0183
0.0232
0.0360
0.0136
0.0170
0.0311
K
26
0.0230
0.0291
0.0136
0.0570
0.0214
0.0392
BA
27
0.0289
0.0366
0.0170
0.0214
0.0896
0.0491
IBM
28
0.0528
0.0668
0.0311
0.0392
0.0491
0.2993
29
30
31
32
33
34
35
36
0.0800
0.0030
0.5645
0.2782
0.1152
-0.0409
GMVP statistics
Mean return
17.71% <-- =MMULT(B16:G16,B31:B36)
Variance
0.4027 <-- {=MMULT(MMULT(TRANSPOSE(B31:B36),B4:G9),B31:B36)}
Sigma
63.46% <-- =SQRT(F35)
0.1267
0.1368
0.0936
0.1224
0.1224
0.2016
0.1368
0.0713
0.1112
0.1454
0.1454
0.2394
0.0936
0.1112
0.3667
0.0995
0.0995
0.1638
The correct
E
F
G
H
I
J
K
L
M
N
Leggett Herman
Shaw
& Platt
Miller Industries
0.1224
0.1224
0.2016 <-- {=IF(B21:G21=A22:A27,B18:G18,MMULT(TRANSPOSE(B15:G15),B15:G15)*B19)}
0.1454
0.1454
0.2394
0.0995
0.0995
0.1638
0.1136
0.1301
0.2142
0.1301
0.0654
0.2142
0.2142
0.2142
0.1819
Page 16
Return data
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Date
3-Jan-94
3-Jan-95
2-Jan-96
2-Jan-97
2-Jan-98
4-Jan-99
3-Jan-00
2-Jan-01
2-Jan-02
2-Jan-03
2-Jan-04
GE
56.44%
18.23%
56.93%
42.87%
47.11%
34.55%
28.15%
4.61%
-19.74%
-44.78%
35.90%
MSFT
-1.50%
33.21%
44.28%
79.12%
38.04%
85.25%
11.20%
-47.19%
4.27%
-29.47%
18.01%
JNJ
6.01%
41.56%
57.71%
22.94%
17.62%
26.62%
3.41%
10.69%
23.11%
-5.67%
-1.27%
K
-9.79%
7.46%
37.76%
-5.09%
32.04%
-10.74%
-48.93%
11.67%
19.90%
10.88%
15.49%
BA
58.73%
-0.24%
65.55%
54.34%
37.11%
15.05%
43.53%
28.29%
-15.09%
-23.23%
39.82%
Average
Standard deviation
Variance
23.66%
32.17%
0.1035
21.38%
40.71%
0.1657
18.43%
18.97%
0.0360
5.51%
23.86%
0.0570
27.63%
29.93%
0.0896
31
32
33
34
35
36
37
22
23
24
25
26
27
28
29
30
Shrinkage factor
IBM
21.51%
6.04%
27.33%
41.08%
2.63%
-2.11%
23.76%
21.76%
4.55%
15.54%
31.80%
17.63% <-- =AVERAGE(G4:G14)
13.56% <-- =STDEV(G4:G14)
0.0184 <-- =VAR(G4:G14)
Shrinkage matrix
Uses the array formula {=B20*MMULT(TRANSPOSE(B4:G14-B16:G16),B4:G14-B16:G16)/10+(1-B20)*MMULT(TRANSPOSE(B4:G14-B16:G16),B4:G14B16:G16)/10*IF(A24:A29=B23:G23,1,0)}
to compute the shrinkage covariance matrix
GE
MSFT
JNJ
K
BA
IBM
GE
0.1035
0.0228
0.0066
-0.0013
0.0257
0.0037
MSFT
0.0228
0.1657
0.0124
-0.0016
0.0114
-0.0007
JNJ
0.0066
0.0124
0.0360
0.0054
0.0030
-0.0012
K
-0.0013
-0.0016
0.0054
0.0570
-0.0023
-0.0014
BA
0.0257
0.0114
0.0030
-0.0023
0.0896
0.0074
IBM
0.0037
-0.0007
-0.0012
-0.0014
0.0074
0.0184
Uses formula {=MMULT(MINVERSE(B24:G29),IF(A32:A37=A32:A37,1,0))/SUM(MMULT(MINVERSE(B24:G29),IF(A32:A37=A32:A37,1,0)))} to compute
the global minimum variance portfolio
GE
MSFT
JNJ
K
BA
IBM
0.0407
0.0337
0.2261
0.1556
0.0412
0.5027
GMVP statistics
Mean return
Variance
Sigma
Page 17
BA
IBM
2
GMVP
mean
3
4
5
6
7
8
9
10
11
12
13
14
15
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
GMVP
sigma
17.64%
17.29%
16.98%
16.71%
16.46%
16.24%
16.03%
15.81%
15.56%
15.15%
12.73%
8.89%
9.19%
9.42%
9.59%
9.71%
9.77%
9.79%
9.75%
9.63%
9.35%
7.73%
GE
MSFT
JNJ
0.0763
0.0630
0.0511
0.0407
0.0319
0.0251
0.0214
0.0232
0.0379
0.0952
0.6105
0.0477
0.0420
0.0374
0.0337
0.0308
0.0286
0.0268
0.0247
0.0209
0.0087
-0.1034
0.2196
0.2216
0.2238
0.2261
0.2287
0.2316
0.2349
0.2383
0.2415
0.2422
0.2074
K
0.1387
0.1467
0.1523
0.1556
0.1568
0.1559
0.1528
0.1470
0.1378
0.1217
0.0539
0.0882
0.0726
0.0571
0.0412
0.0243
0.0055
-0.0168
-0.0457
-0.0894
-0.1807
-0.7704
0.4295
0.4541
0.4783
0.5027
0.5274
0.5533
0.5811
0.6124
0.6513
0.7130
1.0019
[2] Page 316, exercise 4 answer on disk: The formula in cells Editor:
B11:B16 Page
should316 typo
will go into the files on
be:
the disk
Instead of:
=TRANSPOSE(MMULT(TRANSPOSE(K2:K7),B2:G7)/MMULT(MMULT(TRANSPOSE
(K2:K7),B2:G7),
K2:K7))
Should be:
=TRANSPOSE(MMULT(TRANSPOSE(K2:K7),MINVERSE(B2:G7))/MMULT(MMULT(
TRANSPOSE(K2:K7),MINVERSE(B2:G7)),K2:K7))
[1] Page 344, Chapter 12: The screen clip does not include all the data. The
correct clip should be:
A
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
x1
x2
x3
x4
Total
Portfolio mean
Portfolio sigma
Theta
-0.08
0.02
0.30
0.20
0.05
0.03
0.20
0.90
Means
8%
9%
10%
11%
0.0000
0.0000
0.0000
1.0000
1.0000 <-- =SUM(B11:B14)
11.00% <-- {=MMULT(TRANSPOSE(B11:B14),G3:G6)}
94.87% <-- {=SQRT(MMULT(TRANSPOSE(B11:B14),MMULT(B3:E6,B11:B14)))}
-5.27% <-- =(portfolio_mean-C8)/Portfolio_sigma
J
RESULTS
c
-0.035
-0.03
-0.025
-0.02
-0.015
-0.01
-0.005
0
0.005
0.01
0.015
0.02
0.025
0.03
0.035
0.04
0.045
0.05
0.055
0.06
0.065
0.07
0.075
K
Sigma
20.24%
20.25%
20.25%
20.25%
20.25%
20.26%
20.26%
20.27%
20.27%
20.28%
20.29%
20.30%
20.31%
20.32%
20.34%
20.37%
20.41%
20.46%
20.54%
20.67%
20.90%
21.36%
23.27%
L
Mean
8.70%
8.70%
8.70%
8.71%
8.71%
8.71%
8.71%
8.71%
8.71%
8.72%
8.72%
8.72%
8.73%
8.73%
8.74%
8.74%
8.75%
8.76%
8.78%
8.80%
8.82%
8.87%
9.01%
M
x1
0.6049
0.6042
0.6035
0.6027
0.6017
0.6007
0.5994
0.5982
0.5968
0.5950
0.5932
0.5910
0.5885
0.5856
0.5821
0.5779
0.5726
0.5659
0.5572
0.5452
0.5277
0.4992
0.4267
N
x2
0.0885
0.0887
0.0890
0.0893
0.0897
0.0901
0.0908
0.0912
0.0917
0.0926
0.0934
0.0943
0.0953
0.0965
0.0980
0.0998
0.1019
0.1047
0.1083
0.1133
0.1205
0.1324
0.1630
O
x3
0.3066
0.3070
0.3075
0.3080
0.3086
0.3092
0.3098
0.3106
0.3115
0.3123
0.3134
0.3147
0.3161
0.3179
0.3199
0.3224
0.3255
0.3294
0.3345
0.3415
0.3518
0.3684
0.3856
P
x4
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0000
0.0248
Page 18
GM = 1.11%
GM = 0.86%
[1] Page 367: The screen clip has a mistake in the formulas in B29:B33. Should
be:
A
B
C
D
E
F
25 Risk-free rate
5.00%
Expected return on
26 S&P 500
12.00%
27
28 Black-Litterman implied returns
29 S&P 500
12.00%
<-- {=MMULT(B14:F18,H4:H8)*(B26MSCI
World
ex-US
30
12.97%
B25)/INDEX((MMULT(B14:F18,H4:H8)),1,1)+B25}
31 Russell 2000
13.30%
32 MSCI Emerging
14.45%
33 LB Global aggregate
5.76%
[1] Page 367, four lines up from bottom. The same mistake should be corrected:
Instead of:
=MMULT(B14:F18,H4:H8)*(B26B12)/INDEX((MMULT(B14:F18,H4:H8)),1,1)+B12
Should be:
=MMULT(B14:F18,H4:H8)*(B26B25)/INDEX((MMULT(B14:F18,H4:H8)),1,1)+B25
Page 19
[1] Page 402: Cell B9 in the spreadsheet should be T . For the particular
example given this makes no difference, but to make things correct:
A
1
2
3
4
5
6
7
8
9
10
11
12
100
10%
30%
1 <-- in years
[1] Page 404, screen from spreadsheet contains wrongly-identified cells (the
actual computations are correct). Screen should be:
A
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Asset 1
Asset 2
Asset 3
Initial investment
Mean return
Portfolio sigma
Mean investment value
Sigma of investment value
Cutoff
Cumulative PDF
VaR at 1.00% level
18
Mean
returns
10%
12%
13%
Variance-covariance matrix
0.10
0.04
0.03
0.04
0.20
-0.04
0.03
-0.04
0.60
Portfolio
proportions
0.30
0.25
0.45
100
0.1185 <-- {=MMULT(TRANSPOSE(B3:B5),H3:H5)}
0.3848 <-- {=SQRT(MMULT(MMULT(TRANSPOSE(H3:H5),D3:F5),H3:H5))}
111.8500
38.4838
22.3234 <-- =NORMINV(0.01,(1+B8)*B7,B9*B7)
0.01 <-- =NORMDIST(B14,B11,B12,TRUE)
77.6766 <-- =B7-B14
Note that the functions in cells B8 and B9 are array
functions: You must press [Ctrl]+[Shift]+[Enter] when
after you write the function in the cell. The curly
brackets {} are not written--they appear automatically.
[2] Page 428, 2nd bullet, line 3 & 4: The word purchaser (split between these two
lines) is mispelled (a is left out).
Page 20
dS
= dt + dB
S
dS
2
= +
dt + dB
Should be:
S
2
[1] Page 496, correct screen clip given below (was a typo in cell F3):
Page 21
D
List of 1000 normally
distributed numbers
2
Mean
Sigma
t
15%
30%
1
200
180
160
140
120
100
80
60
40
20
0
Lognormal
exp(t+ Z t)
1.4446
0.9258
1.1810
1.8868
1.1587
1.6312
2.4972
1.0842
1.6123
<-=EXP($B$3*$B$5+$B
$4*D3*SQRT($B$5))
0
.4
2
5
.2
0
.1
2
5
.9
1
0
.8
1
5
.6
1
0
.5
1
5
.3
1
0
.2
1
5
.0
1
0
.9
.0
5
7
We used Tools|DataAnalysis|
RandomNumberGeneration to
produce the list of 1,000 normally
distributed random numbers (with
12 mean =0 and standard deviation =
13 1) on the right.
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
0.726111011
-0.75691446
0.054451448
1.616244845
-0.009147243
1.130981673
2.550623321
-0.230678552
1.092166713
y
c
n
e
u
q
r
F
3
4
5
6
7
8
9
10
11
Bins
Frequency
0.00
0.15
0.30
0.45
0.60
0.75
0.90
1.05
1.20
0
0
0
0
8
70
132
162
181
1.35
1.50
1.65
1.80
1.95
2.10
2.25
2.40
139
113
74
53
25
16
10
5
[2] Page 519: In the VBA box CallOption should be BSCall so that line 6 should
be:
Instead of: If CallOption(Stock, Exercise, Time, Interest,
Should be: If BSCall(Stock, Exercise, Time, Interest,
[1] Page 538, cell C3 should say Exercise price instead of Exercise prie:
Page 22
A
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
25
25
6.00%
0.5
30%
d1
d2
N(d1)
N(d2)
Call price
Put price
Call bang
Put bang
1
2
3
4
5
6
7
8
133.011
130.000
4.00%
0.5
6%
9 d2
10
11 Call price
12 Put price
Page 23
[3] Page 609. The last two lines of the VBA code are missing. After Next Index
(shown below) end of the program should read as below. The program on the disk
for Chapter 22 is correct.
Next Index
SuccessfulRuns = Success / Runs
End Function
Duration
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
0
10
20
30
40
50
60
70
80
Maturity
of:
Page 24
Instead of: N ( N + 1) =
t =1
Should be: N ( N + 1) =
1
VB
t ( t + 1) Pt
( 1 + r) t
t ( t + 1) Pt
t =1
( 1+ r )
[2] Page 701, the lines below the top spreadsheet clip:
Instead of:
duration:
t =1
t ( t + 1) Pt
( 1+ r )
[2] Page 720, the table of Long-term Senior Debt Ratings, column 2
Instead of: AA3
Should be: Aa3
Page 25
Instead of:
Make the
function return
#Num!
Should be:
Make the function
return #Num!
[2] Page 890, exercise 6: The screenclip should be replaced by the following:
A
Exercise 6
1
2
3
4
5
6
7
Deposit
100
100
100
100
150
Years
1
2
12
12
5
FT0
FT1
110
110
2500
225
3400
125
100
5000
1387.5
2500
113.636
110.494
200.000
616.680
192.504
<-<-<-<-<--
=Bond(A3,B3,C3,D3)
=Bond(A4,B4,C4,D4)
=Bond(A5,B5,C5,D5)
=Bond(A6,B6,C6,D6)
=Bond(A7,B7,C7,D7)
There is also a mistake in the VBA of the answer on the disk. The 12 * Years
should have been enclosed in parentheses. This has been corrected on the disk.
Function Bond(Deposit, Years, FT0, FT1)
Temp1 = Deposit + Deposit * (FT1 - FT0) / FT0
Temp2 = Deposit * (1 + 0.05 / 12) ^ (12 * Years)
If Temp1 > Temp2 Then Bond = Temp1 Else Bond = Temp2
End Function
[2] Page 1089: The promised files didnt make it to the disk. Ive posted them
here (they will be added to the disk starting with the third printing).
fm3_chapter41_var_cov.doc
fm3_chapter41_var_cov.xls
Page 26