Sunteți pe pagina 1din 6

C183 HW1

YIK LUN, KEI


2017/4/8

Exercise 1
n1
p2 = n1 i2 + n
ij
1
5
50 + 45 10 = 18
1 9
10
50 + 10
10 = 14
1 19
20
50 + 20
10 = 12
1 49
50
50 + 50
10 = 10.8
1 99
100
50 + 100
10 = 10.4

Exercise 2

Covar <- 0.95 *sqrt(0.0061) * sqrt(0.0046)


Xa <- (0.0046 - Covar) / (0.0061+0.0046 - 2*Covar)
Xb <- (0.0061 - Covar) / (0.0061+0.0046 - 2*Covar)
Xa;Xb

## [1] -0.6803982
## [1] 1.680398
x<-seq(-2,2,by=0.01)
Rbar <- x * 0.01 + (1-x) * 0.013
VarP <- sqrt(x^2* 0.0061 + (1-x)^2 * 0.0046 + 2*x*(1-x) * Covar)
Rbarmin <- Xa * 0.01 + Xb * 0.013
VarPmin <- sqrt(Xa^2* 0.0061 + Xb^2 * 0.0046 + 2*Xa*Xb * Covar)
Rbarmin;VarPmin

## [1] 0.01504119
## [1] 0.06561903
plot(VarP,Rbar);points(VarPmin,Rbarmin,col="red",pch=19, cex=3)

1
0.016
Rbar

0.012
0.008

0.065 0.070 0.075 0.080 0.085 0.090 0.095

VarP

Exercise 3

C <- read.csv("/Users/air/Desktop/C.csv")
AAPL <- read.csv("/Users/air/Desktop/AAPL.csv")
IBM <- read.csv("/Users/air/Desktop/IBM.csv")
JPM <- read.csv("/Users/air/Desktop/JPM.csv")
AMZN <- read.csv("/Users/air/Desktop/AMZN.csv")
rC <- (C$Adj.Close[-length(C$Adj.Close)]-C$Adj.Close[-1])/C$Adj.Close[-1]
rAAPL <- (AAPL$Adj.Close[-length(AAPL$Adj.Close)]-AAPL$Adj.Close[-1])/AAPL$Adj.Close[-1]
rIBM <- (IBM$Adj.Close[-length(IBM$Adj.Close)]-IBM$Adj.Close[-1])/IBM$Adj.Close[-1]
rJPM <- (JPM$Adj.Close[-length(JPM$Adj.Close)]-JPM$Adj.Close[-1])/JPM$Adj.Close[-1]
rAMZN <- (AMZN$Adj.Close[-length(AMZN$Adj.Close)]-AMZN$Adj.Close[-1])/AMZN$Adj.Close[-1]
data<- cbind(rC,rAAPL,rIBM,rJPM,rAMZN)
colMeans(data)

## rC rAAPL rIBM rJPM rAMZN


## 0.0104216732 0.0161296961 -0.0001213011 0.0167945904 0.0252096400
cov(data)

## rC rAAPL rIBM rJPM rAMZN


## rC 0.004562707 0.0015267808 0.0015956917 0.0033791497 0.0019503757
## rAAPL 0.001526781 0.0045280208 0.0012407668 0.0006656153 0.0017112254
## rIBM 0.001595692 0.0012407668 0.0027023726 0.0013108399 0.0008218219
## rJPM 0.003379150 0.0006656153 0.0013108399 0.0033567570 0.0012301124
## rAMZN 0.001950376 0.0017112254 0.0008218219 0.0012301124 0.0066835180
return_p <- rep(0,10000000);sd_p <- rep(0,10000000)
j <- 0;i <- 0
for (a in seq(-.2, 1, 0.1)) {
for (b in seq(-.2, 1, 0.1)) {
for(c in seq(-.2, 1, 0.1)){
for(d in seq(-.2, 1, 0.1)){
for(e in seq(-.2, 1, 0.1)){
if(a+b+c+d+e==1) {

2
j=j+1
return_p[j]=a*mean(data[,1])+b*mean(data[,2])+
c*mean(data[,3])+d*mean(data[,4])+e*mean(data[,5])
sd_p[j]=(a^2*var(data[,1]) +
b^2*var(data[,2])+
c^2*var(data[,3])+
d^2*var(data[,4])+
e^2*var(data[,5])+
2*a*b*cov(data[,1],data[,2])+
2*a*c*cov(data[,1],data[,3])+
2*a*d*cov(data[,1],data[,4])+
2*a*e*cov(data[,1],data[,5])+
2*b*c*cov(data[,2],data[,3])+
2*b*d*cov(data[,2],data[,4])+
2*b*e*cov(data[,2],data[,5])+
2*c*d*cov(data[,3],data[,4])+
2*c*e*cov(data[,3],data[,5])+
2*d*e*cov(data[,4],data[,5]))^.5
}
} } } } }
R_p <- return_p[1:j]
sigma_p <- sd_p[1:j]

Rbar <- colMeans(data)


varcovar <- cov(data)
V <- solve(varcovar)
ones <- rep(1,5)
x <- V %*% ones / as.numeric(t(ones) %*% V %*% ones)
rmin <- t(x) %*% Rbar
varmin <- t(x) %*% varcovar %*% x
sdmin <- varmin^.5
plot(sigma_p,R_p);points(sdmin,rmin,col="red",pch=19, cex=3)
0.010 0.020 0.030
R_p

0.005

0.04 0.05 0.06 0.07 0.08 0.09

sigma_p

3
Exercise 4

(a) short sales are allowed, no risk free asset

xx <- diag(c(0.010025, 0.002123, 0.005775), 3,3)


xxinv <- solve(xx)
x1 <- sum(xxinv[1,]) / sum(xxinv)
x2 <- sum(xxinv[2,]) / sum(xxinv)
x3 <- sum(xxinv[3,]) / sum(xxinv)
x1; x2; x3

## [1] 0.1340838
## [1] 0.633156
## [1] 0.2327602

(b) Rf = 0.001 and short sales allowed

R_ibar <-as.matrix(c(0.005174,0.010617,0.016947))
R <- R_ibar-0.001
z <-solve(xx) %*% R
x <- z/sum(z)
x

## [,1]
## [1,] 0.05401891
## [2,] 0.58771579
## [3,] 0.35826530
t(x) %*% R_ibar

## [,1]
## [1,] 0.01259079
sqrt(t(x) %*% xx %*% x)

## [,1]
## [1,] 0.0387789

Exercise 5

1.

The investor will move up from point A until the tangent, or move to the left of point A, again until the
tangent.

2.

Portfolio Z (R = 9 and = 21) cannot be on the efficient frontier. When plotting the above portfolios, only
Z lies below the efficient frontier as described by Markowitz. It has a higher standard deviation than W with
a lower expected return.

4
3.
Pn 1 P25 25(0.15)
Rp = i=1 xi Ri = 25 i=1 Ri = 25
= 0.15
Pn Pn Pn 1 1 1
p2 = x2i i2 + i=1 j6=i xi xj ij =
i=1 252
25(0.6)2 + 25(24) 25 25
(0.6)(0.6) = 0.1872

Therefore, p = 0.1872 = 0.4327

4.
n1
p2 = n1 2 + n
2 < 0.432
2 + (n 1) 2 < 0.432 n
0.0049n < 0.18
n > 36.73469
Therefore n must be at least 37

5.
n1
p2 = n1 i2 + n
ij
p2 = ij as n gets large
Pn Pn
1 2
p2 = i=1 j6=i
n(n1)

p2 = 1 2

p = since 1 = 2

Exercise 6

Z = 1 R where


12 12 and
RA Rf
= R=
12 22 RB Rf


1 22 12
1 = 2 2
2
1 2 12 12 12


1 22 12 R1 Rf
Z= 2 2
2
1 2 12 12 12 R2 Rf

5

1 22 RA 12 RB
Z= 2 2
2
1 2 12 12 RA + 12 RB

22 RA 12 RB
Z1 =
12 22 12

12 RB 12 RA
Z2 =
12 22 12

22 RA + 12 RB 12 (RA + RB )
Z1 + Z2 =
12 22 12

Z1 22 RA 12 RB
X1 = Z1 +Z2 = 2
1 RA +12 RB (RA +RB )12
Z2 12 RB 12 RA
X2 = Z1 +Z2 = 12 RA +12 RB (RA +RB )12 = 1 X1

S-ar putea să vă placă și