经济学硕士,有r语言编程基础能进量化投资 r语言 网盘吗

&&&&量化投资以R语言为工具(&货号:)
邀请好友参加吧
版 次:页 数:字 数:印刷时间:日开 本:16开纸 张:胶版纸印 次:包 装:平装是否套装:否国际标准书号ISBN:2所属分类:&&&
下载免费当当读书APP
品味海量优质电子书,尊享优雅的阅读体验,只差手机下载一个当当读书APP
本商品暂无详情。
当当价:为商品的销售价,具体的成交价可能因会员使用优惠券、积分等发生变化,最终以订单结算页价格为准。
划线价:划线价格可能是图书封底定价、商品吊牌价、品牌专柜价或由品牌供应商提供的正品零售价(如厂商指导价、建议零售价等)或该商品曾经展示过的销售价等,由于地区、时间的差异化和市场行情波动,商品吊牌价、品牌专柜价等可能会与您购物时展示的不一致,该价格仅供您参考。
折扣:折扣指在划线价(图书定价、商品吊牌价、品牌专柜价、厂商指导价等)某一价格基础上计算出的优惠比例或优惠金额。如有疑问,您可在购买前联系客服咨询。
异常问题:如您发现活动商品销售价或促销信息有异常,请立即联系我们补正,以便您能顺利购物。
当当购物客户端手机端1元秒
当当读书客户端万本电子书免费读后使用快捷导航没有帐号?
各位好,今天我的题目是期权做市与高频交易,我之前是在美国从事个股期权的做市商。先介绍一下美国和国内期权的对比,国内的期权品种目前有三个。第一个是 2015 年 2 月 9 日上市的 50ETF 期权;第二个是今年 3 月 3 ...
基于用户生命周期的运营策略,最忌讳的就是一上来就对周期分段,然后谈每个阶段的运营策略是什么。在用户生命周期的运营策略设计中,是否有贯穿全周期的核心目标?有了这样的根本性目标,我们才有判断每一个运营活动 ...
昨晚,一家鲜为人知的创业公司所进行的ICO项目CoinDash突然停止,这家自我标榜为“社交交易平台”的区块链科技初创企业在ICO开始之后不久就遭受了黑客攻击。投资者原本秩序根据指示用以太币(ETH)进行支付,再将资 ...
量化投资是什么?技术指标通过编程就能赚钱了吗?电脑能够战胜人类的贪婪和恐惧,但控制电脑的不还是人类吗?对于普通投资者来说,有必要学习量化交易吗?“有效市场假说” (Efficient-market hypothesis) 认为,价 ...
模型校正是选择模型中的参数使得市场流动性强的交易价格 (市场价格) 和模型输出 (模型价格) 完全匹配或尽可能接近。完全匹配价格意味着消除套利机会。几乎所有的金融模型都有一些不能准确测量的参数。在最简单 Black ...
经济学家采用数学工具对经济现象进行分析通常被归于计量经济学范畴。长期以来,在计量经济学中使用的主要工具是回归分析,但迄今为回归分析并没有帮助经济学家对经济现象有过任何重大且深入的洞察。原因十分简单,对 ...
我终于跑赢了标准普尔 500 指数 10 个百分点!听起来可能不是很多,但是当我们处理的是大量流动性很高的资本时,对冲基金的利润就相当可观。更激进的做法还能得到更高的回报。这一切都始于我阅读了 Gur Huberman 的 ...
目前加密货币这个圈子可简要分为币圈和链圈,币圈专注于投资炒币,而链圈专注于区块链(blockchain)技术的创新发展。虽然币圈是高回报的利益驱动,但也正是他们的天使资金推动了这个领域的蓬勃发展。本文将使用“加 ...
1990年,深圳证券公司每天发放200个号,成千上万人一大早就去排队,希望自己能有入手机会,因为现实已经告诉他们,只要抢到就是赚到。那个时候,深发展1股2.75元,一年就最高涨到了140多元;早期金田、原野面值10元 ...
在消费金融行业,大部分坏账来源于黑中介主导的产业链式诈骗。该类犯罪以黑中介在微信群、QQ群、路边小广告等方式骗取部分无业缺乏社会经验与低智商人员信任,以协助其办理贷款给借款人手续费为名,提供全套虚假贷款 ...
如果你Google “Initial Coin Offering 2017”,你将会搜到成千上万个结果。请不要对结果中的有ICO完整的解释抱有太大希望,因为很多搜索出来的都是职业程序员写的。换句话说,对非专业人士而言,可能帮助不会特别大 ...
夏天感冒最痛苦不过,艾明·古恩·萨若( Emin Gün Sirer )从他1岁的儿子那里传染上了感冒病毒。于是,日,这位康纳尔大学计算机科学副教授,发现自己不得不在病床上一边流眼泪擦鼻涕,一边抱着笔记本电 ...
提起量化投资,不能不提西蒙斯。经历了1998年俄罗斯债券危机和2001年高科技股泡沫危机,许多曾经闻名遐迩的对冲基金经理都走向衰落。罗伯逊(JulianRobertson)关闭了老虎基金,梅利韦瑟(JohnMeriwether)的长期资本管
据外媒消息,四川省已经成为全球比特币挖矿资本最聚集的地方。四川这块风水宝地早就吸引了国外资本的关注,去年澳洲当地媒体就报道过3个澳籍华人小哥来四川康定,扎根大山深处“挖矿”的新闻。对于比特币挖矿行业来 ...
在区块链这一技术短短的发展史中,如今区块链创业者通过ICO筹得的资本正在超过传统的风险投资。根据CoinDesk的数据,到2017年为止,区块链企业家已经通过ICO产品筹集了3.27亿美元,这一数字现在超过了通过VC融资筹集 ...
今年5月爆发的勒索病毒让更多人知道了比特币。6月一到,比特币再次站上风口浪尖。6月6日,虚拟货币比特币(Bitcoin)触及历史新高2967美元,达到20460元。6月7日,比特币价格继续飙升,曾一度超过20000元,之后又回 ...
国内比特币6日报价突破20000元,创造历史新高。近三十天已翻倍。比特币价格的连日攀升不禁让玩家高呼“黄金时代的比特币又回来了”。诚然,我们仍要辩证地看待:比特币的暴涨是其价值体现还是市场炒作?2017年以来, ...
设备指纹(Device Fingerprinting)是什么?简单来讲,设备指纹是指可以用于唯一标识出该设备的设备特征或者独特的设备标识。设备指纹因子通常包括计算机的操作系统类型,安装的各种插件,浏览器的语言设置及其时区 、 ...
史蒂夫·乔布斯的“reinvents the phone”不仅重新定义了手机,而且改变了世界,将人类一举拉近移动互联网时代,并且结合金融,形成了互联网+金融的普惠模式。目前来看,天朝的移动支付妥妥的处于全球领先地位。只要 ...
在互联网金融行业,不少人可能这样觉得:认为只要数据够“大”,就能有最牛逼的风控体系和行业最低的坏账率。这种理解有些过于简单了。其实,做大数据风控是一个挺细致的事儿,大数据风控,重要的不是数据本身,而是 ...
一位在Facebook、谷歌及特斯拉都拥有股份的资产经理正努力实现其投资组合的多元化,将触角伸向投资的前沿,但是理想与现实之间还存在着一系列的监管障碍。两年前,纽约的ARK投资管理有限责任公司成为同类中首家投资 ...
区块链采用P2P技术、密码学和共识算法等技术,具有数据不可篡改、系统集体维护、信息公开透明等特性。区块链提供一种在不可信环境中,进行信息与价值传递交换的机制,是构建未来价值互联网的基石。区块链技术发端于 ...
从全球范围来看,各大证券交易所纷纷着手搭建区块链平台,探索区块链应用。结合我国场内和场外市场的发展现状,本文认为,区块链技术在证券业的应用会是一个循序渐进的过程。在区块链模式下,价值的互认及流通将变得 ...
2016年,百度与中信银行达成战略合作,共同设立直销银行。2017年,阿里与建设银行签署战略合作协议,共同推进线上线下渠道业务和电子支付业务的合作、客户资源与信用体系的共享。随后,腾讯与工商银行、盒子支付与平 ...
资产配置管用,并且资产配置需要和选股配合使用。选股虽然可以提高预期收益率,但是也会增加单个资产和资产组合的波动性。如果你想要战胜大盘,那就必须跟大盘不一样。而与大盘不一样的代价,就是跟踪误差。跟踪误差 ...
今年5月,全球数万台电脑遭到勒索病毒攻击。黑客将电脑中的资料文档上锁,并要求支付300美金等价的比特币才能解锁文件。虽然勒索病毒与比特币本身并无直接关系,但比特币在这一案例中显然成为帮凶。从2009年诞生之初 ...
日,中本聪(Satoshi)从下午一直忙到黄昏,在赫尔辛基一个小型服务器上创建、编译、打包了第一份开源代码,尽管这份代码非常简陋,至今被很多程序员嘲笑,然而它还是正常运行了SHA256运算,RIPEMD-160运 ...
专家预测,区块链技术将使互联网本身面临许多新的挑战,并颠覆以往的商业模式。投资顾问William Mougayar认为,由于区块链技术固有的安全性和缺乏第三方的参与,世界正在向区块链的基础经济迈进。近日William Mougay ...
当科技初创企业Gnosis在4月筹集约1250万美元资金时,这家公司并没有按常理出牌,借助硅谷融资网(由风投公司和富有投资者组成),而是通过在线拍卖代币的方式完成了融资。这一筹资过程被称为首次代币发行(ICO),耗 ...
据国外媒体报道,上周五爆发的勒索病毒WannaCry,让比特币也跟着火了一把,而目前,比特币的平均交易价格已达到了1902美元,市值也是突破了600亿美元大关。比特币如此火爆,以至于有人将其与黄金相对比。那么,比特扫码下载官方App
学习过该课程的人还学习过:
其他联系方式
所属系列课程
网易公司()旗下实用技能学习平台。与优秀讲师、专业机构、院校合作,为您提供海量优质课程,以及创新的在线学习体验,帮助您获得全新的个人发展和能力提升。
关注我们:
& 网易公司 版权所有
R语言量化交易与量化投资基础,IT与互联网,编程语言,远目教育,使用R语言进行量化投资分析。本课程主要介绍基础的量化投资技术,以K线图等技术图像展示为主。
本课程是量化交易的基础入门课程。
适用人群:想从事量化投资的技术开发人员。标签:至少1个,最多5个
和Python计算环境中的tushare包一样,在R中我们使用quantmod包接入第三方数据源,实现自定义量化分析平台的构建。
本文打算以陌陌的股票分析为背景,介绍如何通过quantmod包构建专属的量化分析平台。
什么是quantmod
quantmod就是提供给宽客们使用的专业模块,Quantmod本身提供强大的数据接入能力,默认是雅虎财经的数据源,此外quantmod还以绘制专业的行情分析图表以及各种技术指标计算等功能著称,常常只要几行函数就能完成从数据获取和处理到画图的复杂功能,其工作效率之高让行家里手都觉得膛目结舌。
利用API读取在线行情
首先,我们利用雅虎财经的默认接口直接体验一下读取多只股票。
利用API读取的方式,我们需要设定一个读取序列和对应的配置,获取行情函数getSymbols类似于原生的assign和get函数,用函数的方式将变量名传入后完成变量的赋值。
基于这个原理,我写了一个Quote函数来优化参数配置的体验。首先我们需要定义一个股票池序列,然后调用Quote函数获取某只股票的行情返回数据。
下面以美股的陌陌、360和A股的平安银行为例:
# 加载quantmod包
if(!require(quantmod)){
install.packages("quantmod")
# 股票行情匹配函数
Quote = function(code){
index = match(code,universes)
temp = lapply(universes,get)
return(temp[[index]])
# 基本配置
universes &&- c("000001.SZ","QIHU","MOMO")
to = Sys.Date() # 结束时间设为当前日期
src= "yahoo" # 来源雅虎财经
# 行情加载 速度有点慢,耐心等待
quantmod::getSymbols(universes,from=from,to=to,src=src)
# 绘制行情
quantmod::chartSeries(Quote("MOMO"),up.col='red',dn.col='green',TA="addVo(); addADX();addMACD(); addSMA(n=10);addBBands(n=14,sd=2,draw=\"bands\")")
利用CSV读取离线行情
接着,在离线模式或者网络访问缓慢的情况下,我们也可以用一些实现准备好的CSV文件来读取行情。
分析底层数据结构后,我们知道quantmod包读取后的数据格式是 xts 和 zoo,我们只需要将csv文件按一定的格式读取到内存后再进行相应变换,quantmod强大的分析和作图能力就可以为我们所用。
zoo本身是一种时间序列格式,而xts则是在这基础上一种时间序列格式的加强版。在读取csv的时候,我们需要用首行确定header。在转化为zoo时,我们则需要首列来确定时间序列对应的时间。最后通过xts转化为可以被quantmod识别的xts时间序列对象。下面以平安银行为例:
# 加载 zoo 时间序列包
library(zoo)
library(quantmod)
# 配置文件路径
filePath = '/Users/harryzhu/temp.csv'
# 读取CSV并转化时间格式
csv &- read.csv(filePath,header=TRUE,sep=",")
csv$LZ_GPA_QUOTE_TCLOSE &- as.POSIXct(as.character(csv$LZ_GPA_QUOTE_TCLOSE),tz="",format="%Y%m%d")
# 转化为zoo类型
temp = read.zoo(csv)
# 转化我xts类型
payh =as.xts(temp[,1]);colnames(payh)="Close"
chartSeries(payh,name="000001.SZ")
# 添加MACD曲线
,我们知道,利用quantmod和TTR包,我们可以快速计算常见指标,下面是对应的计算列表。
TTR 函数名
quantmod 函数名
威尔斯怀尔德移动方向指标
百分比布林带
钱德动量指标
双指数移动平均线
离势价格偏离指数
指数平滑移动平均线
addEnvelope
指数量权移动平均线
期权期货到期
异同平均线
addMomentum
相对强弱指数
转折点信号
简单移动平均线
随机动量指数
三重平滑振荡指数
加权移动平均法
零延迟指数移动平均线
Web应用构建
参考 Rich Harken大神 制作的 以及源码,我们可以将上述参数暴露为网页上的选项,利用shiny的ajax和websocket的实时链接特性定制我们的chartSeries函数,达到通过选项实时作图的功能。
library(shiny)
# 为应用程序定义UI,演示R包quantmod作图功能
navbarPage("R quantmod Demonstration for Data Products Class", inverse=FALSE,
tabPanel("Documentation",
fluidPage(
verticalLayout(
h2("How to use the R quantmod Demonstration App", align="center"),
h3("Directions"),
p("To get started using this application, you'll need to look at the banner line above titled \"R quantmod Demonstration for Data Products Class\" and click \"Demo\".
This will take you to the application itself.
You can click \"Documentation\" to return to this screen."),
p("The application begins by displaying the stock symbol \"^DJI\" which represents the Dow Jones Industrial Average.
You can enter whatever stock symbol you would like (without the caret \"^\") and the graph will update accordingly.
If your stock symbol is not valid - no graph will display"),
p("There are 3 other areas you can play with to change the current display for the selected stock:"),
tags$ol(tags$li("Date Range - you can change the date range selected for the price display"),
tags$li("Chart Theme - you can change how the graph is diplayed by choosing a supported theme"),
tags$li("Add Optional Technical Analysis Overlays - you can add additional chart items that will calculate some industry analytics and overlay them on the existing chart.
Also a small warning here - some analytics require at least 3 months of data.
If you don't have at least 3 months of data selected in the date range - you may get an error in display of the graph.")),
p("The graph will immediately respond to any changes you make.
Feel free to experiment and explore this application based on R, Shiny, and the quantmod package for R!"),
h3("About the App"),
p("This application was written for the project in the Coursera course \"Developing Data Products\". It is an example of how to use the quantmod package within R, and what some of its capabilities are."),
p("The app starts by providing a user interface that collects a stock symbol, date range, and optional analytics to perform on the provided stock symbol.
When anything changes in the user interface, the application reacts to the changes by updating the graphs calculated by the server code."),
tags$ol(tags$li("Input"), tags$ul(tags$li("Stock Symbol - textInput()"), tags$li("Date Range - dateRangeInput()"), tags$li("Chart Theme - radioButtions()"), tags$li("Technical Analysis - checkBoxGroupInput()")),
tags$li("Operation/Calculation", tags$ul(tags$li("Call to getSymbols() to retrieve data"), tags$li("preparation of variables for graphic display"))),
tags$li("Reactive Output"), tags$ul(tags$li("Call to render graph calculations within the quantmod libraries"), tags$li("Display of the rendered graph"))),
h3("Application Source Code"),
h4("ui.R"),
pre(includeText("ui.R")),
h4("server.R"),
pre(includeText("server.R")),
p("Note: Some code used in this demo is based on the Shiny quantmod tutorial but was not copied wholesale.
The work demonstrated above represents a significant departure from the tutorial.")
tabPanel("Demo",
fluidPage(
# 应用程序标题
#titlePanel("R quantmod Demonstration"),
# 为 quantmod 绘图功能提供参数入口的输入栏
sidebarLayout(
sidebarPanel(
textInput("stock", "Enter a stock symbol", value = "^DJI", width = "30%"),
submitButton(text="Get Stock Quote"),
dateRangeInput("dtRange", "Date Range", start = Sys.Date()-90, end = NULL, min = NULL, max = NULL, format = "yyyy-mm-dd", startview = "month", weekstart = 0, language = "en", separator = " to ", width = NULL),
flowLayout(radioButtons("theme", "Chart Theme:",
c("White" = "white",
"White Mono" = "white.mono",
"Black" = "black",
"Black Mono" = "black.mono",
"Beige" = "beige",
"WSJ"= "wsj"
checkboxGroupInput("ta", "Add Optional Technical Analysis Overlays:",
c("Directional Movement Index" = "addADX()",
"Average True Range" = "addATR()",
"Bollenger Bands" = "addBBands()",
"Commodity Channel Index" = "addCCI()",
"Chaiken Money Flow" = "addCMF()",
"Chande Momentum Oscillator" = "addCMO()",
"Contract Expiration Bars" = "addExpiry()",
"De-trended Price Oscillator" = "addDPO()",
"Simple Moving Average" = "addSMA()",
"Expotential Moving Average" = "addEMA()",
"Weighted Moving Average" = "addWMA()",
"Double Expotential Moving Average" = "addDEMA()",
"Expotential Volume Weighted Moving Average" = "addEVWMA()",
"ZLEMA" = "addZLEMA()",
"Moving Average Convergence Divergence" = "addMACD()",
"Price Envelope" = "addEnvelope()",
"Relative Strength Index" = "addRSI()",
"Parabolic Stop and Reversal Indicator" = "addSAR()",
"Rate of Change" = "addROC()",
"Stochastic Momemtum Indicator" = "addSMI()"
mainPanel(
plotOutput("distPlot", height="885px")
,textOutput("dispPrint")
library(shiny)
library(quantmod)
options("getSymbols.warning4.0"=FALSE)
# Define server logic required to draw a histogram
shinyServer(function(input, output) {
# Expression that generates the stock chart plot. The expression is
# wrapped in a call to renderPlot to indicate that:
1) It is "reactive" and therefore should re-execute automatically
when inputs change
2) Its output type is a plot
sSymbol &- reactive({
tryCatch({
suppressWarnings(getSymbols(input$stock, from=input$dtRange[1], to=input$dtRange[2],
auto.assign = FALSE))
}, error = function(err) {
return(NULL)
output$distPlot &- renderPlot({
taStr&-"addVo()"
if (!is.null(input$ta)) {
for (ta in input$ta) {
taStr&-paste(taStr, paste(";", ta))
if(!is.null(sSymbol())) {
chartSeries(sSymbol(), name=input$stock, TA=taStr, theme=chartTheme(input$theme))
output$dispPrint &- renderPrint({
print(sSymbol())
综上所述,我们可以发现,利用quantmod、shiny包,我们可以快速实现各种姿势的行情获取以及常见的关键指标的计算和绘制,并且转化为实时的Web应用,建立一个专属的量化分析Web平台。
作为分享主义者(sharism),本人所有互联网发布的图文均遵从CC版权,转载请保留作者信息并注明作者 Harry Zhu 的 FinanceR 专栏:,如果涉及源代码请注明GitHub地址:。微信号: harryzhustudio商业使用请联系作者。
0 收藏&&|&&24
你可能感兴趣的文章
42 收藏,4.1k
15 收藏,5.3k
28 收藏,5.7k
本作品 保留所有权利 。未获得许可人许可前,不允许他人复制、发行、展览和表演作品。不允许他人基于该作品创作演绎作品
tushare 数据不准。
哈哈,最近在研究wind的数据接口
wind的接口很有意思呀,它自己处了个带点GUI的接口~
分享到微博?
你好!看起来你挺喜欢这个内容,但是你还没有注册帐号。 当你创建了帐号,我们能准确地追踪你关注的问题,在有新答案或内容的时候收到网页和邮件通知。还能直接向作者咨询更多细节。如果上面的内容有帮助,记得点赞 (????)? 表示感谢。
明天提醒我
我要该,理由是:
扫扫下载 App

我要回帖

更多关于 量化投资 r语言 pdf 的文章

 

随机推荐