Оптимизация портфеля ценных бумаг
Формирование оптимального портфеля ценных бумаг. Паевые инвестиционные фонды на рынке России. Использование копула-функций для оптимизации портфеля ценных бумаг. Анализ данных по выбранным паевым инвестиционным фондам. Тестирование оптимальных портфелей.
Рубрика | Финансы, деньги и налоги |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 18.10.2016 |
Размер файла | 1,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Kol. half [a,] <-doh. cum. half #матрица кумулятивных доходностей по каждому портфелю для NN симуляций за полугодие
Bol. month [a,] < - yui.com. month #матрица кумулятивных доходностей по каждому ПИФ для NN симуляций за месяц
Bol. kvart [a,] < - yui.com. kvart #матрица кумулятивных доходностей по каждому ПИФ для NN симуляций за квартал
Bol. half [a,] < - yui.com. half #матрица кумулятивных доходностей по каждому ПИФ для NN симуляций за полугодие
}
dohodnost. month <-matrix (ncol=Z,nrow=1)
dohodnost. kvart <-matrix (ncol=Z,nrow=1)
dohodnost. half <-matrix (ncol=Z,nrow=1)
CVaR. month <-matrix (ncol=Z,nrow=1)
CVaR. kvart <-matrix (ncol=Z,nrow=1)
CVaR. half <-matrix (ncol=Z,nrow=1)
VaR. month <-matrix (ncol=Z,nrow=1)
VaR. kvart <-matrix (ncol=Z,nrow=1)
VaR. half <-matrix (ncol=Z,nrow=1)
alpha=0.95 #уровень значимости для расчета CVaR и VaR
zn<- (1-alpha) *N
for (i in 1: Z) {
dohodnost. month [, i] <-mean (Kol. month [, i]) #значениямесячнойДоходности
dohodnost. kvart [, i] <-mean (Kol. kvart [, i]) #значенияквартальнойДоходности
dohodnost. half [, i] <-mean (Kol. half [, i]) #значения полугодовой Доходности
olo. month<-sort (Kol. month [, i] * (-1), decreasing=TRUE)
olo. kvart<-sort (Kol. kvart [, i] * (-1), decreasing=TRUE)
olo. half<-sort (Kol. half [, i] * (-1), decreasing=TRUE)
VaR. month [i] < - olo. month [zn] # значениямесячного VaR
VaR. kvart [i] < - olo. kvart [zn] # значенияквартального VaR
VaR. half [i] < - olo. half [zn] # значения полугодового VaR
CVaR. month [i] <-mean (olo. month [1: zn]) #значения месячного CVAR
CVaR. kvart [i] <-mean (olo. kvart [1: zn]) #значения квартального CVAR
CVaR. half [i] <-mean (olo. half [1: zn]) #значения полугодового CVAR
}
x11 ()
a. par<-par (mfrow = c (1,3))
plot (CVaR. month, dohodnost. month, xlab="Значения CVaR",ylab="Значения ожидаемой доходности", main="Достижимое множество месячные данные")
plot (CVaR. kvart, dohodnost. kvart, xlab="Значения CVaR",ylab="Значения ожидаемой доходности", main="Достижимое множество квартальные данные")
plot (CVaR. half, dohodnost. half, xlab="Значения CVaR",ylab="Значения ожидаемой доходности", main="Достижимое множество полугодовые данные")
#Поиск оптимального портфеля ценных бумаг modSharpRatio
riskfree. rate. day<- ( ( (1+0.096) ^ (1/360)) - 1) *100 #дневная безрисковая ставка
riskfree. rate. month<- ( ( (riskfree. rate. day/100+1) ^30) - 1) *100#месячная безрисковая ставка
riskfree. rate. kvart<- ( ( (riskfree. rate. day/100+1) ^90) - 1) *100#квартальная безрисковая ставка
riskfree. rate. half<- ( ( (riskfree. rate. day/100+1) ^180) - 1) *100 #полугодовая безрисковая ставка
znach. koef. month<- (dohodnost. month - riskfree. rate. month) / (CVaR. month) #коэффициент Шарпа для CVaR по функции потерь месячные данные
max. koef. month<-order (znach. koef. month, decreasing = TRUE)
portf. max. koef. month< - Y [max. koef. month [1],] #веса ценных бумаг в оптимальном портфеле месячные данные
char. max. koef. month<-c (dohodnost. month [max. koef. month [1]], CVaR. month [max. koef. month [1]], VaR. month [max. koef. month [1]], znach. koef. month [max. koef. month [1]]) #характеристики оптимального портфеля месячные данные
names (char. max. koef. month) < - c ("Доходность", "CVaR ","VaR ","Коэффициент")
znach. koef. kvart<- (dohodnost. kvart - riskfree. rate. kvart) / (CVaR. kvart) #коэффициент Шарпа для CVaR по функции потерь квартальные данные
max. koef. kvart<-order (znach. koef. kvart, decreasing = TRUE)
portf. max. koef. kvart< - Y [max. koef. kvart [1],] #веса ценных бумаг в оптимальном портфеле квартальные данные
char. max. koef. kvart<-c (dohodnost. kvart [max. koef. kvart [1]], CVaR. kvart [max. koef. kvart [1]], VaR. kvart [max. koef. kvart [1]], znach. koef. kvart [max. koef. kvart [1]]) #характеристики оптимального портфеля квартальные данные
names (char. max. koef. kvart) < - c ("Доходность", "CVaR ","VaR ","Коэффициент")
znach. koef. half<- (dohodnost. half - riskfree. rate. half) / (CVaR. half) #коэффициент Шарпа для CVaR по функции потерь полугодовые данные
max. koef. half<-order (znach. koef. half, decreasing = TRUE)
portf. max. koef. half< - Y [max. koef. half [1],] #веса ценных бумаг в оптимальном портфеле полугодовые данные
char. max. koef. half<-c (dohodnost. half [max. koef. half [1]], CVaR. half [max. koef. half [1]], VaR. half [max. koef. half [1]], znach. koef. half [max. koef. half [1]]) #характеристики оптимального портфеля полугодовые данные
names (char. max. koef. half) < - c ("Доходность", "CVaR ","VaR ","Коэффициент")
# Портфельминимальногорискапо CVaR
min. CVaR. month<-order (CVaR. month, decreasing = FALSE)
portf. min. CVaR. month< - Y [min. CVaR. month [1],] #веса ценных бумаг в портфеле минимального риска месячные данные
char. min. CVaR. month<-c (dohodnost. month [min. CVaR. month [1]], CVaR. month [min. CVaR. month [1]], VaR. month [min. CVaR. month [1]], znach. koef. month [min. CVaR. month [1]]) #характеристики портфеля минимального риска месячные данные
names (char. min. CVaR. month) < - c ("Доходность", "CVaR ","VaR ","Коэффициент")
min. CVaR. kvart<-order (CVaR. kvart, decreasing = FALSE)
portf. min. CVaR. kvart< - Y [min. CVaR. kvart [1],] #веса ценных бумаг в портфеле минимального риска квартальные данные
char. min. CVaR. kvart<-c (dohodnost. kvart [min. CVaR. kvart [1]], CVaR. kvart [min. CVaR. kvart [1]], VaR. kvart [min. CVaR. kvart [1]], znach. koef. kvart [min. CVaR. kvart [1]]) #характеристики портфеля минимального риска квартальные данные
names (char. min. CVaR. kvart) < - c ("Доходность", "CVaR ","VaR ","Коэффициент")
min. CVaR. half<-order (CVaR. half, decreasing = FALSE)
portf. min. CVaR. half< - Y [min. CVaR. half [1],] #веса ценных бумаг в портфеле минимального риска полугодовые данные
char. min. CVaR. half<-c (dohodnost. half [min. CVaR. half [1]], CVaR. half [min. CVaR. half [1]], VaR. half [min. CVaR. half [1]], znach. koef. half [min. CVaR. half [1]]) #характеристики портфеля минимального риска полугодовые данные
names (char. min. CVaR. half) < - c ("Доходность", "CVaR ","VaR ","Коэффициент")
#Достижимое множество портфелей по Марковицу
ogid. doh. mark<-matrix (nrow=1, ncol=Q) #Ожидаемые доходности каждого ПИФ
for (i in 1: Q) {
ogid. doh. mark [i] <-mean (A [, i])
}
risk. mark<-matrix (nrow=1,ncol=Z) #рисккаждогопортфеля
dohodnost. mark<-matrix (nrow=1,ncol=Z) # доходностькаждогопортфеля
cov. matrix<-cov (A) #Ковариационная матрица ПИФ
for (a in 1: Z) {
dohodnost. mark [a] < - sum (ogid. doh. mark*Y [a,])
ris<-0
for (j in 1: Q) {
for (v in 1: Q) {
ris<-ris+Y [a,j] *Y [a,v] *cov. matrix [j,v]
}
}
risk. mark [a] <-sqrt (ris)
}
x11 ()
plot (risk. mark^2, dohodnost. mark*100, xlab="Рискпортфеля",ylab="Значенияожидаемойдоходности", main="ДостижимоемножествоМарковица")
#Оптимизация портфеля Markovitz на основе SharpRatio
znach. koef. mark<- (dohodnost. mark - riskfree. rate. day) /risk. mark #коэффициент Шарпа Марковиц
max. koef. mark<-order (znach. koef. mark, decreasing = TRUE)
portf. max. koef. mark< - Y [max. koef. mark [1],] #веса ценных бумаг в оптимальном портфеле месячные данные
char. max. koef. mark<-c (dohodnost. mark [max. koef. mark [1]], risk. mark [max. koef. mark [1]], znach. koef. mark [max. koef. mark [1]]) #характеристики оптимального портфеля месячные данные
names (char. max. koef. mark) < - c ("Доходность", "Риск ","Коэффициент")
#Портфель минимального риска по Марковицу
min. sigma. mark<-order (risk. mark, decreasing = FALSE)
portf. min. sigma. mark< - Y [min. sigma. mark [1],] #веса ценных бумаг в портфеле минимального риска по Марковицу
char. min. sigma. mark<-c (dohodnost. mark [min. sigma. mark [1]], risk. mark [min. sigma. mark [1]], znach. koef. mark [min. sigma. mark [1]]) #характеристики портфеля минимального риска по Марковицу
names (char. min. sigma. mark) < - c ("Доходность", "Риск ","Коэффициент")
#Контрольная выборка, кумулятивные доходности и ковариационные матрицы
kom. doh. kontr. month<-matrix (nrow=1,ncol=Q)
kom. doh. kontr. kvart<-matrix (nrow=1,ncol=Q)
kom. doh. kontr. half<-matrix (nrow=1,ncol=Q)
for (iin 1: Q) {
kom. doh. kontr. month [i] <- (prod (1+B [1: 30, i] /100) - 1) *100 # месячная кумулятивная доходность по контрольным данным
kom. doh. kontr. kvart [i] <- (prod (1+B [1: 90, i] /100) - 1) *100 # квартальная кумулятивная доходность по контрольным данным
kom. doh. kontr. half [i] <- (prod (1+B [, i] /100) - 1) *100 # полугодовая кумулятивная доходность по контрольным данным
}
cov. ms. month<-cov (B [1: 30,]) #ковариационная матрица для месяца по контрольным данным
cov. ms. kvart< - cov (B [1: 90,]) #ковариационная матрица для квартала по контрольным данным
cov. ms. half< - cov (B) #ковариационная матрица для полугодия по контрольным данным
#Сравнение оптимальных портфелей
doh. mark. opt. month<-sum (portf. max. koef. mark*kom. doh. kontr. month) #месячная доходность по портфелю Марковица
doh. mark. opt. kvart<-sum (portf. max. koef. mark*kom. doh. kontr. kvart) #месячная доходность по портфелю CVaR
doh. mark. opt. half<-sum (portf. max. koef. mark*kom. doh. kontr. half) #квартальная доходность по портфелю Марковица
doh. CVaR. opt. month<-sum (portf. max. koef. month*kom. doh. kontr. month) #квартальная доходность по портфелю CVaR
doh. CVaR. opt. kvart< - sum (portf. max. koef. kvart*kom. doh. kontr. kvart) #полугодовая доходность по портфелю Марковица
doh. CVaR. opt. half< - sum (portf. max. koef. half*kom. doh. kontr. half) #полугодовая доходность по портфелю CVaR
ris. mark. opt. month<-0
ris. CVaR. opt. month<-0
ris. mark. opt. kvart<-0
ris. CVaR. opt. kvart<-0
ris. mark. opt. half<-0
ris. CVaR. opt. half<-0
for (j in 1: Q) {
for (v in 1: Q) {
ris. mark. opt. month< - ris. mark. opt. month + portf. max. koef. mark [j] * portf. max. koef. mark [v] * cov. ms. month [j,v]
ris. CVaR. opt. month<-ris. CVaR. opt. month+ portf. max. koef. month [j] * portf. max. koef. month [v] * cov. ms. month [j,v]
ris. mark. opt. kvart< - ris. mark. opt. kvart+ portf. max. koef. mark [j] * portf. max. koef. mark [v] * cov. ms. kvart [j,v]
ris. CVaR. opt. kvart< - ris. CVaR. opt. kvart+ portf. max. koef. kvart [j] * portf. max. koef. kvart [v] * cov. ms. kvart [j,v]
ris. mark. opt. half< - ris. mark. opt. half+ portf. max. koef. mark [j] * portf. max. koef. mark [v] * cov. ms. half [j,v]
ris. CVaR. opt. half< - ris. CVaR. opt. half+ portf. max. koef. half [j] * portf. max. koef. half [v] * cov. ms. half [j,v]
}
}
ris. mark. opt. month<-sqrt (ris. mark. opt. month) *sqrt (30) #месячныйрискпопортфелюМарковица
ris. CVaR. opt. month<-sqrt (ris. CVaR. opt. month) *sqrt (30) #месячныйрискпопортфелю CVaR
ris. mark. opt. kvart<-sqrt (ris. mark. opt. kvart) *sqrt (90) #квартальныйрискпопортфелюМарковица
ris. CVaR. opt. kvart< - sqrt (ris. CVaR. opt. kvart) *sqrt (90) #квартальныйрискпопортфелю CVaR
ris. mark. opt. half< - sqrt (ris. mark. opt. half) *sqrt (180) #полугодовойпопортфелюМарковица
ris. CVaR. opt. half< - sqrt (ris. CVaR. opt. half) *sqrt (180) #полугодовойрискпопортфелю CVaR
#Сравнениепортфелейсминимальнымриском
doh. mark. min. month<-sum (portf. min. sigma. mark*kom. doh. kontr. month) #месячнаядоходностьпопортфелюМарковица
doh. mark. min. kvart<-sum (portf. min. sigma. mark*kom. doh. kontr. kvart) #месячнаядоходностьпопортфелю CVaR
doh. mark. min. half<-sum (portf. min. sigma. mark*kom. doh. kontr. half) #квартальнаядоходностьпопортфелюМарковица
doh. CVaR. min. month<-sum (portf. min. CVaR. month*kom. doh. kontr. month) #квартальнаядоходностьпопортфелю CVaR
doh. CVaR. min. kvart< - sum (portf. min. CVaR. kvart*kom. doh. kontr. kvart) #полугодоваядоходностьпопортфелюМарковица
doh. CVaR. min. half< - sum (portf. min. CVaR. half*kom. doh. kontr. half) #полугодоваядоходностьпопортфелю CVaR
ris. mark. min. month<-0
ris. CVaR. min. month<-0
ris. mark. min. kvart<-0
ris. CVaR. min. kvart<-0
ris. mark. min. half<-0
ris. CVaR. min. half<-0
for (j in 1: Q) {
for (v in 1: Q) {
ris. mark. min. month< - ris. mark. min. month + portf. min. sigma. mark [j] * portf. min. sigma. mark [v] * cov. ms. month [j,v]
ris. CVaR. min. month<-ris. CVaR. min. month+ portf. min. CVaR. month [j] * portf. min. CVaR. month [v] * cov. ms. month [j,v]
ris. mark. min. kvart< - ris. mark. min. kvart + portf. min. sigma. mark [j] * portf. min. sigma. mark [v] * cov. ms. kvart [j,v]
ris. CVaR. min. kvart< - ris. CVaR. min. kvart+ portf. min. CVaR. kvart [j] * portf. min. CVaR. kvart [v] * cov. ms. kvart [j,v]
ris. mark. min. half< - ris. mark. min. half+ portf. min. sigma. mark [j] * portf. min. sigma. mark [v] * cov. ms. half [j,v]
ris. CVaR. min. half< - ris. CVaR. min. half+ portf. min. CVaR. half [j] * portf. min. CVaR. half [v] * cov. ms. half [j,v]
}
}
ris. mark. min. month<-sqrt (ris. mark. min. month) *sqrt (30) #месячныйрискпопортфелюМарковица
ris. CVaR. min. month<-sqrt (ris. CVaR. min. month) *sqrt (30) #месячныйрискпопортфелю CVaR
ris. mark. min. kvart<-sqrt (ris. mark. min. kvart) *sqrt (90) #квартальныйрискпопортфелюМарковица
ris. CVaR. min. kvart< - sqrt (ris. CVaR. min. kvart) *sqrt (90) #квартальныйрискпопортфелю CVaR
ris. mark. min. half< - sqrt (ris. mark. min. half) *sqrt (180) #полугодовойпопортфелюМарковица
ris. CVaR. min. half< - sqrt (ris. CVaR. min. half) *sqrt (180) #полугодовойрискпопортфелю CVaR
#Результаты
tabl. month<-matrix (nrow=3,ncol=4) #итоговая таблица с месячными данными
tabl. kvart<-matrix (nrow=3,ncol=4) #итоговая таблица с квартальными данными
tabl. half<-matrix (nrow=3,ncol=4) #итоговая таблица с полугодовыми данными
tabl. month [1,] <-c (doh. mark. opt. month, doh. CVaR. opt. month, doh. mark. min. month, doh. CVaR. min. month)
tabl. month [2,] <-c (ris. mark. opt. month, ris. CVaR. opt. month, ris. mark. min. month, ris. CVaR. min. month)
tabl. month [3,] < - (tabl. month [1,] - riskfree. rate. month) / tabl. month [2,]
tabl. kvart [1,] <-c (doh. mark. opt. kvart, doh. CVaR. opt. kvart, doh. mark. min. kvart, doh. CVaR. min. kvart)
tabl. kvart [2,] <-c (ris. mark. opt. kvart, ris. CVaR. opt. kvart, ris. mark. min. kvart, ris. CVaR. min. kvart)
tabl. kvart [3,] < - (tabl. kvart [1,] - riskfree. rate. kvart) / tabl. kvart [2,]
tabl. half [1,] <-c (doh. mark. opt. half, doh. CVaR. opt. half, doh. mark. min. half, doh. CVaR. min. half)
tabl. half [2,] <-c (ris. mark. opt. half, ris. CVaR. opt. half, ris. mark. min. half, ris. CVaR. min. half)
tabl. half [3,] < - (tabl. half [1,] - riskfree. rate. half) / tabl. half [2,]
Размещено на Allbest.ru
Подобные документы
Методы оптимизации и диверсификации фондового портфеля, оценка его эффективности. Мониторинг портфеля ценных бумаг. Оценка инвестиционной привлекательности ценных бумаг эмитента. Риски, связанные с портфельными инвестициями и способы их снижения.
реферат [35,4 K], добавлен 17.03.2011Понятие портфеля ценных бумаг, его виды и основные принципы формирования. Модель ценообразования на основной капитал: применение парного регрессионного анализа. Вывод линейной зависимости между риском и прибылью. Составление оптимального портфеля.
дипломная работа [339,5 K], добавлен 19.05.2013Сущность и особенности долговых ценных бумаг. Методики оценки риска ценных бумаг и стоимости разных видов облигаций. Методы формирования портфеля ценных бумаг. Современное состояние и тенденции развития рынка российских государственных ценных бумаг.
дипломная работа [1,6 M], добавлен 26.02.2010Основы формирования и управления портфелем ценных бумаг. Типы портфелей и цели портфельного инвестирования. Принципы формирования портфеля ценных бумаг. Характеристика основных видов ценных бумаг и оценка их доходности. Модели портфельного инвестирования.
дипломная работа [205,6 K], добавлен 05.10.2010Понятие и классификация инвестиций, особенности портфельного инвестирования. Типы инвестиционных портфелей и особенности управления ими, методы оптимизации. Тип, объем и структура портфеля инвестиций. Формирование оптимального портфеля ценных бумаг.
дипломная работа [657,9 K], добавлен 31.07.2010Понятие о рынке ценных бумаг. Место рынка ценных бумаг. Функции ценных бумаг. Составные части рынка ценных бумаг и его участники. Эволюция российского рынка ценных бумаг. Тенденции развития рынка ценных бумаг. Основные проблемы.
курсовая работа [32,9 K], добавлен 05.06.2006Виды ценных бумаг: государственная и муниципальная облигация, вексель, закладная, акция, коносамент, чек. Жилищный, депозитный и сберегательный сертификаты. Формирование оптимального портфеля. Способы управления и снижения риска инвестиционного портфеля.
реферат [17,1 K], добавлен 21.12.2013Понятие и виды ценных бумаг. Природа и признаки ценных бумаг. Двойственность ценных бумаг. Классификация ценных бумаг. Обращение ценных бумаг. Оборот ценных бумаг. Источники правового регулирования вопросов эмиссии и обращения ценных бумаг.
курсовая работа [29,6 K], добавлен 08.02.2004Инвестиционные институты как профессиональные участники рынка ценных бумаг. Виды инвестиционных институтов: финансовые брокеры, инвестиционные консультанты, компании и фонды. Андеррайтинг ценных бумаг. Крупнейшие российские инвестиционные компании.
доклад [24,9 K], добавлен 07.04.2009Регистрация ценных бумаг. Этапы эмиссии ценных бумаг. Проспект ценных бумаг как источник информации инвестора об эмитенте. Эффективность функционирования первичного рынка ценных бумаг. Уровни правового регулирования внутренних заимствований РФ.
контрольная работа [25,3 K], добавлен 03.03.2013