Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- library(ggplot2)
- library(Rmisc)
- library(lattice)
- library(plyr)
- library(corrplot)
- library(moments)
- library(xts)
- library(gridExtra)
- library(ggalt)
- library(scales)
- #Partea 3 Google Trends
- date<-read.csv("multiTimeline (1).csv", header=TRUE)
- View(date)
- attach(date)
- fix(date)
- ziua<-as.Date(date$Day, "%d-%m-%Y")
- View(date)
- a<-data.frame(date$Day,date$Microsoft, date$Amazon)
- attach(a)
- fix(a)
- View(a)
- a<-na.omit(a)
- View(a)
- attach(a)
- # statistici descriptive --------------------------------------------------
- stat<-summary(a[-1])
- stat
- output = function() {
- fisier.input = choose.files(caption = "Selectie fisier de date",
- filters = matrix(
- data = c("Fisiere csv", "*.csv"),
- nrow = 1,
- ncol = 2
- ))
- tabel.date = read.csv(file = fisier.input, row.names = 1)
- tabel.indicatori = sapply(
- X = tabel.date,
- FUN = function(coloana) {
- if (is.numeric(coloana)) {
- f_media = mean(x = coloana)
- f_mediana = median(x = coloana)
- f_std = sd(x = coloana)
- f_cuart = quantile(x= coloana , c(.25, .75))
- f_apl = moments::kurtosis(x = coloana)
- f_sim = moments::skewness(x = coloana)
- return(
- c(
- Media = f_media,
- Mediana = f_mediana,
- Std = f_std,
- Cuartile = f_cuart,
- Simetria = f_sim,
- Aplatizarea = f_apl
- )
- )
- }
- }
- )
- print(tabel.indicatori)
- write.csv(tabel.indicatori,paste("Statistici.csv",sep = "_"))
- grid.arrange(tableGrob(round(as.matrix(tabel.indicatori),2)))
- }
- output()
- h1<-ggplot(date, aes(x=Microsoft))+geom_histogram(col="#7cbb00")
- h1
- h2<-ggplot(date, aes(x=Amazon))+geom_histogram(col="#ff9900")
- h2
- multiplot(h1,h2, cols=2)
- b1<-boxplot(Microsoft, col="#7cbb00", main="Microsoft")
- b1$out
- b2<-boxplot(Amazon, col="#ff9900", main="Amazon")
- b2$out
- corrplot(cor(a[-1]),method="number", type="upper")
- install.packages("dplyr",dependencies = T)
- install.packages("GGally",dependencies = T)
- library(dplyr)
- library(GGally)
- ggpairs(a[-1],
- axisLabels = "show",
- diag = list(continuous="bar", discrete="bar"),
- upper=list(continuous="points", discrete="box"),
- lower=list(continuous="cor",combo="facehist"))
- ggplot(a)+ geom_point( aes(x=a$date.Day, y=a$date.Microsoft), color="#7cbb00") +
- geom_point( aes(x=a$date.Day, y=a$date.Amazon), color="#ff9900")
- g1<-ggplot(a) +geom_point( aes(x=a$date.Day, y=a$date.Microsoft), color="#7cbb00")
- g2<-ggplot(a) +geom_point( aes(x=a$date.Day, y=a$date.Amazon), color="#ff9900")
- multiplot(g1,g2, cols=2)
- library(zoo)
- library(xts)
- a<-na.omit(a)
- attach(a)
- fix(a)
- View(a)
- sem= xts(a[-1], order.by = as.Date(a[,1],"%d-%m-%y"))
- plot(as.xts(sem),plot,type="s",at="pretty", col=heat.colors(n=2, alpha=1),main="Evolutia cautarilor pe Google pentru Microsoft si Amazon in anul 2018")
- View(sem)
- note<-read.csv("Note t0.csv")
- View(note)
- attach(note)
- fix(note)
- g1=ggplot(note, aes(x=Initiale, y=Microsoft0)) + geom_point(aes(col=Microsoft0, size=Microsoft0))
- g1
- g2=ggplot(note, aes(x=Initiale, y=Amazon0)) + geom_point(aes(col=Amazon0, size=Amazon0))
- g2
- g3=ggplot(note) + geom_point(aes(x=Initiale, y=Microsoft0, color="Microsoft0", size=Microsoft0)) +
- geom_point(aes(x=Initiale, y=Amazon0, color="Amazon0", size=Amazon0)) +
- labs(subtitle="BRANDURILE LA MOMENTUL 0",x="INITIALE", y="2 branduri", title="Scatterplot",
- caption="Punctaj")
- g3
- g4=ggplot(note) + geom_point(aes(x=Initiale, y=Microsoft1, color="Microsoft1", size=Microsoft1)) +
- geom_point(aes(x=Initiale, y=Amazon1, color="Amazon1", size=Amazon1)) +
- labs(subtitle="BRANDURILE LA MOMENTUL 1",x="INITIALE", y="2 branduri", title="Scatterplot",
- caption="Punctaj")
- g4
- Microsoft0m<-aggregate(note$Microsoft0, by=list(note$Initiale), FUN=mean)
- colnames(Microsoft0m)<-c("Nume" , "Note")
- View(Microsoft0m)
- Microsoft0m<-Microsoft0m[order(Microsoft0m$Note),]
- Microsoft0m$Nume<-factor(Microsoft0m$Nume, levels=Microsoft0m$Nume)
- note$Microsoft0norm<-round((note$Microsoft0- mean(note$Microsoft0))/sd(note$Microsoft0),2)
- note$Microsoft0norm
- note$Microsoft0type<-ifelse(note$Microsoft0norm<0, "sub medie", "peste medie")
- note$Microsoft0type
- note<-note[order(note$Microsoft0type),]
- View(note)
- note
- grafic1<-ggplot(note, aes(x=Initiale, y=note$Microsoft0norm, label=note$Microsoft0norm))+
- geom_bar(stat="identity", aes(fill=note$Microsoft0type), width = 0.5)+
- scale_fill_manual(name="Microsoft 0",
- labels=c("peste medie", "sub medie"),
- values=c("sub medie"="red", "peste medie"="green"))+
- labs(subtitle="Abaterie fata de medie Microsoft 0",
- title="Microsoft 0")
- plot(grafic1)
- Amazon0m<-aggregate(note$Amazon0, by=list(note$Initiale), FUN=mean)
- colnames(Amazon0m)<-c("Nume" , "Note")
- View(Amazon0m)
- Amazon0m<-Amazon0m[order(Amazon0m$Note),]
- Amazon0m$Nume<-factor(Amazon0m$Nume, levels=Amazon0m$Nume)
- note$Amazon0norm<-round((note$Amazon0- mean(note$Amazon0))/sd(note$Amazon0),2)
- note$Amazon0norm
- note$Amazon0type<-ifelse(note$Amazon0norm<0, "sub medie", "peste medie")
- note$Amazon0type
- note<-note[order(note$Amazon0type),]
- View(note)
- note
- grafic2<-ggplot(note, aes(x=Initiale, y=note$Amazon0norm, label=note$Amazon0norm))+
- geom_bar(stat="identity", aes(fill=note$Amazon0type), width = 0.5)+
- scale_fill_manual(name="Amazon 0",
- labels=c("peste medie", "sub medie"),
- values=c("sub medie"="red", "peste medie"="green"))+
- labs(subtitle="Abaterie fata de medie Amazon 0",
- title="Amazon 0")
- plot(grafic2)
- Microsoft1m<-aggregate(note$Microsoft1, by=list(note$Initiale), FUN=mean)
- colnames(Microsoft1m)<-c("Nume" , "Note")
- View(Microsoft1m)
- Microsoft1m<-Microsoft1m[order(Microsoft1m$Note),]
- Microsoft1m$Nume<-factor(Microsoft1m$Nume, levels=Microsoft1m$Nume)
- note$Microsoft1norm<-round((note$Microsoft1- mean(note$Microsoft1))/sd(note$Microsoft1),2)
- note$Microsoft1norm
- note$Microsoft1type<-ifelse(note$Microsoft1norm<0, "sub medie", "peste medie")
- note$Microsoft1type
- note<-note[order(note$Microsoft1type),]
- View(note)
- note
- grafic3<-ggplot(note, aes(x=Initiale, y=note$Microsoft1norm, label=note$Microsoft1norm))+
- geom_bar(stat="identity", aes(fill=note$Microsoft1type), width = 0.5)+
- scale_fill_manual(name="Microsoft 1",
- labels=c("peste medie", "sub medie"),
- values=c("sub medie"="red", "peste medie"="green"))+
- labs(subtitle="Abaterie fata de medie Microsoft 1",
- title="Microsoft 1")
- plot(grafic3)
- Amazon1m<-aggregate(note$Amazon1, by=list(note$Initiale), FUN=mean)
- colnames(Amazon1m)<-c("Nume" , "Note")
- View(Amazon1m)
- Amazon1m<-Amazon1m[order(Amazon1m$Note),]
- Amazon1m$Nume<-factor(Amazon1m$Nume, levels=Amazon1m$Nume)
- note$Amazon1norm<-round((note$Amazon1- mean(note$Amazon1))/sd(note$Amazon1),2)
- note$Amazon1norm
- note$Amazon1type<-ifelse(note$Amazon1norm<0, "sub medie", "peste medie")
- note$Amazon1type
- note<-note[order(note$Amazon1type),]
- View(note)
- note
- grafic4<-ggplot(note, aes(x=Initiale, y=note$Amazon1norm, label=note$Amazon1norm))+
- geom_bar(stat="identity", aes(fill=note$Amazon1type), width = 0.5)+
- scale_fill_manual(name="Amazon 1",
- labels=c("peste medie", "sub medie"),
- values=c("sub medie"="red", "peste medie"="green"))+
- labs(subtitle="Abaterie fata de medie Amazon 0",
- title="Amazon 1")
- plot(grafic4)
- theme_set(theme_classic())
- grafic5<-ggplot(note, aes(x=Microsoft0, xend=Microsoft1, y=Initiale, group=Initiale)) +
- geom_dumbbell(color="red",
- size=0.5,
- colour_xend = "blue") +
- labs(x="Note",
- y="Nume",
- title="Microsoft 0 vs Microsoft 1")
- plot(grafic5)
- grafic6<-ggplot(note, aes(x=Amazon0, xend=Amazon1, y=Initiale, group=Initiale)) +
- geom_dumbbell(color="red",
- size=0.5,
- colour_xend = "blue") +
- labs(x="Note",
- y="Nume",
- title="Amazon 0 vs Amazon 1")
- plot(grafic6)
- preturi<-read.csv("MSFT.csv")
- View(preturi)
- preturi<-na.omit(preturi)
- stat<-summary(preturi[-1])
- stat
- output = function() {
- fisier.input = choose.files(caption = "Selectie fisier de date",
- filters = matrix(
- data = c("Fisiere csv", "*.csv"),
- nrow = 1,
- ncol = 2
- ))
- tabel.date = read.csv(file = fisier.input, row.names = 1)
- tabel.indicatori = sapply(
- X = tabel.date,
- FUN = function(coloana) {
- if (is.numeric(coloana)) {
- f_media = mean(x = coloana)
- f_mediana = median(x = coloana)
- f_std = sd(x = coloana)
- f_cuart = quantile(x= coloana , c(.25, .75))
- f_apl = moments::kurtosis(x = coloana)
- f_sim = moments::skewness(x = coloana)
- return(
- c(
- Media = f_media,
- Mediana = f_mediana,
- Std = f_std,
- Cuartile = f_cuart,
- Simetria = f_sim,
- Aplatizarea = f_apl
- )
- )
- }
- }
- )
- print(tabel.indicatori)
- write.csv(tabel.indicatori,paste("Statistici.csv",sep = "_"))
- grid.arrange(tableGrob(round(as.matrix(tabel.indicatori),2)))
- }
- output()
- library(dplyr)
- library(skimr)
- skim(preturi)
- library(DataExplorer)
- library(ggplot2)
- DataExplorer::create_report(preturi[,-1])
- library(xts)
- library(zoo)
- library(PerformanceAnalytics)
- View(preturi)
- st<-xts(preturi[,-1], order.by = as.Date(preturi[,1],"%d-%m-%y"))
- View(st)
- summary(st)
- library(sfsmisc)
- chart.Boxplot(st[,1], main="Boxplot pret Microsoft", colorset = rich10equal)
- chart.Boxplot(st[,2], main="Boxplot pret Amazon", colorset = rich10equal)
- chart.Boxplot(st[,3], main="Boxplot pret S&P500", colorset = rich10equal)
- chart.Histogram(st[,1], main="Histograma Microsoft", colorset=rich12equal)
- chart.Histogram(st[,2], main="Histograma Amazon", colorset=rich12equal)
- chart.Histogram(st[,3], main="Histograma S&P500", colorset=rich12equal)
- MSFT<-Return.calculate(st[,1], method = "discrete")
- RMSFT<-MSFT[-1]
- plot(RMSFT)
- plot(st$Microsoft)
- AMZ<-Return.calculate(st[,2], method = "discrete")
- RAMZ<-AMZ[-1]
- plot(RAMZ)
- plot(st$Amazon)
- RSP<-Return.calculate(st[,3], method = "discrete")
- RSP<-RSP[-1]
- plot(RSP)
- plot(st$S.P.500)
- Ractiv<-Return.calculate(st[,4], method="discrete")
- Ractiv<-Ractiv[-1]
- plot(Ractiv)
- plot(st$Activ)
- chart.Boxplot(RMSFT, main="Boxplot rentabilitate Microsoft", colorset = rich10equal)
- chart.Boxplot(RAMZ, main="Boxplot rentabilitate Amazon", colorset = rich10equal)
- chart.Boxplot(RSP, main="Boxplot rentabilitate S&P 500", colorset = rich10equal)
- chart.Boxplot(Ractiv,main="Boxplot rentabilitate Activ", colorset = rich6equal)
- chart.Histogram(RMSFT, main="Histograma Rentabilitatii Microsoft", colorset=rich6equal,methods = c("add.density","add.normal","add.risk"))
- chart.Histogram(RAMZ, main="Histograma Rentabilitatii Amazon", colorset=rich8equal,methods = c("add.density","add.normal","add.risk"))
- chart.Histogram(RSP, main="Histograma Rentabilitatii S&P 500", colorset=rich6equal,methods = c("add.density","add.normal","add.risk"))
- chart.Histogram(Ractiv, main="Histograma Rentabilitatii Activ", colorset=rich6equal,methods = c("add.density","add.normal","add.risk"))
- rentab<-data.frame(RMSFT, RAMZ, RSP)
- chart.Correlation(rentab, histogram=T)
- chart.Drawdown(a,colorset=rich10equal, legend.loc="bottomleft")
- chart.RollingPerformance(RMSFT, Rf=0, colorset=tim8equal, main="Performanta pe un an a actiunilor Microsoft",
- legend.loc = "topright")
- chart.RollingPerformance(RAMZ, Rf=0, colorset=tim8equal, main="Performanta pe un an a actiunilor Amazon",
- legend.loc = "topright")
- tol3qualitative=c("#4477AA", "#DDCC77", "#CC6677")
- chart.Drawdown(rentab, legend.loc="bottomleft", main="Rentabilitati negative", colorset = tol3qualitative)
- chart.RelativePerformance(RMSFT,RSP, colorset="lawngreen", main="Perfomanta Microsoft/S&P 500",
- legend.loc = "topright")
- chart.RelativePerformance(RAMZ,RSP, colorset="lawngreen", main="Perfomanta Amazon/S&P 500",
- legend.loc = "topright")
- chart.RelativePerformance(rentab[,1:2],rentab[,3], colorset=tol3qualitative, main="Perfomanta Microsoft, Amazon/S&P 500",
- legend.loc = "topright")
- st2<-merge.zoo(RMSFT, RAMZ, RSP, Ractiv)
- st2<-na.omit(st2)
- View(st2)
- Rmedii<-colMeans(st2)
- Rmedii
- mcov<-cov(st2)
- mcov
- table.Stats(st2[,1:3],ci=0.95, digits = 4)
- SharpeRatio(st[,1:3], Rf=0, p=0.95, FUN = c("StdDev"))
- st3<-CalculateReturns(st)
- View(st3)
- st3<-na.omit(st3)
- summary(st3)
- rentab_medie=colMeans(st3)
- rentab_medie
- charts.PerformanceSummary(st3[,1:3], Rf=st3[,4], methods = "StdDev",main="Performanta actiunilor si a S&P 500 fata de US Bond",colorset=tol3qualitative,
- legend.loc = "topleft")
- t(table.SpecificRisk(st3[,1:2],Rb=st3[,3], Rf=st3[,4]))
- chart.Correlation(st3, histogram = T)
- library("forecast")
- library(tseries)
- library(aTSA)
- monthplot(st3[,1],col="#7cbb00", main="Sezonalitatea pentru seria de timp Microsoft")
- monthplot(st3[,2],col="#ff9900", main="sSezonalitatea pentru seria de timp Amazon")
- adf.test(st3[,1])
- adf.test(st3[,2])
- pp.test(st3[,1])
- pp.test(st3[,2])
- chart.Regression(st3[,1,drop=FALSE],st3[,3,drop=FALSE], Rf=0, fit=c("linear"),col="#7cbb00",main="Microsoft")
- table.SFM(Ra=st3[,1,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=0,digits=4)
- chart.Regression(st3[,2,drop=FALSE],st3[,3,drop=FALSE], Rf=0, fit=c("linear"),col="#ff9900",main="Amazon")
- table.SFM(Ra=st3[,2,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=0,digits=4)
- table.SFM(Ra=st3[,1,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=st3[,4,drop=F],digits=4)
- chart.Regression(st3[,1,drop=FALSE],st3[,3,drop=FALSE], Rf=st3[,4,drop=F],excess.returns = TRUE, fit=c("linear"),col="#7cbb00")
- table.CAPM(Ra=st3[,1,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=st3[,4,drop=F],scale=248, digits=4)
- CAPM.beta(Ra=st3[,1,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=st3[,4,drop=F])
- MSFT_CAPM=mean(st3[,4])+(CAPM.beta(Ra=st3[,1,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=st3[,4,drop=F]))*mean(st3[,3]-st3[,4])
- MSFT_CAPM
- View(st3)
- table.SFM(Ra=st3[,2,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=st3[,4,drop=F],digits=4)
- chart.Regression(st3[,2,drop=FALSE],st3[,3,drop=FALSE], Rf=st3[,4,drop=F],excess.returns = TRUE, fit=c("linear"),col="#ff9900")
- table.CAPM(Ra=st3[,2,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=st3[,4,drop=F],scale=248, digits=4)
- CAPM.beta(Ra=st3[,2,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=st3[,4,drop=F])
- AMZ_CAPM=mean(st3[,4])+(CAPM.beta(Ra=st3[,2,drop=FALSE], Rb=st3[,3,drop=FALSE],Rf=st3[,4,drop=F]))*mean(st3[,3]-st3[,4])
- AMZ_CAPM
- preturi<-read.csv("MSFT.csv")
- View(preturi)
- preturi=na.omit(preturi)
- fix(preturi)
- attach(preturi)
- library(xts)
- library(zoo)
- library(PerformanceAnalytics)
- stocks<-xts(preturi[,-1], order.by = as.Date(preturi[,1],"%d-%m-%y"))
- stocks
- stocks3=CalculateReturns(stocks)
- View(stocks3)
- stocks3=na.omit(stocks3)
- colnames(stocks3)=c("RMSFT", "RAMZ", "RS.P500", "Ractiv")
- summary(stocks3)
- a=0.88
- b=0.88
- l=2.25
- val_RMSFT=ifelse(stocks3[,1]>=0,(stocks3[,1])^a,(-l)*((-stocks3[,1])^b))
- mean(val_RMSFT)
- mean(stocks3[,1])
- val_RAMZ=ifelse(stocks3[,2]>=0,(stocks3[,2])^a,(-l)*((-stocks3[,2])^b))
- mean(val_RAMZ)
- mean(stocks3[,2])
- MSFT1=merge.zoo(stocks3[,1], val_RMSFT)
- View(MSFT1)
- colnames(MSFT1)=c("RMSFT","Val_RMSFT")
- View(MSFT1)
- summary(MSFT1)
- AMZ1=merge.zoo(stocks3[,2], val_RAMZ)
- View(AMZ1)
- colnames(AMZ1)=c("RAMZ","Val_RAMZ")
- View(AMZ1)
- summary(AMZ1)
- plot(MSFT1)
- plot(AMZ1)
- plot(x=MSFT1[,1], y=MSFT1[,2],xlab="Rentabilitate MSFT", ylab="Valoare MSFT", main="Functia valoare pentru MSFT")
- obiect1=as.data.frame(MSFT1)
- View(obiect1)
- obiect1=transform(obiect1, Dates=as.Date(rownames(obiect1)))
- View(obiect1)
- ord=obiect1[order(obiect1[,1]),]
- ord=ord[,-3]
- plot(ord,type="l",main="Functia valoare pentru Microsoft", col="#7cbb00")
- library(ggplot2)
- ggplot() +geom_line(data = ord, aes(x=ord[,1],y=ord[,2]),color="#7cbb00")
- obiect2=as.data.frame(AMZ1)
- View(obiect2)
- obiect2=transform(obiect2, Dates=as.Date(rownames(obiect2)))
- View(obiect2)
- ord=obiect2[order(obiect1[,1]),]
- ord=ord[,-3]
- plot(ord,type="l",main="Functia valoare pentru Amazon", col="#ff9900")
- library(ggplot2)
- ggplot() +geom_line(data = ord, aes(x=ord[,1],y=ord[,2]),color="#ff9900")
- Return.cumulative(MSFT1[,1],geometric=T)
- val2_MSFT=0*(Return.cumulative(MSFT1[,1],geometric=T))
- val2_MSFT
- TVM_MSFT=200+val2_MSFT
- TVM_MSFT
- Return.cumulative(AMZ1[,1],geometric=T)
- val2_AMZ=300*(Return.cumulative(AMZ1[,1],geometric=T))
- val2_AMZ
- TVM_AMZ=200+val2_AMZ
- TVM_AMZ
- v_TVM_MSFT=TVM_MSFT^0.88
- v_TVM_MSFT
- v_TVM_AMZ=TVM_AMZ^0.88
- v_TVM_AMZ
- Val_1<-0^0.88
- Val_2<-300^0.88
- Val_1
- Val_2
- p=5/10
- k<-10/10
- pp<-(p^0.65)/(p^0.65 + (1-p)^0.65)
- pp
- pq<-(k^0.65)/(k^0.65 + (1-k)^0.65)
- pq
- Val_pr_0<-pp*Val_1+pq*Val_2
- Val_pr_0
- Val_tvm_MSFT_t2 = 94.25654935
- Val_tvm_AMZ_t2 = 99.56707449
- Val_pr_0<-pp*Val_tvm_MSFT_t2+pq*Val_tvm_AMZ_t2
- Val_pr_0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement