金融数据是一座金矿,无论是股票交易,期权交易,或者其他衍生品交易,都需要对相关的金融数据进行分析。传统的传统的交易员凭借过年的交易训练,每日人工盯盘,观察市场的变化。一个好的交易员,可以同时观测几个金融市场和几十个交易品种,随着金融产品的发展,中国市场A股股票已经超过3000支,债券超过7000支,共募基金接近4000支,还有很多金融的衍生产品。如此大量的金融产品,已经不是靠个人之力能够消化和分析的。
这个时候,计算机以及算法可以帮助我们进行交易,发现不合理的定价和交易机会,让一个程序来帮助我们赚钱。
本课程会讲解金融分析的基本知识,然后学习如何使用R语言来获取金融数据,并对数据进行基本的处理,最后进行分析。
量化投资是指通过数量化方式及计算机程序化发出买卖指令,以获取稳定收益为目的的交易方式。在海外的发展已有30多年的历史,其投资业绩稳定,市场规模和份额不断扩大、得到了越来越多投资者认可。 事实上,互联网的发展,使得新概念在世界范围的传播速度非常快,作为一个概念,量化投资并不算新,国内投资者早有耳闻。但是,真正的量化基金在国内还比较罕见。同时,机器学习的发展也对量化投资起了促进作用
所以,对于国内而言,这是一个非常新,并且值得学习的一个领域。
其中,量化投资又包括,统计套利,算法交易,高频交易
统计套利是一种基于模型的套利策略,它从资产的历史交易数据找寻规律,发现两个或者两个以上的资产之间存在的套利机会,然后通过模型拟合资产价格的变化规律,设定交易阀值,通过计算机程序根据市场的实时信息自动发出交易信号而进行套利。
算法交易又称自动交易、黑盒交易或者机器交易,它指的是通过使用计算机程序来发 出交易指令的方法。在交易中,程序可以决定的范围包括交易时间的选择、交易的价 格,甚至包括最后需要成交的证券数量。
被动型算法交易除利用历史数据估计交易模型的关键参数外,不会根据市场的状况主 动选择交易的时机与交易的数量,而是按照一个既定的交易方针进行交易。该策略的 核心是减少滑价(目标价与实际成交均价的差)。被动型算法交易最成熟,使用也最 为广泛,如在国际市场上使用最多的成交量加权平均价格(VWAP)、时间加权平均 价格(TWAP)等都属于被动型算法交易。
主动型算法交易也叫机会型算法交易。这类交易算法根据市场的状况做出实时的决策 ,判断是否交易、交易的数量、交易的价格等。
高频交易是指从那些人们无法 利用的极为短暂的市场变化中 寻求获利的计算机化交易,比 如,某种证券买入价和卖出价 差价的微小变化,或者某只股 票在不同交易所之间的微小价 差。这种交易的速度如此之快 ,以至于有些交易机构将自己 的“服务器群组”(server farms)安置到了离交易所的计 算机很近的地方,以缩短交易 指令通过光缆以光速旅行的距 离。
这种方法的要求就更加严格一些,需要有非常好的网络环境以及计算机性能,因此门槛更加高一些
什么是Quant
quant被称为金融矿工,quant的工作就是设计并实现金融的数学模型(主要采用计算机编程),包括衍生品定价,风险估价或预测市场行为等、
推荐一些书籍
R语言有一个非常大的资源库,就是R语言的包,可以通过一下链接直接查看R里面存在的包:https://cran.r-project.org/
其中金融分析有一个专门的模块,包含了各种个样金融分析的方法:
本课程学习的是Quantmod进行建模
install.packages("quantmod")
require("quantmod")
Quantmod 是一个金融分析数据的一个框架,可以非常高效的从数据采集,数据的处理,到最后的数据的分析,建模。接下来通过一个例子进行快速的入门。
这个例子分为三步:
技术分析图
获取数据
quantmod支持从各个来源加载数据,比如:
如何获取,假设我们要获取阿里巴巴的股票数据,首先我们要知道阿里巴巴的股票代码(BABA),其次是加载好quantmod包,然后使用getSymbols
来获取数据
从yahoo 财经获取数据
require(quantmod)
require(tidyverse)
getSymbols("BABA",src="yahoo")
## [1] "BABA"
head(BABA)
## BABA.Open BABA.High BABA.Low BABA.Close BABA.Volume
## 2014-09-19 92.70 99.70 89.95 93.89 271879400
## 2014-09-22 92.70 92.95 89.50 89.89 66657800
## 2014-09-23 88.94 90.48 86.62 87.17 39009800
## 2014-09-24 88.47 90.57 87.22 90.57 32088000
## 2014-09-25 91.09 91.50 88.50 88.92 28598000
## 2014-09-26 89.73 90.46 88.66 90.46 18340000
## BABA.Adjusted
## 2014-09-19 93.89
## 2014-09-22 89.89
## 2014-09-23 87.17
## 2014-09-24 90.57
## 2014-09-25 88.92
## 2014-09-26 90.46
也可以筛选时间:
getSymbols("BABA",src="yahoo",from = '2018-01-01',to = '2019-01-01')
## [1] "BABA"
head(BABA)
## BABA.Open BABA.High BABA.Low BABA.Close BABA.Volume
## 2018-01-02 176.399 184.100 175.700 183.65 29916900
## 2018-01-03 185.190 185.635 181.400 184.00 20121900
## 2018-01-04 185.900 187.747 184.430 185.71 19473800
## 2018-01-05 187.170 190.750 186.301 190.70 18168300
## 2018-01-08 190.460 191.660 189.070 190.33 16230100
## 2018-01-09 191.130 192.490 188.000 190.80 19495100
## BABA.Adjusted
## 2018-01-02 183.65
## 2018-01-03 184.00
## 2018-01-04 185.71
## 2018-01-05 190.70
## 2018-01-08 190.33
## 2018-01-09 190.80
直接输入不同的股票代码,运行函数,就会将股票数据下载到本地.下载Google的股票数据
getSymbols("GOOG",src="yahoo",from = '2018-01-01',to = '2019-01-01')
## [1] "GOOG"
head(GOOG)
## GOOG.Open GOOG.High GOOG.Low GOOG.Close GOOG.Volume
## 2018-01-02 1048.34 1066.94 1045.230 1065.00 1237600
## 2018-01-03 1064.31 1086.29 1063.210 1082.48 1430200
## 2018-01-04 1088.00 1093.57 1084.002 1086.40 1004600
## 2018-01-05 1094.00 1104.25 1092.000 1102.23 1279100
## 2018-01-08 1102.23 1111.27 1101.620 1106.94 1047600
## 2018-01-09 1109.40 1110.57 1101.231 1106.26 902500
## GOOG.Adjusted
## 2018-01-02 1065.00
## 2018-01-03 1082.48
## 2018-01-04 1086.40
## 2018-01-05 1102.23
## 2018-01-08 1106.94
## 2018-01-09 1106.26
绘制google股票的条形图
barChart(GOOG,subset='last 1 months')
绘制google股票数据的蜡烛图
candleChart(GOOG,col = TRUE,theme ="white",subset='last 2 months')
绘制Google股票的折线图
chartSeries(x = GOOG,subset='last 5 months',type = 'line')
添加技术分析图非常简单,只要在原先绘制图形的基础之上(蜡烛图,折线图,条形图)添加技术曲线,我们这里添加技术曲线图,这里添加的是平均趋向指标ADX,这里简单的介绍一些平均趋向指标ADX:
平均趋向指标ADX(Average Directional Index)是另一种常用的趋势衡量指标,ADX 无法告诉你趋势的发展方向。可是,如果趋势存在, ADX 可以衡量趋势 的强度。 ADX 读数上升,代表趋势转强;如果 ADX 读数下降,意味着趋势转弱。
单就 ADX 本身来说,由于指标落后价格走势,所以算不上是很好的指标,不适 合单就 ADX 进行操作。可是,如果与其他指标配合运用, ADX 可以确认市场 是否存在趋势,并衡量趋势的强度。
一般来说,ADX指数大于30,认为趋势非常强劲,小于20,表示没有什么趋势变化。
candleChart(GOOG,col = TRUE,theme ="white",subset='last 2 months')
addADX()
Quantmod包中的函数一共分为三部分:
我们从数据开始
最常用的获取数据的函数就是getSymbols()函数,其可以满足大部分的数据获取需求.
getSymbols(Symbols = 'BABA',src = 'yahoo',from = '2018-01-01',to = '2019-01-01' )
## [1] "BABA"
head(BABA)
## BABA.Open BABA.High BABA.Low BABA.Close BABA.Volume
## 2018-01-02 176.399 184.100 175.700 183.65 29916900
## 2018-01-03 185.190 185.635 181.400 184.00 20121900
## 2018-01-04 185.900 187.747 184.430 185.71 19473800
## 2018-01-05 187.170 190.750 186.301 190.70 18168300
## 2018-01-08 190.460 191.660 189.070 190.33 16230100
## 2018-01-09 191.130 192.490 188.000 190.80 19495100
## BABA.Adjusted
## 2018-01-02 183.65
## 2018-01-03 184.00
## 2018-01-04 185.71
## 2018-01-05 190.70
## 2018-01-08 190.33
## 2018-01-09 190.80
假如想要获取泸深300指数的日数据,直接通过代码也可以下载下来,其代码是000300.ss
setSymbolLookup(WK=list(name='000300.ss',src='yahoo'))
getSymbols("WK")
## Warning: 000300.ss contains missing values. Some functions will not work if
## objects contain missing values in the middle of the series. Consider using
## na.omit(), na.approx(), na.fill(), etc to remove or replace them.
## [1] "WK"
WK %>% head()
## 000300.SS.Open 000300.SS.High 000300.SS.Low 000300.SS.Close
## 2007-01-04 2067.09 2067.09 2067.09 2067.09
## 2007-01-05 2072.88 2072.88 2072.88 2072.88
## 2007-01-08 2131.56 2131.56 2131.56 2131.56
## 2007-01-09 2200.09 2200.09 2200.09 2200.09
## 2007-01-10 2255.97 2255.97 2255.97 2255.97
## 2007-01-11 2231.63 2231.63 2231.63 2231.63
## 000300.SS.Volume 000300.SS.Adjusted
## 2007-01-04 0 2067.09
## 2007-01-05 0 2072.88
## 2007-01-08 0 2131.56
## 2007-01-09 0 2200.09
## 2007-01-10 0 2255.97
## 2007-01-11 0 2231.63
下载国内数据这里稍微提一下,quantmod 包默认是访问 yahoo finance 的数据,其中包括上证和深证的股票数据,还有港股数据。
上证代码是 ss,深证代码是 sz,港股代码是 hk
比如茅台:6000519.ss,万科 000002.sz,长江实业 0001.hk
使用这个函数可以从oanda上获取汇率数据
getFX("EUR/USD",from="2005-01-01")
## Warning in getSymbols.oanda(Symbols = Currencies, from = from, to = to, :
## Oanda only provides historical data for the past 180 days. Symbol: EUR/USD
## [1] "EURUSD"
EURUSD %>% head()
## EUR.USD
## 2018-09-28 1.161492
## 2018-09-29 1.160420
## 2018-09-30 1.160466
## 2018-10-01 1.159054
## 2018-10-02 1.154828
## 2018-10-03 1.154086
使用这个函数可以从Google Finace 上面下载财务报表,下载阿里巴巴的财务报表
getFinancials("BABA")
需要注意的是,这个应为需要使用到Google ,因此国内可能使用不了,因此在这里稍微提一下
分析类函数分为几个部分:
is 族函数是用来判断数据类型的,有
is.OHLC(BABA)
## [1] TRUE
is.OHLCV(BABA)
## [1] TRUE
is.HLC(BABA)
## [1] TRUE
检查数据里面是否包含某类型的数据
has.OHLC(BABA)
## [1] TRUE TRUE TRUE TRUE
has.HLC(BABA)
## [1] TRUE TRUE TRUE
has.OHLCV(BABA)
## [1] TRUE TRUE TRUE TRUE TRUE
has.Op(BABA)
## [1] TRUE
has.Hi(BABA)
## [1] TRUE
has.Lo(BABA)
## [1] TRUE
has.Cl(BABA)
## [1] TRUE
has.Vo(BABA)
## [1] TRUE
has.Ad(BABA)
## [1] TRUE
has.Ask(BABA)
## [1] FALSE
has.Bid(BABA)
## [1] FALSE
has.Price(BABA)
## [1] FALSE
has.Qty(BABA)
## [1] FALSE
has.Trade(BABA)
## [1] FALSE
提取某种数据类型
Op(BABA) %>% head()
## BABA.Open
## 2018-01-02 176.399
## 2018-01-03 185.190
## 2018-01-04 185.900
## 2018-01-05 187.170
## 2018-01-08 190.460
## 2018-01-09 191.130
Hi(BABA) %>% head()
## BABA.High
## 2018-01-02 184.100
## 2018-01-03 185.635
## 2018-01-04 187.747
## 2018-01-05 190.750
## 2018-01-08 191.660
## 2018-01-09 192.490
Lo(BABA) %>% head()
## BABA.Low
## 2018-01-02 175.700
## 2018-01-03 181.400
## 2018-01-04 184.430
## 2018-01-05 186.301
## 2018-01-08 189.070
## 2018-01-09 188.000
Cl(BABA) %>% head()
## BABA.Close
## 2018-01-02 183.65
## 2018-01-03 184.00
## 2018-01-04 185.71
## 2018-01-05 190.70
## 2018-01-08 190.33
## 2018-01-09 190.80
Vo(BABA) %>% head()
## BABA.Volume
## 2018-01-02 29916900
## 2018-01-03 20121900
## 2018-01-04 19473800
## 2018-01-05 18168300
## 2018-01-08 16230100
## 2018-01-09 19495100
Ad(BABA) %>% head()
## BABA.Adjusted
## 2018-01-02 183.65
## 2018-01-03 184.00
## 2018-01-04 185.71
## 2018-01-05 190.70
## 2018-01-08 190.33
## 2018-01-09 190.80
HLC(BABA) %>% head()
## BABA.High BABA.Low BABA.Close
## 2018-01-02 184.100 175.700 183.65
## 2018-01-03 185.635 181.400 184.00
## 2018-01-04 187.747 184.430 185.71
## 2018-01-05 190.750 186.301 190.70
## 2018-01-08 191.660 189.070 190.33
## 2018-01-09 192.490 188.000 190.80
OHLC(BABA) %>% head()
## BABA.Open BABA.High BABA.Low BABA.Close
## 2018-01-02 176.399 184.100 175.700 183.65
## 2018-01-03 185.190 185.635 181.400 184.00
## 2018-01-04 185.900 187.747 184.430 185.71
## 2018-01-05 187.170 190.750 186.301 190.70
## 2018-01-08 190.460 191.660 189.070 190.33
## 2018-01-09 191.130 192.490 188.000 190.80
主要是用来计算一个序列的一个阶段到另一个阶段的变化率或者计算两个序列之间的 变化率
举例子:
这个例子差分:
head(Delt(Op(BABA)))
## Delt.1.arithmetic
## 2018-01-02 NA
## 2018-01-03 0.049835883
## 2018-01-04 0.003833857
## 2018-01-05 0.006831652
## 2018-01-08 0.017577652
## 2018-01-09 0.003517788
两列数据的差值
head(Delt(Op(BABA),Cl(BABA)))
## Delt.0.arithmetic
## 2018-01-02 0.0411056294
## 2018-01-03 -0.0064258437
## 2018-01-04 -0.0010219850
## 2018-01-05 0.0188598549
## 2018-01-08 -0.0006825842
## 2018-01-09 -0.0017265840
差分之后取对数
head(Delt(Op(BABA),type = 'log'))
## Delt.1.log
## 2018-01-02 NA
## 2018-01-03 0.048633850
## 2018-01-04 0.003826527
## 2018-01-05 0.006808422
## 2018-01-08 0.017424951
## 2018-01-09 0.003511615
转化成为州数据和月数据
to.weekly(BABA) %>% head()
## BABA.Open BABA.High BABA.Low BABA.Close BABA.Volume
## 2018-01-05 176.399 190.75 175.70 190.70 87680900
## 2018-01-12 190.460 192.49 186.58 187.79 77859000
## 2018-01-19 190.400 191.74 179.32 184.05 78280100
## 2018-01-26 184.975 205.23 181.68 205.22 129009700
## 2018-02-02 204.830 206.20 186.80 187.31 157131400
## 2018-02-09 183.700 190.47 168.88 176.67 146661400
## BABA.Adjusted
## 2018-01-05 190.70
## 2018-01-12 187.79
## 2018-01-19 184.05
## 2018-01-26 205.22
## 2018-02-02 187.31
## 2018-02-09 176.67
to.monthly(BABA) %>% head()
## BABA.Open BABA.High BABA.Low BABA.Close BABA.Volume BABA.Adjusted
## 1 2018 176.399 206.20 175.70 204.29 445098300 204.29
## 2 2018 192.750 199.49 168.88 186.14 445029900 186.14
## 3 2018 186.180 201.50 175.45 183.54 382712800 183.54
## 4 2018 182.810 183.63 166.13 178.54 323383100 178.54
## 5 2018 177.580 202.28 175.77 198.01 412503300 198.01
## 6 2018 199.500 211.70 182.04 185.53 408863800 185.53
用于计算不同阶段的收益率
periodReturn(BABA,period="daily") %>% head()
## daily.returns
## 2018-01-02 0.041105629
## 2018-01-03 0.001905832
## 2018-01-04 0.009293516
## 2018-01-05 0.026869796
## 2018-01-08 -0.001940194
## 2018-01-09 0.002469400
筛选时间
periodReturn(BABA,period="daily",subset ="2018-01-01::2019-01-01") %>% head()
## daily.returns
## 2018-01-02 0.041105629
## 2018-01-03 0.001905832
## 2018-01-04 0.009293516
## 2018-01-05 0.026869796
## 2018-01-08 -0.001940194
## 2018-01-09 0.002469400
选取不同的计算方式
periodReturn(BABA,period="daily",subset ="2018-01-01::2019-01-01",type="arithmetic") %>% head()
## daily.returns
## 2018-01-02 0.041105629
## 2018-01-03 0.001905832
## 2018-01-04 0.009293516
## 2018-01-05 0.026869796
## 2018-01-08 -0.001940194
## 2018-01-09 0.002469400
periodReturn(BABA,period="daily",subset ="2018-01-01::2019-01-01",type="log") %>% head()
## daily.returns
## 2018-01-02 0.040283254
## 2018-01-03 0.001904018
## 2018-01-04 0.009250597
## 2018-01-05 0.026515142
## 2018-01-08 -0.001942079
## 2018-01-09 0.002466357
修改一下参数即可实现
periodReturn(BABA,period="weekly") %>% head()
## weekly.returns
## 2018-01-05 0.08107186
## 2018-01-12 -0.01525959
## 2018-01-19 -0.01991581
## 2018-01-26 0.11502308
## 2018-02-02 -0.08727221
## 2018-02-09 -0.05680423
可以计算出来不同时间维度的收益率信息
allReturns(BABA) %>% head()
## daily weekly monthly quarterly yearly
## 2018-01-02 NA NA NA NA NA
## 2018-01-03 0.001905832 NA NA NA NA
## 2018-01-04 0.009293516 NA NA NA NA
## 2018-01-05 0.026869796 0.08107186 NA NA NA
## 2018-01-08 -0.001940194 NA NA NA NA
## 2018-01-09 0.002469400 NA NA NA NA
使用quantmod 可以非常快速绘制出金融数据的图形,这里的图形分为两个部分:
chartSeries() 是最主要的绘图函数,可以绘制条形图,蜡烛图,线图
chartSeries(BABA)
设置主题
chartSeries(BABA,theme = 'white.mono')
筛选时间与主题命名
chartSeries(BABA,name="BABA CHART",subset="2018-12-01::2019-03-01")
绘制条形图
chartSeries(BABA,name="BABA CHART",subset="2018-12-01::2019-03-01",type = 'bars')
绘制折线图
chartSeries(BABA,name="BABA CHART",subset="2018-12-01::2019-03-01",type = 'line')
使用这个函数可以在不重新再画一张新的图的前提下修改已经画出来的图
chartSeries(BABA,name="BABA CHART",subset="2018-12-01::2019-03-01",type = 'line')
reChart(type="candlesticks",show.grid=TRUE)
使用这个函数直接绘制条形图
barChart(BABA)
使用这个函数直接绘制蜡烛图
candleChart(BABA,theme="white")
直接绘制折线图
lineChart(BABA,theme="white")
简单地说,技术分析就是看图,技术分析探讨股票价格、交易量和时间的相互关系,以此判定股票下一步运动的可能 方向。技术分析的目的是确定股票的走势以及走势的转变。炒手们根据技术分析提供的信号 ,买进卖出以赚取差价。
一般来说,ADX指数大于,就可以认为有很强的变化趋势,小于20,则认为变化趋势并不明显
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addADX()
ATR: 真实波动幅度均值ATR(Average True Range)是一个用来测量价格的波动性的指 标,即显示市场变化率的指标
ATR是一个独特的波动性的指标,反映了一定程度的兴趣或漠不关心的举动。强大的移 动,在任何一个方向,往往伴随着大范围或大的真实波动幅度。这是特别真实的开头 的一招。平凡的举动可能会伴随着相对狭窄的范围内。因此,ATR可用于验证的热情, 此举背后或突破。
ATR指标在早期多用于期货市场上,但现在也用于股票、外汇等金融市场,ATR指标值越高,则价格趋势逆转的几率就越大,ATR指标值越小,则价格趋势逆转的几率就越小
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addATR()
BBbands:BOLL指标又叫布林线指标,其英文全称是“Bolinger Bands”,布林线 (BOLL)由约翰 布林先生创造,其利用统计原理,求出股价的标准差及其信赖区间,从 而确定股价的波动范围及未来走势,利用波带显示股价的安全高低价位,因而也被称 为布林带
原理:一般而言,股价的运动总是围绕某一价值中枢(如均线、成本线等)在一定的 范围内变动,布林线指标指标正是在上述条件的基础上,引进了“股价信道”的概念 ,其认为股价信道的宽窄随着股价波动幅度的大小而变化,而且股价信道又具有变异 性,它会随着股价的变化而自动调整。正是由于它具有灵活性、直观性和趋势性的特 点,BOLL指标渐渐成为投资者广为应用的市场上热门指标。
作用:通常在股价盘整的过程中,投资者最想知道的一定是股价要盘整到什么时候才会产生行情。因为如果太早买入股票,而股票却又迟迟不涨,资金的利用率就会降低 ,而且投资者还要承担股价下跌的风险。而布林线指标则恰恰可以在这时发挥其神奇的作用,对盘整的结束给予正确的提示,使投资者避免太早买入股票。
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addBBands()
CCI: 买超卖指标CCI(Commodity Channel Index) 专门测量股价是否已超出常态分布范围
原理:CCI指标是一种超买超卖指标。所谓超买超卖指标,顾名思义,“超买”,就是已 经超出买方的能力,买CCI指标进股票的人数超过了一定比例,那么,这时候应该反 向卖出股票。“超卖”则代表卖方卖股票卖过了头,卖股票的人数超过一定比例时,反而 应该买进股票。这是在一般常态行情,但是,如果行情是超乎寻常的强势,则超买超 卖指标会突然间失去方向,行情不停的持续前进,群众似乎失去了控制,对于原价的 这种脱序行为,CCI指标提供了不同度的看法。这样就有利于投资者更好的研判行情, 特别是那些短期内暴涨暴跌的非常态行情。CCI与其他指标一起使用时,可以是一个有价值的工具,以确定潜在的资产的价格高峰和低谷,并从而为投资者提供合理的证据 估计的资产价格运动方向的变化。
CCI通常会处于-100到100之间。一般来说,当CCI上升超过100时,买入;当CCI下降 低于-100时,卖出。
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addCCI()
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addRSI()
Vo: 成交量指标Vo(Volumes)显示了投资者对市场的兴趣大小,成交量大,表示投资 者的兴趣大,成交量小,表示投资者的兴趣小。
用法:
1.如果成交量高,表示市场中人参与得多,兴趣大,这样可能会更巩固一个趋势,或者是 一个新的趋势的开始; 2.如果成交量低,表示市场中人参与得少,兴趣小,这样可能会是一个逆转的趋势,或者 表示市场趋势比较稳定,没有大的波动; 3.如果成交量突然增加或降低,表示一个可能的逆转; 4.如果成交量渐渐地降低,表示价格变动比较快速
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addVo()
WPR: 威廉指标WPR(Williams Percent R)表示市场处于超买还是超卖状态
作用:威廉指数主要用于研究股价的波动,通过分析股价波动变化中的峰与谷决定买卖时机。它利用振荡点来反映市场的超买超卖现象,可以预测循期内的高点与低点,从而显示出有效的买卖信号,是用来分析市场短期行情走势的技术指示。
用法: WPR>80 即处于超卖状态,行情即将见底,应当考虑买进。 WPR>20 即处于超买状态,行情即将见顶,应当考虑卖出。
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addWPR()
SAR:抛物线转向指标SAR(Stop and Reveres)显示了市场价格变化的趋势,它是一个 领先指标。
用法:
1、当股票股价从SAR曲线下方开始向上突破SAR曲线时,为买入信号,预示着股价一轮上 升行情可能展开,投资者应迅速及时地买进股票。 2、当股票股价向上突破SAR曲线后继续向上运动而SAR曲线也同时向上运动时,表明股价 的上涨趋势已经形成,SAR曲线对股价构成强劲的支撑,投资者应坚决持股待涨或逢低加 码买进股票。 3、当股票股价从SAR曲线上方开始向下突破SAR曲线时,为卖出信号,预示着股价一轮下 跌行情可能展开,投资者应迅速及时地卖出股票。 4、当股票股价向下突破SAR曲线后继续向下运动而SAR曲线也同时向下运动,表明股价的 下跌趋势已经形成,SAR曲线对股价构成巨大的压力,投资者应坚决持币观望或逢高减磅
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addSAR()
DPO: 区间震荡线DPO(Detrended price Oscillator),是由惠特曼·巴塞特(Walt Bressert)提出的。是一个排除价格趋势的震荡指标。它试图通过扣除前期移动 平均价来消除长期趋势对价格波动的干扰,从而便于发现价格短期的波动和超买 超卖水平。
用法: DPO>0,表明目前处于多头市场;DPO<0,表明目前处于空头市场。 在0轴上方,设定一条超买线,当DPO波动至超买线时,股价会形成短期高点。 在0轴下方,设定一条超卖线,当DPO波动至超卖线时,股价会形成短期低点。 超买超卖的范围随个股的不同而不同,使用者应自行设定。
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addDPO()
haikin Money Flow(CMF)是自1966年以来股票经纪人Marc Chaikin开发的另一个指标 CMF指标背后的想法在于结合价格和交易量,以便在选定的时期内查看货币流入(流入市场或流出市场)。默认CMF期限 - 21天。
CMF高于零 - 看涨信号 - 指标显示买入压力的迹象 CMF低于零 - 看跌信号 - 该指标显示抛售压力的迹象
因此,当CMF高于零时,将寻求买入,而当它低于零时卖出。
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addCMF()
钱德动量摆动指标(ChandeMomentumOsciliator,简称CMO)是由图莎尔·钱德发明的,与其他动量指标摆动指标如相对强弱指标(RSI)和随机指标(KDJ)不同,钱德动量指标在计算公式的分子中采用上涨日和下跌日的数据。
当CMO大于50时,处于超买状态;当CMO小于50时处于超卖状态。 CMO的绝对值日越高,趋势越强。较低的CMO绝对值(0附近)标示标的证券在水平方向波动。
chartSeries(BABA,name="BABA CANDLECHART",type="candlesticks")
addCMO()
通常情况下,我们关注的不仅仅是单个股票是否能够获利或者获利多少,我们更关注 的是各个股票的利润率比较。下面我们来讲述一个通过用quantmod分析各大股票的 利润率来看应该选择那些股票。
require("quantmod")
stocks <- c("BABA","GOOG","MSFT","ORCL")
date_begin <- as.Date("2018-10-01")
date_end <- as.Date("2019-03-01")
tickers <- getSymbols(stocks, from = date_begin, to = date_end)
dataset <- Ad(get(tickers[1]))
for (i in 2:length(tickers)) {
dataset <- merge(dataset, Ad(get(tickers[i])))
}
return_lag <- 5
data <- ROC(dataset, return_lag, type = "discrete") #Calculate the (rate of) change of a series over n periods.
names(data) <-stocks
data %>% head() # 得到了每一支股票的收益率
## BABA GOOG MSFT ORCL
## 2018-10-01 NA NA NA NA
## 2018-10-02 NA NA NA NA
## 2018-10-03 NA NA NA NA
## 2018-10-04 NA NA NA NA
## 2018-10-05 NA NA NA NA
## 2018-10-08 -0.06703704 -0.03876826 -0.04117295 -0.04710418
但是可以看到,存在一些缺失值,因此,进行一些处理,下面列举了三种缺失值的处理方法
data_omit <- na.omit(dataset) # 去除缺失值
data_locf <- na.locf(dataset) # 把上一个观测值填补上来
data_approx <- na.approx(dataset) # 线性近似填补数据
data_spline <- na.spline(dataset) #用三次样条填补数据
再重新进行计算
return_lag <- 5
data <- na.omit(ROC(dataset, return_lag, type = "discrete"))
names(data) <-stocks
data %>% head()
## BABA GOOG MSFT ORCL
## 2018-10-08 -0.06703704 -0.03876826 -0.04117295 -0.04710418
## 2018-10-09 -0.08294323 -0.05107035 -0.02509778 -0.02707546
## 2018-10-10 -0.14830327 -0.10119289 -0.07823216 -0.04723608
## 2018-10-11 -0.09114206 -0.07607495 -0.06099826 -0.05437647
## 2018-10-12 -0.04746823 -0.04084332 -0.02283070 -0.03991892
## 2018-10-15 -0.04618231 -0.04936593 -0.02931884 -0.04153742
用图表来直观地对比一下这四个股票的收益率的情况
plot(data[,1],type="p",main="Returns of stocks",ylab="returns",xlab="time",ylim=c(0,0.12))
points(data[,2],col="green")
points(data[,3],col="blue")
points(data[,4],col="orange")
lines(data[,1],col="black")
lines(data[,2],col="green")
lines(data[,3],col="blue")
lines(data[,4],col="orange")
可以看到阿里巴巴股票的收益率是很不错的,可以分析一下阿里巴巴股票历年的股票趋势
chartSeries(BABA,from = '2015-01-01',to='2015-12-31')
chartSeries(BABA,from = '2016-01-01',to='2016-12-31')
chartSeries(BABA,from = '2017-01-01',to='2017-12-31')
chartSeries(BABA,from = '2018-01-01',to='2018-12-31')
看完趋势之后,我们对于股票18年的数据进行技术分析
chartSeries(BABA,from = '2018-01-01',to='2018-12-31')
addADX()
addSAR()
addCCI()
addRSI()
addBBands()
追涨杀跌模型是金融市场的专业术语,“追涨杀跌的操作方法是金融市场中在金融产品(股票,期货,外汇等)价格上涨的时候买入,以期待涨得更多,并以更高的价格卖出获利;在价格下跌的时候卖出进行止损,不管之前金融产品买入价格是多少,都立即卖出,避免更大的损失。
分为两种,短线追涨和中线追涨
短线追涨:当天股价已经涨了5个点或更多,这时追进去买入,期待当天收盘涨停,等下一个交易日高价卖出,这就是短线追涨。由于中国股票市场的交易规则的特殊性,A股股价每日最大变动10%,并且是T+1交易,即今日买进,第二天才能卖出。
中线追涨:某支股票的股价已经上涨了一段时间,走势很强,底部上涨已经有30%或更多,这个时追进去买入,期待后势持续上涨,是中线追涨。
不论短线追涨还是中线追涨,我们追涨的理由和判断的标准都是一样的,“涨得好的股票说明走势很强,那么追强势股期待股票持续上涨”。但从另一个角度看,追涨的风险也是很大的,关键在于我们不知道它能涨到什么时候,到什么位置可能会回调,什么时候是庄家出货。所以说追涨技巧性很强,什么情况下能追,什么情况下不能追,都是很有讲究的
要进行追涨杀跌的操作,那么要定义什么是追涨,什么是杀跌。简单粗暴的定义可以选择当日涨幅超过5%的股票进行买入,第二天开盘卖出或者止损位卖出。
下面以中线追涨为例子,进行建模和程序实现,对于中线追涨,策略定义为,当股价向上突破最近20天的最高价的时候买入,当股价跌破近10天的最低价格卖出,阿里巴巴的数据进行建模,时间范围从2016年1月到2018年12月
getSymbols(Symbols = "BABA",src = 'yahoo',from = '2016-01-01',to = '2019-02-01')
## [1] "BABA"
构建追涨杀跌模型最重要的一步是要判断在在哪个位置追涨,以及在哪个位置杀跌
up <- 0
down <- 0
# 从第二十天开始
BUY <- FALSE
n_up <- 1
n_down <- 1
for (i in 21:dim(BABA)[1]) {
if(1==1){
Type <- all(as.numeric(BABA[i,4]) >= as.numeric(BABA[(i-20):(i-1),4]))
if(Type==TRUE){
up[n_up] <- i
n_up <- n_up+1
BUY <- TRUE
}
}
if(BUY==TRUE){
Type <- all(as.numeric(BABA[i,4]) <= as.numeric(BABA[(i-10):(i-1),4]))
if(Type==TRUE){
down[n_down] <- i
n_down <- n_down+1
BUY <- FALSE
}
}
}
up
## [1] 40 41 43 44 48 52 53 54 55 60 61 63 70 75 99 103 125
## [18] 126 131 132 134 136 137 138 140 149 151 152 153 154 155 170 171 178
## [35] 179 182 183 255 257 258 259 266 267 268 287 300 303 305 308 312 320
## [52] 324 327 328 329 330 333 334 335 340 342 343 344 345 349 358 360 361
## [69] 370 375 379 383 384 385 386 388 394 396 402 409 410 411 412 413 414
## [86] 428 431 432 446 447 448 462 463 466 467 477 479 504 505 506 507 509
## [103] 518 519 520 521 554 555 589 590 591 595 604 608 609 615 617 645 719
## [120] 725 732 733 735 736 760 765 766 767 771 774 775
down
## [1] 80 100 111 196 405 436 452 472 482 527 559 622 648 744
于是,这里得出了买入和卖出的点,下面我们来模拟交易,并且假设没有手续费,假设本金是100000,每一次买1000
Trade <- function(capital = 100000,fixMoney=1000){
j=1
tmp <- FALSE
mystock <- 0
for (i in 1:length(up)) {
if(up[i]<down[j]|tmp ==TRUE){
tmp <- FALSE
if(capital>0){
stock <- fixMoney/as.numeric(BABA[up[i],4])
mystock <- mystock+stock
capital <- capital - fixMoney
print(paste("第",i,'次买入',"此时股票",mystock,'还有本金',capital))
}else{print("没有资金买入了")}
}else if(mystock!=0){
capital <- capital + mystock*as.numeric(BABA[up[j],4])
j=j+1
tmp <- TRUE
print(paste("第",j-1,'次卖出','此时本金为',capital))
if(j>length(down)){
break()
}
mystock <- 0
stock <- 10000/as.numeric(BABA[up[i],4])
mystock <- mystock+stock
capital <- capital - fixMoney
}
}
return(capital)
}
Trade(capital = 100000,fixMoney = 1000)
## [1] "第 1 次买入 此时股票 14.1123339809154 还有本金 99000"
## [1] "第 2 次买入 此时股票 28.1474217002137 还有本金 98000"
## [1] "第 3 次买入 此时股票 41.9940014032519 还有本金 97000"
## [1] "第 4 次买入 此时股票 55.7133046508757 还有本金 96000"
## [1] "第 5 次买入 此时股票 69.2249918955268 还有本金 95000"
## [1] "第 6 次买入 此时股票 82.6930053635403 还有本金 94000"
## [1] "第 7 次买入 此时股票 95.8077594619009 还有本金 93000"
## [1] "第 8 次买入 此时股票 108.610217369948 还有本金 92000"
## [1] "第 9 次买入 此时股票 121.40121250937 还有本金 91000"
## [1] "第 10 次买入 此时股票 134.081912323208 还有本金 90000"
## [1] "第 11 次买入 此时股票 146.735335234171 还有本金 89000"
## [1] "第 12 次买入 此时股票 159.380757271465 还有本金 88000"
## [1] "第 13 次买入 此时股票 171.937261698342 还有本金 87000"
## [1] "第 14 次买入 此时股票 184.251016313706 还有本金 86000"
## [1] "第 1 次卖出 此时本金为 99056.0272002402"
## [1] "第 16 次买入 此时股票 135.469279127964 还有本金 97056.0272002402"
## [1] "第 2 次卖出 此时本金为 106708.213338108"
## [1] "第 18 次买入 此时股票 138.293644025268 还有本金 104708.213338108"
## [1] "第 3 次卖出 此时本金为 114695.780447906"
## [1] "第 20 次买入 此时股票 134.993550842993 还有本金 112695.780447906"
## [1] "第 21 次买入 此时股票 147.227463547517 还有本金 111695.780447906"
## [1] "第 22 次买入 此时股票 159.326676805855 还有本金 110695.780447906"
## [1] "第 23 次买入 此时股票 171.408349347174 还有本金 109695.780447906"
## [1] "第 24 次买入 此时股票 183.253883861401 还有本金 108695.780447906"
## [1] "第 25 次买入 此时股票 195.089604345144 还有本金 107695.780447906"
## [1] "第 26 次买入 此时股票 206.889014374643 还有本金 106695.780447906"
## [1] "第 27 次买入 此时股票 218.653720256996 还有本金 105695.780447906"
## [1] "第 28 次买入 此时股票 230.385301949431 还有本金 104695.780447906"
## [1] "第 29 次买入 此时股票 241.836120420728 还有本金 103695.780447906"
## [1] "第 30 次买入 此时股票 252.732928012429 还有本金 102695.780447906"
## [1] "第 31 次买入 此时股票 262.911045060775 还有本金 101695.780447906"
## [1] "第 32 次买入 此时股票 272.986611811405 还有本金 100695.780447906"
## [1] "第 33 次买入 此时股票 282.62237987496 还有本金 99695.7804479062"
## [1] "第 34 次买入 此时股票 292.196338981919 还有本金 98695.7804479062"
## [1] "第 35 次买入 此时股票 301.752913996795 还有本金 97695.7804479062"
## [1] "第 36 次买入 此时股票 311.186876260946 还有本金 96695.7804479062"
## [1] "第 37 次买入 此时股票 320.330987369723 还有本金 95695.7804479062"
## [1] "第 4 次卖出 此时本金为 119044.705796954"
## [1] "第 39 次买入 此时股票 116.523307939309 还有本金 117044.705796954"
## [1] "第 40 次买入 此时股票 126.859225251971 还有本金 116044.705796954"
## [1] "第 41 次买入 此时股票 137.174884209766 还有本金 115044.705796954"
## [1] "第 42 次买入 此时股票 147.336452742981 还有本金 114044.705796954"
## [1] "第 43 次买入 此时股票 157.195468813178 还有本金 113044.705796954"
## [1] "第 44 次买入 此时股票 166.805309474524 还有本金 112044.705796954"
## [1] "第 45 次买入 此时股票 176.402238733552 还有本金 111044.705796954"
## [1] "第 46 次买入 此时股票 185.90974966719 还有本金 110044.705796954"
## [1] "第 47 次买入 此时股票 195.376757414999 还有本金 109044.705796954"
## [1] "第 48 次买入 此时股票 204.700766739008 还有本金 108044.705796954"
## [1] "第 49 次买入 此时股票 213.938642027691 还有本金 107044.705796954"
## [1] "第 50 次买入 此时股票 223.070228017435 还有本金 106044.705796954"
## [1] "第 51 次买入 此时股票 232.022779735051 还有本金 105044.705796954"
## [1] "第 52 次买入 此时股票 240.970524743144 还有本金 104044.705796954"
## [1] "第 53 次买入 此时股票 249.823216039644 还有本金 103044.705796954"
## [1] "第 54 次买入 此时股票 258.66416724784 还有本金 102044.705796954"
## [1] "第 55 次买入 此时股票 267.370418260323 还有本金 101044.705796954"
## [1] "第 56 次买入 此时股票 276.029926175299 还有本金 100044.705796954"
## [1] "第 57 次买入 此时股票 284.687934833308 还有本金 99044.7057969543"
## [1] "第 58 次买入 此时股票 293.258383924841 还有本金 98044.7057969543"
## [1] "第 59 次买入 此时股票 301.726501749148 还有本金 97044.7057969543"
## [1] "第 60 次买入 此时股票 310.059835082481 还有本金 96044.7057969543"
## [1] "第 61 次买入 此时股票 318.382071822753 还有本金 95044.7057969543"
## [1] "第 62 次买入 此时股票 326.691861030325 还有本金 94044.7057969543"
## [1] "第 63 次买入 此时股票 334.929093184571 还有本金 93044.7057969543"
## [1] "第 64 次买入 此时股票 342.992308990003 还有本金 92044.7057969543"
## [1] "第 65 次买入 此时股票 351.008341054131 还有本金 91044.7057969543"
## [1] "第 66 次买入 此时股票 358.9847307492 还有本金 90044.7057969543"
## [1] "第 67 次买入 此时股票 366.943979459478 还有本金 89044.7057969543"
## [1] "第 68 次买入 此时股票 373.969411720977 还有本金 88044.7057969543"
## [1] "第 69 次买入 此时股票 380.948266134069 还有本金 87044.7057969543"
## [1] "第 70 次买入 此时股票 387.895122826258 还有本金 86044.7057969543"
## [1] "第 71 次买入 此时股票 394.797863452431 还有本金 85044.7057969543"
## [1] "第 72 次买入 此时股票 401.656103722073 还有本金 84044.7057969543"
## [1] "第 73 次买入 此时股票 408.367513118046 还有本金 83044.7057969543"
## [1] "第 74 次买入 此时股票 415.055581424946 还有本金 82044.7057969543"
## [1] "第 75 次买入 此时股票 421.641894978443 还有本金 81044.7057969543"
## [1] "第 76 次买入 此时股票 428.145960019093 还有本金 80044.7057969543"
## [1] "第 77 次买入 此时股票 434.564857540964 还有本金 79044.7057969543"
## [1] "第 78 次买入 此时股票 440.911646146534 还有本金 78044.7057969543"
## [1] "第 79 次买入 此时股票 447.207289719831 还有本金 77044.7057969543"
## [1] "第 5 次卖出 此时本金为 110142.518203534"
## [1] "第 81 次买入 此时股票 68.7964616865659 还有本金 108142.518203534"
## [1] "第 82 次买入 此时股票 74.7666109402973 还有本金 107142.518203534"
## [1] "第 83 次买入 此时股票 80.6750304380816 还有本金 106142.518203534"
## [1] "第 84 次买入 此时股票 86.4070031531807 还有本金 105142.518203534"
## [1] "第 85 次买入 此时股票 92.0952851949052 还有本金 104142.518203534"
## [1] "第 86 次买入 此时股票 97.6828137997689 还有本金 103142.518203534"
## [1] "第 87 次买入 此时股票 103.238986831354 还有本金 102142.518203534"
## [1] "第 88 次买入 此时股票 108.792382517066 还有本金 101142.518203534"
## [1] "第 6 次卖出 此时本金为 109220.352605426"
## [1] "第 90 次买入 此时股票 60.3787990546846 还有本金 107220.352605426"
## [1] "第 91 次买入 此时股票 65.7932773110658 还有本金 106220.352605426"
## [1] "第 7 次卖出 此时本金为 111237.090000395"
## [1] "第 93 次买入 此时股票 59.4602463330882 还有本金 109237.090000395"
## [1] "第 94 次买入 此时股票 64.7839261738821 还有本金 108237.090000395"
## [1] "第 95 次买入 此时股票 70.0886846828407 还有本金 107237.090000395"
## [1] "第 8 次卖出 此时本金为 112711.71723106"
## [1] "第 97 次买入 此时股票 57.6138475019524 还有本金 110711.71723106"
## [1] "第 9 次卖出 此时本金为 115215.967828763"
## [1] "第 99 次买入 此时股票 59.8861865112735 还有本金 113215.967828763"
## [1] "第 100 次买入 此时股票 65.2709259561436 还有本金 112215.967828763"
## [1] "第 101 次买入 此时股票 70.5147645284116 还有本金 111215.967828763"
## [1] "第 102 次买入 此时股票 75.7558545927551 还有本金 110215.967828763"
## [1] "第 103 次买入 此时股票 80.9566035276456 还有本金 109215.967828763"
## [1] "第 104 次买入 此时股票 86.0709082640764 还有本金 108215.967828763"
## [1] "第 105 次买入 此时股票 91.113009761156 还有本金 107215.967828763"
## [1] "第 106 次买入 此时股票 95.9858291507241 还有本金 106215.967828763"
## [1] "第 10 次卖出 此时本金为 113785.410411574"
## [1] "第 108 次买入 此时股票 55.2291200316263 还有本金 111785.410411574"
## [1] "第 11 次卖出 此时本金为 116150.167712445"
## [1] "第 110 次买入 此时股票 58.0598823254899 还有本金 114150.167712445"
## [1] "第 111 次买入 此时股票 63.1538663822775 还有本金 113150.167712445"
## [1] "第 112 次买入 此时股票 68.1880991905449 还有本金 112150.167712445"
## [1] "第 113 次买入 此时股票 73.2081795874336 还有本金 111150.167712445"
## [1] "第 114 次买入 此时股票 78.1019841268054 还有本金 110150.167712445"
## [1] "第 115 次买入 此时股票 82.8878181270806 还有本金 109150.167712445"
## [1] "第 116 次买入 此时股票 87.670676317411 还有本金 108150.167712445"
## [1] "第 117 次买入 此时股票 92.4131594591046 还有本金 107150.167712445"
## [1] "第 12 次卖出 此时本金为 114458.200547297"
## [1] "第 119 次买入 此时股票 57.0675306103512 还有本金 112458.200547297"
## [1] "第 13 次卖出 此时本金为 117003.058628038"
## [1] "第 121 次买入 此时股票 70.4036996090748 还有本金 115003.058628038"
## [1] "第 122 次买入 此时股票 76.6795878047793 还有本金 114003.058628038"
## [1] "第 123 次买入 此时股票 82.8961736171839 还有本金 113003.058628038"
## [1] "第 124 次买入 此时股票 89.0034166211157 还有本金 112003.058628038"
## [1] "第 14 次卖出 此时本金为 119231.026002835"
## [1] 119231
chartSeries(BABA,type = 'line')
BABA[up,]
## BABA.Open BABA.High BABA.Low BABA.Close BABA.Volume
## 2016-03-01 70.020 71.840 69.860 70.86 14007700
## 2016-03-02 72.040 72.040 70.750 71.25 10503000
## 2016-03-04 70.960 72.960 70.720 72.22 10763600
## 2016-03-07 72.200 73.980 72.000 72.89 11244500
## 2016-03-11 72.580 74.010 72.220 74.01 11219200
## 2016-03-17 73.760 74.370 73.510 74.25 9423900
## 2016-03-18 74.970 76.300 74.710 76.25 13350100
## 2016-03-21 77.090 79.680 76.940 78.11 15493300
## 2016-03-22 77.000 78.550 76.908 78.18 9148400
## 2016-03-30 79.010 79.550 78.540 78.86 10696000
## 2016-03-31 78.500 79.840 78.410 79.03 11318500
## 2016-04-04 78.330 79.550 78.320 79.08 9817300
## 2016-04-13 78.740 79.720 78.500 79.64 14150900
## 2016-04-20 79.000 81.735 78.990 81.21 14911900
## 2016-05-24 79.170 81.310 79.070 81.12 16707700
## 2016-05-31 81.000 82.030 80.200 82.00 78861400
## 2016-06-30 78.310 79.760 78.280 79.53 12485300
## 2016-07-01 79.120 80.050 79.120 79.65 7271300
## 2016-07-11 79.330 81.900 79.240 81.46 17417500
## 2016-07-12 81.790 82.880 81.510 81.74 15294100
## 2016-07-14 81.180 82.240 80.860 81.74 9361500
## 2016-07-18 80.600 82.790 80.600 82.65 12113600
## 2016-07-19 82.480 83.690 82.050 82.77 9799400
## 2016-07-20 83.270 84.700 83.230 84.42 13991000
## 2016-07-22 84.000 84.500 83.810 84.49 5988400
## 2016-08-04 83.750 84.980 83.690 84.75 10714500
## 2016-08-08 84.990 85.020 84.300 85.00 11528200
## 2016-08-09 85.050 85.630 84.800 85.24 15349200
## 2016-08-10 86.010 87.730 86.010 87.33 28195900
## 2016-08-11 92.140 92.800 91.260 91.77 54078300
## 2016-08-12 92.980 98.350 92.910 98.25 71968300
## 2016-09-02 97.970 99.665 97.970 99.25 17482600
## 2016-09-06 100.450 104.300 100.450 103.78 32803800
## 2016-09-15 102.620 104.480 102.530 104.45 20795900
## 2016-09-16 104.000 105.390 103.860 104.64 20363500
## 2016-09-21 102.460 106.190 102.210 106.00 22997100
## 2016-09-22 107.570 109.760 107.480 109.36 35627700
## 2017-01-05 91.910 94.810 91.640 94.37 16821500
## 2017-01-09 94.160 95.650 93.310 94.72 10792900
## 2017-01-10 96.400 97.904 95.550 96.75 14780600
## 2017-01-11 96.920 97.450 95.600 96.94 8735900
## 2017-01-23 96.480 98.670 96.260 98.41 14090300
## 2017-01-24 103.150 103.190 99.940 101.43 37181500
## 2017-01-25 102.460 104.270 101.900 104.06 23322800
## 2017-02-22 102.480 105.200 102.420 104.20 15779400
## 2017-03-13 103.520 106.250 103.470 105.18 16118900
## 2017-03-16 105.250 105.650 104.301 105.63 12445200
## 2017-03-20 106.230 108.200 105.940 107.25 12447900
## 2017-03-23 106.950 108.830 106.440 108.25 13410800
## 2017-03-29 107.970 109.740 107.690 109.51 8788700
## 2017-04-10 109.000 111.880 108.840 111.70 14798600
## 2017-04-17 110.910 111.870 110.300 111.76 7128100
## 2017-04-20 111.530 113.600 111.480 112.96 13773500
## 2017-04-21 112.800 113.170 112.300 113.11 8968300
## 2017-04-24 114.040 115.160 114.020 114.86 13386600
## 2017-04-25 115.540 115.820 114.800 115.48 11434600
## 2017-04-28 115.900 115.990 115.000 115.50 6955700
## 2017-05-01 115.630 117.240 115.500 116.68 7332100
## 2017-05-02 117.070 118.690 117.000 118.09 10048200
## 2017-05-09 118.620 120.000 118.070 120.00 15219900
## 2017-05-11 120.130 120.500 118.250 120.16 11375500
## 2017-05-12 120.160 120.468 119.510 120.34 9823900
## 2017-05-15 121.030 121.490 120.031 121.40 11125500
## 2017-05-16 121.980 124.340 121.740 124.02 18222100
## 2017-05-22 124.980 125.590 123.555 124.75 13493200
## 2017-06-05 124.020 125.560 123.870 125.37 10030600
## 2017-06-07 125.080 125.910 124.110 125.64 9431600
## 2017-06-08 142.510 143.700 135.210 142.34 80936900
## 2017-06-21 138.820 143.500 138.020 143.29 30911600
## 2017-06-28 142.650 144.370 141.480 143.95 17759800
## 2017-07-05 141.160 145.000 140.330 144.87 16995800
## 2017-07-11 144.290 145.870 143.260 145.81 13519900
## 2017-07-12 147.380 149.300 146.850 149.00 14955800
## 2017-07-13 149.520 150.000 148.000 149.52 11683400
## 2017-07-14 150.120 152.250 149.690 151.83 11469400
## 2017-07-18 151.080 154.600 150.480 153.75 15313000
## 2017-07-26 152.530 156.000 152.360 155.79 14466300
## 2017-07-28 153.960 158.960 152.820 157.56 14449400
## 2017-08-07 154.830 158.990 154.370 158.84 15906400
## 2017-08-16 160.000 160.350 158.535 159.50 21318300
## 2017-08-17 166.120 168.000 163.510 163.92 56840300
## 2017-08-18 165.360 169.500 164.100 167.50 31492500
## 2017-08-21 168.290 170.600 166.980 169.25 22352300
## 2017-08-22 170.020 174.770 169.640 174.46 24481900
## 2017-08-23 172.900 176.230 172.750 175.80 21939000
## 2017-09-13 175.750 179.100 175.560 178.97 22060700
## 2017-09-18 178.890 180.290 177.750 179.98 22919800
## 2017-09-19 180.690 180.870 179.250 180.07 14751900
## 2017-10-09 178.970 183.132 178.750 182.09 15011600
## 2017-10-10 181.650 184.460 181.360 183.12 13201300
## 2017-10-11 183.000 184.700 182.601 184.69 11974400
## 2017-10-31 183.570 185.120 181.811 184.89 21256700
## 2017-11-01 187.880 188.880 183.580 186.08 28594700
## 2017-11-06 184.070 188.250 184.000 187.84 19873100
## 2017-11-07 189.580 189.860 187.000 188.51 17781000
## 2017-11-21 190.350 191.560 188.800 190.90 19639500
## 2017-11-24 189.390 191.700 188.700 191.19 9887300
## 2018-01-02 176.399 184.100 175.700 183.65 29916900
## 2018-01-03 185.190 185.635 181.400 184.00 20121900
## 2018-01-04 185.900 187.747 184.430 185.71 19473800
## 2018-01-05 187.170 190.750 186.301 190.70 18168300
## 2018-01-09 191.130 192.490 188.000 190.80 19495100
## 2018-01-23 185.280 192.400 183.540 192.28 31305900
## 2018-01-24 194.710 198.860 192.400 195.53 34497300
## 2018-01-25 196.340 199.590 194.100 198.33 23421600
## 2018-01-26 200.330 205.230 199.210 205.22 23768600
## 2018-03-15 198.440 201.500 196.520 199.06 33504600
## 2018-03-16 198.400 200.380 197.260 200.28 26948700
## 2018-05-04 180.400 190.600 178.620 188.89 57788300
## 2018-05-07 190.410 196.600 190.300 195.35 29862200
## 2018-05-08 194.200 197.340 193.010 196.31 21856300
## 2018-05-14 195.900 200.000 195.870 198.64 17627100
## 2018-05-25 197.570 201.500 197.210 199.20 21270000
## 2018-06-01 199.500 204.990 199.450 204.34 23131900
## 2018-06-04 205.120 209.750 204.730 208.95 19357000
## 2018-06-12 206.950 209.800 206.900 209.08 15910900
## 2018-06-14 207.720 211.120 207.510 210.86 18838300
## 2018-07-25 190.610 198.350 190.140 197.98 20735400
## 2018-11-07 150.770 152.800 148.940 152.50 17884400
## 2018-11-15 152.900 157.400 150.890 156.22 30083500
## 2018-11-27 154.640 157.940 153.580 156.46 17911800
## 2018-11-28 159.010 159.800 155.260 159.34 20767100
## 2018-11-30 157.900 160.860 156.720 160.86 35071200
## 2018-12-03 168.640 168.800 163.510 163.74 31174000
## 2019-01-09 149.890 153.350 148.500 151.92 20214100
## 2019-01-16 152.810 155.390 151.500 154.84 14810800
## 2019-01-17 152.110 158.550 151.900 155.97 16153200
## 2019-01-18 158.450 159.490 154.730 157.02 19611400
## 2019-01-25 158.910 160.500 157.430 159.21 16451800
## 2019-01-30 161.290 167.840 160.500 166.82 36997700
## 2019-01-31 167.800 169.730 165.700 168.49 21219500
## BABA.Adjusted
## 2016-03-01 70.86
## 2016-03-02 71.25
## 2016-03-04 72.22
## 2016-03-07 72.89
## 2016-03-11 74.01
## 2016-03-17 74.25
## 2016-03-18 76.25
## 2016-03-21 78.11
## 2016-03-22 78.18
## 2016-03-30 78.86
## 2016-03-31 79.03
## 2016-04-04 79.08
## 2016-04-13 79.64
## 2016-04-20 81.21
## 2016-05-24 81.12
## 2016-05-31 82.00
## 2016-06-30 79.53
## 2016-07-01 79.65
## 2016-07-11 81.46
## 2016-07-12 81.74
## 2016-07-14 81.74
## 2016-07-18 82.65
## 2016-07-19 82.77
## 2016-07-20 84.42
## 2016-07-22 84.49
## 2016-08-04 84.75
## 2016-08-08 85.00
## 2016-08-09 85.24
## 2016-08-10 87.33
## 2016-08-11 91.77
## 2016-08-12 98.25
## 2016-09-02 99.25
## 2016-09-06 103.78
## 2016-09-15 104.45
## 2016-09-16 104.64
## 2016-09-21 106.00
## 2016-09-22 109.36
## 2017-01-05 94.37
## 2017-01-09 94.72
## 2017-01-10 96.75
## 2017-01-11 96.94
## 2017-01-23 98.41
## 2017-01-24 101.43
## 2017-01-25 104.06
## 2017-02-22 104.20
## 2017-03-13 105.18
## 2017-03-16 105.63
## 2017-03-20 107.25
## 2017-03-23 108.25
## 2017-03-29 109.51
## 2017-04-10 111.70
## 2017-04-17 111.76
## 2017-04-20 112.96
## 2017-04-21 113.11
## 2017-04-24 114.86
## 2017-04-25 115.48
## 2017-04-28 115.50
## 2017-05-01 116.68
## 2017-05-02 118.09
## 2017-05-09 120.00
## 2017-05-11 120.16
## 2017-05-12 120.34
## 2017-05-15 121.40
## 2017-05-16 124.02
## 2017-05-22 124.75
## 2017-06-05 125.37
## 2017-06-07 125.64
## 2017-06-08 142.34
## 2017-06-21 143.29
## 2017-06-28 143.95
## 2017-07-05 144.87
## 2017-07-11 145.81
## 2017-07-12 149.00
## 2017-07-13 149.52
## 2017-07-14 151.83
## 2017-07-18 153.75
## 2017-07-26 155.79
## 2017-07-28 157.56
## 2017-08-07 158.84
## 2017-08-16 159.50
## 2017-08-17 163.92
## 2017-08-18 167.50
## 2017-08-21 169.25
## 2017-08-22 174.46
## 2017-08-23 175.80
## 2017-09-13 178.97
## 2017-09-18 179.98
## 2017-09-19 180.07
## 2017-10-09 182.09
## 2017-10-10 183.12
## 2017-10-11 184.69
## 2017-10-31 184.89
## 2017-11-01 186.08
## 2017-11-06 187.84
## 2017-11-07 188.51
## 2017-11-21 190.90
## 2017-11-24 191.19
## 2018-01-02 183.65
## 2018-01-03 184.00
## 2018-01-04 185.71
## 2018-01-05 190.70
## 2018-01-09 190.80
## 2018-01-23 192.28
## 2018-01-24 195.53
## 2018-01-25 198.33
## 2018-01-26 205.22
## 2018-03-15 199.06
## 2018-03-16 200.28
## 2018-05-04 188.89
## 2018-05-07 195.35
## 2018-05-08 196.31
## 2018-05-14 198.64
## 2018-05-25 199.20
## 2018-06-01 204.34
## 2018-06-04 208.95
## 2018-06-12 209.08
## 2018-06-14 210.86
## 2018-07-25 197.98
## 2018-11-07 152.50
## 2018-11-15 156.22
## 2018-11-27 156.46
## 2018-11-28 159.34
## 2018-11-30 160.86
## 2018-12-03 163.74
## 2019-01-09 151.92
## 2019-01-16 154.84
## 2019-01-17 155.97
## 2019-01-18 157.02
## 2019-01-25 159.21
## 2019-01-30 166.82
## 2019-01-31 168.49
BABA[down,]
## BABA.Open BABA.High BABA.Low BABA.Close BABA.Volume
## 2016-04-27 78.30 78.62 76.57 77.65 11491900
## 2016-05-25 78.53 79.20 74.12 75.59 49606600
## 2016-06-10 76.43 77.05 75.76 75.92 10421100
## 2016-10-11 107.89 107.97 104.75 105.23 14916600
## 2017-08-10 156.20 156.50 151.25 151.77 19298900
## 2017-09-25 176.48 177.00 167.50 169.59 34033700
## 2017-10-17 179.58 180.12 175.30 175.32 20132200
## 2017-11-14 184.30 184.38 181.15 181.79 14475300
## 2017-11-29 185.25 185.41 173.62 179.91 40204100
## 2018-02-05 183.70 190.47 179.90 180.53 31084000
## 2018-03-22 190.75 192.39 184.60 184.65 25355700
## 2018-06-21 205.84 206.00 201.04 202.21 13963800
## 2018-07-30 190.22 190.59 182.06 184.82 19906300
## 2018-12-14 147.71 150.70 145.72 149.00 15560700
## BABA.Adjusted
## 2016-04-27 77.65
## 2016-05-25 75.59
## 2016-06-10 75.92
## 2016-10-11 105.23
## 2017-08-10 151.77
## 2017-09-25 169.59
## 2017-10-17 175.32
## 2017-11-14 181.79
## 2017-11-29 179.91
## 2018-02-05 180.53
## 2018-03-22 184.65
## 2018-06-21 202.21
## 2018-07-30 184.82
## 2018-12-14 149.00
需要联系我可以添加我的微信