CRAN
与其他语言丰富的IDE不同,R语言目前最常用的开发环境为RStudio,同样可以通过官网下载
注意:必须先下载安装R语言完成之后,再下载、配置RStudio哦!
安装完成之后,我们打开RStudio看一下界面设置
基本上界面划分为5个部分
Run
运行小伙伴们看懂英文很容易就上手啦,还有其他问题可以百度查一查哦!
重所周知,第三方包的安装是非常重要的,下面介绍两种方法安装
通过综合区Packages
下的install
可以很方便的安装
填入需要下载包的名字,便可自动下载
Tip1:下载多个包可以用逗号,
隔开
Tip2:官网镜像可能下载速度有点慢,可以切换到国内镜像下载
通过控制台输入代码下载
install.packages('package1','package2')
Tip:包名需要加引号''
下载完成之后,需要先调用包才能使用包中的函数,在控制台中使用library()
函数调用
现附上JQData链接
为了方便使用JQData的接口,小编将复杂的调用过程打包成了函数request
request <- function(method,list=FALSE,...){
'''
method:需要调用的数据函数
list:判断返回值是否为列表,如get_index_stocks需填TRUE以返回列表
其他参数在此后带参数名填写
'''
#加载包
library(httr)
library(readr)
library(rjson)
#获取调用凭证
url <- "https://dataapi.joinquant.com/apis"
body <- list(
method = "get_token",
mob = "181...", #手机号
pwd = "..." #密码
)
r <- POST(url, body = body, encode = "json")
token <- content(r)
body1 <- list(
method = method,
token = token,
...
)
r1 <- POST(url, body = body1, encode = 'json')
if(method == 'get_fund_info'){
result = fromJSON(content(r1))
return(result)
}else{
if(list==F){
df <- data.frame(read_csv(content(r1)),check.names = T)
return(df)
}else{
l <- strsplit(content(r1),'\n')
return(l)
}
}
}
定义完成之后我们就可以方便地调用JQData的api啦!
df <-request('get_all_securities',code='stock',date='2019-01-05')
rbind(head(df),tail(df)) # 查看数据首尾
df <- request('get_security_info',code='000001.XSHE')
df
ls <- request('get_index_stocks',code='000300.XSHG',list = TRUE)
ls
ls <- request('get_margincash_stocks',list = TRUE)
ls
ls <- request('get_marginsec_stocks',list = TRUE)
ls
df <- request('get_locked_shares',code="600000.XSHG",date="2010-09-29",end_date="2018-09-29")
df
解释
df <- request('get_index_weights',code="000300.XSHG",date="2019-02-02")
rbind(head(df),tail(df))
df <- request('get_industries',code="sw_l3")
rbind(head(df),tail(df))
行业代码
df <- request('get_industry',code="000001.XSHE")
df
ls <- request('get_industry_stocks',code="HY007",list=TRUE)
ls
df <- request('get_concepts')
rbind(head(df),tail(df))
ls <- request('get_concept_stocks',code='GN001',list=T)
ls
ls <- request('get_trade_days',date='2018-01-01',end_date='2019-02-02',list=T)
ls
ls <- request('get_all_trade_days',list=T)
ls
df <- request('get_mtss',code='000001.XSHE',date='2019-01-01',end_date='2019-02-02')
rbind(head(df),tail(df))
df <- request('get_money_flow',code='000001.XSHE',date='2019-01-01',end_date='2019-02-02')
rbind(head(df),tail(df))
df <- request('get_billboard_list',code='000001.XSHE',date='2016-08-01',end_date='2019-02-02')
bind(head(df),tail(df))
ls <- request('get_future_contracts',code='AU',date='2019-01-01',list=T)
ls
ls <- request('get_dominant_future',code='AU',date='2019-01-01',list=T)
ls
ls <- request('get_fund_info',code='519223.OF',date='2018-12-01')
返回:
df <- request('get_current_tick',code='000001.XSHE')
df
df <- request('get_extras',code='000001.XSHE',date='2019-01-01',end_date='2019-02-01')
rbind(head(df),tail(df))
返回值
df <- request('get_price',code='000001.XSHE',count=10,unit='1d',end_date='2019-02-01')
df
返回值
df <- request('get_ticks',code='000001.XSHE',count=15,end_date='2019-02-01')
head(df)
获取因子值的 API,点击查看因子列表
参数
df <- request('get_factor_values',code='000001.XSHE',date='2019-01-20',end_date='2019-02-07',columns='net_profit_ratio,cfo_to_ev')
df
run_query api 是模拟了JQDataSDK run_query方法获取财务、宏观、期权等数据
可查询的数据内容请查看JQData文档
参数:
database . tablename
如finance.STK_XR_XD
id,company_id
,columns不能有空格等特殊字符report_date#>=#2006-12-01&
report_date#<=#2006-12-31
,条件内部#号分隔,格式: column #
判断符 # value
,多个条件使用&
号分隔,表示and
,conditions不能有空格等特殊字符df <- request('run_query',table='finance.STK_XR_XD',columns='company_id,company_name,code,report_date',
conditions='report_date#=#2006-12-01',count=10)
df
request('get_query_count',list=T)
本社区仅针对特定人员开放
查看需注册登录并通过风险意识测评
5秒后跳转登录页面...