最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

基于R語言股票市場收益的統(tǒng)計可視化分析|附代碼數(shù)據(jù)

2023-02-07 23:42 作者:拓端tecdat  | 我要投稿

全文鏈接:http://tecdat.cn/?p=16453?

最近我們被客戶要求撰寫關(guān)于股票市場的研究報告,包括一些圖形和統(tǒng)計輸出。

金融市場上最重要的任務(wù)之一就是分析各種投資的歷史收益

要執(zhí)行此分析,我們需要資產(chǎn)的歷史數(shù)據(jù)。數(shù)據(jù)提供者很多,有些是免費的,大多數(shù)是付費的。在本文中,我們將使用Yahoo金融網(wǎng)站上的數(shù)據(jù)。

在這篇文章中,我們將:

  1. 下載收盤價

  2. 計算收益率

  3. 計算收益的均值和標準差

讓我們先加載庫。

library(tidyquant)library(timetk)

我們將獲得Netflix價格的收盤價。

netflix?<-?tq_get("NFLX",???????????????????? ??????????????????from?=?'2009-01-01', ??????????????????to?=?"2018-03-01", ??????????????????get?=?"stock.prices")

接下來,我們將繪制Netflix的調(diào)整后收盤價。

netflix?%>% ??ggplot(aes(x?=?date,?y?=?adjusted))?+ ??geom_line()?+ ??ggtitle("Netflix?since?2009")?+ ??labs(x?=?"Date",?"Price")?+ ??scale_x_date(date_breaks?=?"years",?date_labels?=?"%Y")?+ ??labs(x?=?"Date",?y?=?"Adjusted?Price")?+ ??theme_bw()

計算單個股票的每日和每月收益率

一旦我們從Yahoo Finance下載了收盤價,下一步便是計算收益。我們將再次使用tidyquant包進行計算。我們已經(jīng)在上面下載了Netflix的價格數(shù)據(jù),如果您還沒有下載,請參見上面的部分。

#?計算每日收益netflix_daily_returns?<-?netflix?%>%??tq_transmute(select?=?adjusted,??????????這指定要選擇的列 ???????????????mutate_fun?=?periodReturn,???#?這指定如何處理該列???????????????period?=?"daily",??????#?此參數(shù)計算每日收益???????????????col_rename?=?"nflx_returns")?#?重命名列#計算每月收益netflix_monthly_returns?<-?netflix?%>%??tq_transmute(select?=?adjusted, ???????????????mutate_fun?=?periodReturn, ???????????????period?=?"monthly",??????#?此參數(shù)計算每月收益???????????????col_rename?=?"nflx_returns")

繪制Netflix的每日和每月收益圖表

#?我們將使用折線圖獲取每日收益 ? ??ggplot(aes(x?=?date,?y?=?nflx_returns))?+ ??geom_line()?+ ??theme_classic()?+

查看Netflix的每日收益圖表后,我們可以得出結(jié)論,收益波動很大,并且股票在任何一天都可以波動+/- 5%。為了了解收益率的分布,我們可以繪制直方圖。

netflix_daily_returns?%>% ??ggplot(aes(x?=?nflx_returns))?+ ??geom_histogram(binwidth?=?0.015)?+ ??theme_classic()?+

接下來,我們可以繪制自2009年以來Netflix的月度收益率。我們使用條形圖來繪制數(shù)據(jù)。

#?繪制Netflix的月度收益圖表。?使用條形圖??ggplot(aes(x?=?date,?y?=?nflx_returns))?+ ??geom_bar(stat?=?"identity")?+ ??theme_classic()?+

計算Netflix股票的累計收益

繪制每日和每月收益對了解投資的每日和每月波動很有用。要計算投資的增長,換句話說,計算投資的總收益,我們需要計算該投資的累積收益。要計算累積收益,我們將使用??cumprod()??函數(shù)。

? ??mutate(cr?=?cumprod(1?+?nflx_returns))?%>%??????#?使用cumprod函數(shù)? ??ggplot(aes(x?=?date,?y?=?cumulative_returns))?+ ??geom_line()?+ ??theme_classic()?+

點擊標題查閱往期內(nèi)容

R語言ARMA GARCH COPULA模型擬合股票收益率時間序列和模擬可視化

左右滑動查看更多

01

02

03

04

該圖表顯示了自2009年以來Netflix的累計收益。有了事后分析的力量,?自2009年以來,_可以_用1美元的投資賺取85美元。但據(jù)我們所知,說起來容易做起來難。在10年左右的時間里,在Qwickster慘敗期間投資損失了其價值的50%。在這段時期內(nèi),很少有投資者能夠堅持投資。

??ggplot(aes(x?=?date,?y?=?cumulative_returns))?+ ??geom_line()?+ ??theme_classic()?+

我們可以直觀地看到,月收益表比日圖表要平滑得多。

多只股票

下載多只股票的股票市場數(shù)據(jù)。

#將我們的股票代碼設(shè)置為變量tickers?<-?c("FB",?"AMZN",?"AAPL",?"NFLX",?"GOOG")?#?下載股價數(shù)據(jù)multpl_stocks?<-?tq_get(tickers,

繪制多只股票的股價圖

接下來,我們將繪制多只股票的價格圖表

multpl_stocks?%>%??ggplot(aes(x?=?date,?y?=?adjusted,

這不是我們預(yù)期的結(jié)果。由于這些股票具有巨大的價格差異(FB低于165,AMZN高于1950),因此它們的規(guī)模不同。我們可以通過按各自的y比例繪制股票來克服此問題。

? ??facet_wrap(~symbol,?scales?=?"free_y")?+??#?facet_wrap用于制作不同的頁面??theme_classic()?+

計算多只股票的收益

計算多只股票的收益與單只股票一樣容易。這里只需要傳遞一個附加的參數(shù)。我們需要使用參數(shù)??group_by(symbol)??來計算單個股票的收益。

#計算多只股票的每日收益????????????????????????????tq_transmute(select?=?adjusted, ???????????????mutate_fun?=?periodReturn, ???????????????period?=?'daily', ???????????????col_rename?=?'returns')#計算多只股票的月收益??????????????????????????????tq_transmute(select?=?adjusted, ???????????????mutate_fun?=?periodReturn, ???????????????period?=?'monthly', ???????????????col_rename?=?'returns')

繪制多只股票的收益圖表

一旦有了收益計算,就可以在圖表上繪制收益。

multpl_stock_daily_returns?%>% ??ggplot(aes(x?=?date,?y?=?returns))?+ ??geom_line()?+ ??geom_hline(yintercept?=?0)?+

multpl_stock_monthly_returns?%>% ??ggplot(aes(x?=?date,?y?=?return? ??scale_fill_brewer(palette?=?"Set1",???#?我們會給他們不同的顏色,而不是黑色

在FAANG股票中,蘋果的波動最小,而Facebook和Netflix的波動最大。對于他們從事的業(yè)務(wù)而言,這是顯而易見的。Apple是一家穩(wěn)定的公司,擁有穩(wěn)定的現(xiàn)金流量。它的產(chǎn)品受到數(shù)百萬人的喜愛和使用,他們對Apple擁有極大的忠誠度。Netflix和Facebook也是令人難以置信的業(yè)務(wù),但它們處于高增長階段,任何問題(收益或用戶增長下降)都可能對股票產(chǎn)生重大影響。

計算多只股票的累計收益

通常,我們希望看到過去哪種投資產(chǎn)生了最佳效果。為此,我們可以計算累積結(jié)果。下面我們比較自2013年以來所有FAANG股票的投資結(jié)果。哪項是自2013年以來最好的投資?

multpl_stock_monthly_returns?%>% ??mutate(returns?e_returns?=?cr?-?1)?%>% ??ggplot(aes(x?=?date,?y?=?cumulative_returns,?color?=?symbol))?+ ??geom_line()?+ ??labs(x?=?"Date"

毫不奇怪,Netflix自2013年以來獲得了最高的收益。亞馬遜和Facebook位居第二和第三。

統(tǒng)計數(shù)據(jù)

計算單個股票的均值,標準差

我們已經(jīng)有了Netflix的每日和每月收益數(shù)據(jù)?,F(xiàn)在我們將計算收益的每日和每月平均數(shù)和標準差。?為此,我們將使用??mean()??和??sd()?函數(shù)。

#?計算平均值 ? ??.[[1]]?%>%??mean(na.rm?=?TRUE) nflx_monthly_mean_ret?<-?netfl?turns)?%>%??.[[1]]?%>%??mean(na.rm?=?TRUE) #?計算標準差 nflx_daily_sd_ret?<-?netflirns)?%>%??.[[1]]?%>%??sd() nflx_monthly_sd_ret?<-?netflix_rns)?%>%??.[[1]]?%>%??sd() ?nflx_stat##?#?A?tibble:?2?x?3##???period?????mean?????sd##???<chr>?????<dbl>??<dbl>##?1?Daily???0.00240?0.0337##?2?Monthly?0.0535??0.176

我們可以看到Netflix的平均每日收益為0.2%,標準差為3.3%。它的月平均回報率是5.2%和17%標準差。該數(shù)據(jù)是自2009年以來的整個時期。如果我們要計算每年的均值和標準差,該怎么辦。我們可以通過按年份對Netflix收益數(shù)據(jù)進行分組并執(zhí)行計算來進行計算。

netflix??%>% ??summarise(Monthly_Mean_Returns?=?mean(nflx_returns), ????????????MOnthly_Standard_Deviation?=?sd(nflx_returns)##?#?A?tibble:?10?x?3##?????year?Monthly_Mean_Returns?MOnthly_Standard_Deviation##????<dbl>????????????????<dbl>??????????????????????<dbl>##??1??2009??????????????0.0566??????????????????????0.0987##??2??2010??????????????0.110???????????????????????0.142?##??3??2011?????????????-0.0492??????????????????????0.209?##??4??2012??????????????0.0562??????????????????????0.289?##??5??2013??????????????0.137???????????????????????0.216?##??6??2014??????????????0.00248?????????????????????0.140?##??7??2015??????????????0.0827??????????????????????0.148?##??8??2016??????????????0.0138??????????????????????0.126?##??9??2017??????????????0.0401??????????????????????0.0815##?10??2018??????????????0.243???????????????????????0.233

我們還可以繪制結(jié)果更好地理解。

netflix_monthly_returns?%>% ??mutate(year?=?rns,?Standard_Deviation,?keyistic))?+ ??geom_bar(stat?=?"identity",?position?=?"dodge")?+ ??scale_y_continuous(b?)?+ ??theme_bw()?+

我們可以看到,自2009年以來,每月收益和標準差波動很大。2011年,平均每月收益為-5%。

計算多只股票的均值,標準差

接下來,我們可以計算多只股票的均值和標準差。

??group_by(symbol)?%>%??summarise(mean?=?mean(returns), ????????????sd?=?sd(returns))##?#?A?tibble:?5?x?3##???symbol?????mean?????sd##???<chr>?????<dbl>??<dbl>##?1?AAPL???0.00100??0.0153##?2?AMZN???0.00153??0.0183##?3?FB?????0.00162??0.0202##?4?GOOG???0.000962?0.0141##?5?NFLX???0.00282??0.0300group_by(symbol)?%>%??summarise(mean?=?mean(returns), ????????????sd?=?sd(returns))##?#?A?tibble:?5?x?3##???symbol???mean?????sd##???<chr>???<dbl>??<dbl>##?1?AAPL???0.0213?0.0725##?2?AMZN???0.0320?0.0800##?3?FB?????0.0339?0.0900##?4?GOOG???0.0198?0.0568##?5?NFLX???0.0614?0.157

計算收益的年均值和標準差。

???%>%??group_by(symbol,?year)?%>%??summarise(mean?=?mean(returns), ????????????sd?=?sd(returns))##?#?A?tibble:?30?x?4##?#?Groups:???symbol?[?]##????symbol??year??????mean?????sd##????<chr>??<dbl>?????<dbl>??<dbl>##??1?AAPL????2013??0.0210???0.0954##??2?AAPL????2014??0.0373???0.0723##??3?AAPL????2015?-0.000736?0.0629##??4?AAPL????2016??0.0125???0.0752##??5?AAPL????2017??0.0352???0.0616##??6?AAPL????2018??0.0288???0.0557##??7?AMZN????2013??0.0391???0.0660##??8?AMZN????2014?-0.0184???0.0706##??9?AMZN????2015??0.0706???0.0931##?10?AMZN????2016??0.0114???0.0761##?#?...?with?20?more?rows

我們還可以繪制此統(tǒng)計數(shù)據(jù)。

multpl_stock_monthly_returns?%>% ??mutate(year?=?year(date))?%>% ??group_by(symbol,?yea?s?=?seq(-0.1,0.4,0.02), ?????????????????????labels?=?scales::percent)?+ ??scale_x_continuous(breaks?=?seq(2009,2018,1))?+ ??labs(x?=?"Year",?y?=?Stocks")?+ ??ggtitle

multpl_stock_monthly_returns?%>% ??mutate(year?=?year(date))?%>%? ??ggplot(aes(x?=?year,?y?=?sd,?fill?=?symbol))?+ ??geom_bar(stat?=?"identity",?position?=?"dodge",?width?=?0.7)?+ ??scale_y_continuous(breaks?=?seq(-0.1,0.4,0.02), ?????????????????????labels?=?scales::p? ??scale_fill_brewer(palette?=?"Set1",

計算多只股票的協(xié)方差和相關(guān)性

另一個重要的統(tǒng)計計算是股票的相關(guān)性和協(xié)方差。為了計算這些統(tǒng)計數(shù)據(jù),我們需要修改數(shù)據(jù)。我們將其轉(zhuǎn)換為xts對象。

協(xié)方差表

#計算協(xié)方差??tk_xts(silent?=?TRUE)?%>% ??cov()##???????????????AAPL????????AMZN??????????FB?????????GOOG??????????NFLX##?AAPL??5.254736e-03?0.001488462?0.000699818?0.0007420307?-1.528193e-05##?AMZN??1.488462e-03?0.006399439?0.001418561?0.0028531565??4.754894e-03##?FB????6.998180e-04?0.001418561?0.008091594?0.0013566480??3.458228e-03##?GOOG??7.420307e-04?0.002853157?0.001356648?0.0032287790??3.529245e-03##?NFLX?-1.528193e-05?0.004754894?0.003458228?0.0035292451??2.464202e-02

相關(guān)表

#?計算相關(guān)系數(shù)?%>% ??tk_xts(silent?=?TRUE)?%>% ??cor()##??????????????AAPL??????AMZN????????FB??????GOOG?????????NFLX##?AAPL??1.000000000?0.2566795?0.1073230?0.1801471?-0.001342964##?AMZN??0.256679539?1.0000000?0.1971334?0.6276759??0.378644485##?FB????0.107322952?0.1971334?1.0000000?0.2654184??0.244905437##?GOOG??0.180147089?0.6276759?0.2654184?1.0000000??0.395662114##?NFLX?-0.001342964?0.3786445?0.2449054?0.3956621??1.000000000

我們可以使用corrplot()?包來繪制相關(guān)矩陣圖。

##?corrplot?0.84?loaded??cor()?%>%??corrplot()

點擊文末?“閱讀原文”

獲取全文完整資料。

本文選自《基于R語言股票市場收益的統(tǒng)計可視化分析》。

點擊標題查閱往期內(nèi)容

ARMA-GARCH-COPULA模型和金融時間序列案例
時間序列分析:ARIMA GARCH模型分析股票價格數(shù)據(jù)
GJR-GARCH和GARCH波動率預(yù)測普爾指數(shù)時間序列和Mincer Zarnowitz回歸、DM檢驗、JB檢驗
【視頻】時間序列分析:ARIMA-ARCH / GARCH模型分析股票價格
時間序列GARCH模型分析股市波動率
PYTHON用GARCH、離散隨機波動率模型DSV模擬估計股票收益時間序列與蒙特卡洛可視化
極值理論 EVT、POT超閾值、GARCH 模型分析股票指數(shù)VaR、條件CVaR:多元化投資組合預(yù)測風險測度分析
Garch波動率預(yù)測的區(qū)制轉(zhuǎn)移交易策略
金融時間序列模型ARIMA 和GARCH 在股票市場預(yù)測應(yīng)用
時間序列分析模型:ARIMA-ARCH / GARCH模型分析股票價格
R語言風險價值:ARIMA,GARCH,Delta-normal法滾動估計VaR(Value at Risk)和回測分析股票數(shù)據(jù)
R語言GARCH建模常用軟件包比較、擬合標準普爾SP 500指數(shù)波動率時間序列和預(yù)測可視化
Python金融時間序列模型ARIMA 和GARCH 在股票市場預(yù)測應(yīng)用
MATLAB用GARCH模型對股票市場收益率時間序列波動的擬合與預(yù)測R語言GARCH-DCC模型和DCC(MVT)建模估計
Python 用ARIMA、GARCH模型預(yù)測分析股票市場收益率時間序列
R語言中的時間序列分析模型:ARIMA-ARCH / GARCH模型分析股票價格
R語言ARIMA-GARCH波動率模型預(yù)測股票市場蘋果公司日收益率時間序列
Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預(yù)測
R語言時間序列GARCH模型分析股市波動率
R語言ARMA-EGARCH模型、集成預(yù)測算法對SPX實際波動率進行預(yù)測
matlab實現(xiàn)MCMC的馬爾可夫轉(zhuǎn)換ARMA - GARCH模型估計
Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模擬進行股價預(yù)測
使用R語言對S&P500股票指數(shù)進行ARIMA + GARCH交易策略
R語言用多元ARMA,GARCH ,EWMA, ETS,隨機波動率SV模型對金融時間序列數(shù)據(jù)建模
R語言股票市場指數(shù):ARMA-GARCH模型和對數(shù)收益率數(shù)據(jù)探索性分析
R語言多元Copula GARCH 模型時間序列預(yù)測
R語言使用多元AR-GARCH模型衡量市場風險
R語言中的時間序列分析模型:ARIMA-ARCH / GARCH模型分析股票價格
R語言用Garch模型和回歸模型對股票價格分析
GARCH(1,1),MA以及歷史模擬法的VaR比較
matlab估計arma garch 條件均值和方差模型R語言POT超閾值模型和極值理論EVT分析


基于R語言股票市場收益的統(tǒng)計可視化分析|附代碼數(shù)據(jù)的評論 (共 條)

分享到微博請遵守國家法律
崇礼县| 陕西省| 乌鲁木齐县| 玛曲县| 谢通门县| 新田县| 浦江县| 巴林右旗| 蒙山县| 渝北区| 肃宁县| 沙坪坝区| 崇阳县| 靖安县| 措勤县| 兴宁市| 长顺县| 龙里县| 神池县| 鞍山市| 桦甸市| 栾城县| 怀来县| 灵武市| 临江市| 台安县| 呼图壁县| 景谷| 祁阳县| 和林格尔县| 扎兰屯市| 石棉县| 房产| 宜昌市| 军事| 青海省| 仙游县| 红桥区| 衡东县| 瓦房店市| 县级市|