楼主: tianjixuetu
17501 13

[程序分享] 用R语言计算沪深300指数的收益率 [推广有奖]

已卖:4218份资源

教授

53%

还不是VIP/贵宾

-

TA的文库  其他...

投资理财书籍

威望
0
论坛币
9679 个
通用积分
38.8509
学术水平
67 点
热心指数
67 点
信用等级
61 点
经验
1202 点
帖子
711
精华
3
在线时间
1570 小时
注册时间
2009-12-16
最后登录
2025-10-27

楼主
tianjixuetu 在职认证  发表于 2016-10-2 15:30:23 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
#用R语言计算沪深300指数的算术收益率
#数据处理,首先清除其他变量,并设定工作空间
rm(list=ls())
setwd("F:/R语言工作空间")
#把沪深300指数数据放入到工作空间文件夹中
#读取数据
hs=read.csv("hs300.csv",sep=",")
#查看数据.对数据整理,并计算
head(hs)
tail(hs)
close=hs[,2]
tail(close)
close=xts(close,order.by=as.Date(hs[,1]))
head(close,7)
close1=lag(close,1)
head(close1)
calclose=merge(close,close1)
head(calclose)
simplerate<-(close-close1)/close1
names(simplerate)="simplerate"
head(simplerate)
calrate=merge(calclose,simplerate)
head(calrate)
#使用R包进行计算
#加载quantmod、TTR包和PerformanceAnalytics包进行计算
library(quantmod)
library(PerformanceAnalytics)
library(TTR)
rate=periodReturn(close,period="daily",type="arithmetic")
head(rate)
rate2=periodReturn(close,period="daily",type="log")
head(rate2)
#ROc(X,n=1,type="discret"),默认计算的是连续收益率
rate3=ROC(close)
rate4=ROC(close,n=1,type="discrete")
#calculateReturns(price,method="discrete")
rate5=CalculateReturns(close)
head(rate5)
转载自我的博客:http://blog.sina.com.cn/s/blog_659ec1310102wnbs.html
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:沪深300指数 沪深300 R语言 收益率 Simpler 收益率 沪深

已有 1 人评分经验 论坛币 收起 理由
李会超 + 80 + 20 精彩帖子

总评分: 经验 + 80  论坛币 + 20   查看全部评分

今天,我持续不断地改进自己,在各方面,我会越来越好!

沙发
jgchen1966 发表于 2016-10-2 20:36:17
太繁琐!!!一个收益就如此多行程序!!2400支股票从1993-2016年的月度(或周)收益率及近二十种技术指标,又如何快速完成!!!只用楼主相同行数,即可完成!!!单核,不到一小时算完!!

藤椅
tianjixuetu 在职认证  发表于 2016-10-3 13:21:50
求分享

板凳
tianjixuetu 在职认证  发表于 2016-10-3 13:22:11
jgchen1966 发表于 2016-10-2 20:36
太繁琐!!!一个收益就如此多行程序!!2400支股票从1993-2016年的月度(或周)收益率及近二十种技术指标, ...
分享,让学习下呗

报纸
jgchen1966 发表于 2016-10-3 21:11:24
提供一个55个行业指数的2016年01月04日至2016年07月15日 的日交易计算实例数据集,见附件:ss55TTR2016.txt 。其中ss300为沪深300,其他为行业指数。。变量中,Rl 为日对数收益率,其它由R package TTR 中技术指标计算函数,含义与它的相同。。
  计算用工具与程序:其实,只要学完会 Hadley Wickham 的几个数据分析packages ,很容易编写,不值一提,就不烦列了!!!

ss55TTR2016.txt
下载链接: https://bbs.pinggu.org/a-2110648.html

1.88 MB

需要: 5 个论坛币  [购买]

地板
jgchen1966 发表于 2016-10-3 21:15:35
tianjixuetu 发表于 2016-10-3 13:22
分享,让学习下呗
设5个论坛币,仅仅希望真有兴趣者瞧一瞧!!见谅。。。。。

7
jgchen1966 发表于 2016-10-3 21:25:14
提供一个55个行业指数的2016年01月04日至2016年07月15日 的日交易计算实例数据集,见附件:ss55TTR2016.txt 。其中ss300为沪深300,其他为行业指数。。变量中,Rl 为日对数收益率,其它由R package TTR 中技术指标函数计算,含义与它的相同。为个人需要,略作修改。只供示范,无实际使用价值
  计算用工具与程序:其实,只要学完会 Hadley Wickham 的几个数据分析packages ,很容易编写,不值一提,就不烦列了!!!
鹑居鷇食,鸟行无彰

8
tianjixuetu 在职认证  发表于 2016-10-3 22:57:50
jgchen1966 发表于 2016-10-3 21:25
提供一个55个行业指数的2016年01月04日至2016年07月15日 的日交易计算实例数据集,见附件:ss55TTR2016.txt ...
你的代码呢?不能光给数据哇

9
lqb1987 发表于 2016-10-5 13:57:05
既然hs[,2]是close,直接hs$pct <- hs[,2] / lag(hs[,2]) -1 不好么

10
故城2016 学生认证  发表于 2018-11-13 15:48:26
我也觉得  简单收益率的计算实在是繁琐
不妨对close价格用lag()函数 ,得到滞后一期数据,  再用-na.omit()消除na数据
已有 1 人评分学术水平 收起 理由
yahoocom + 1 观点有启发

总评分: 学术水平 + 1   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-21 22:02