标签: quantmod

修改图表_系列主题

我试图使用theme参数更改条形的颜色,但出现错误:

library(quantmod)
getSymbols("SPY", from=Sys.Date()-500, to=Sys.Date())
chart_Series(SPY)
chart_Series(SPY,theme=chart_theme(dn.col = "cyan"))
# Error in chart_theme(dn.col = "cyan") : unused argument (dn.col = "cyan")
Run Code Online (Sandbox Code Playgroud)

r quantmod

2
推荐指数
1
解决办法
1493
查看次数

R quantmod addTA功能改变颜色

首先,我使用TTR包中的stoch函数来计算慢速随机,然后使用addTA函数将其添加到chartSeries函数的绘图中,然而,图中的这两行是黑色的,我想将它们更改为不同的颜色.

Input:

chartSeries(df, subset='last 3 years', TA = NULL, theme = "white", up.col = "green", dn.col = "red")

slow.stoc <- stoch(na.omit(HLC(df)), 25, 25, 9, 'SMA')[,2:3]

addTA(slow.stoc)
Run Code Online (Sandbox Code Playgroud)

我试着用:

 lines(slow.stoc[2], col="red", lty="solid")

 addLines(slow.stoc[2], col = "red")
Run Code Online (Sandbox Code Playgroud)

但两者都不起作用.请指教.谢谢.

plot r stock xts quantmod

2
推荐指数
1
解决办法
1157
查看次数

计算 R 中价差(具有正值和负值)的波动率

我正在尝试使用 R 中的 TTR 包和波动率()函数来计算两个底层证券之间价差的滚动 30 天波动率。

这是迄今为止我的代码的剥离版本(已提取/清理数据,日期匹配等):

asset1 <-c(rnorm(100, mean=50))
asset2 <-c(rnorm(100, mean=50))
spread <-c(asset1-asset2)
vClose.spread <-volatility(spread, n=30, calc="close", N=252)
Run Code Online (Sandbox Code Playgroud)

现在我在这里得到的错误是:

Error in runCov(x, x, n, use = "all.obs", sample = sample, cumulative) : 
  Series contain non-leading NAs
In addition: Warning message:
In log(x) : NaNs produced
Run Code Online (Sandbox Code Playgroud)

非常感谢任何帮助或指导。

r volatility quantmod

1
推荐指数
1
解决办法
3030
查看次数

chart_Series:如何格式化x轴以删除年份?

如何从x轴中删除年份,使其仅显示日期和月份?此外,是否可以将x轴日期旋转90度?

library(quantmod)
getSymbols("SPY", from="2013-01-01", to=Sys.Date())
chart_Series(SPY,theme=myTheme)
Run Code Online (Sandbox Code Playgroud)

r quantmod

1
推荐指数
1
解决办法
717
查看次数

R将字符串转换为变量

我正在使用quantmodR从yahoo finance中提取历史数据.

要使用该包,我创建一个代码清单,如下所示:

symbols <- c("MSFT", "ORCL", "AAPL", "FB")
Run Code Online (Sandbox Code Playgroud)

为了获取历史数据,我调用了quantlib方法getSymbols:

try(getSymbols(sym, src="yahoo"))
Run Code Online (Sandbox Code Playgroud)

这在我的环境变量叫MSFT,ORCL,APPLFB.

要计算MSFT和ORCL之间的相关性,我可以使用收盘价

cor(Cl(MSFT), Cl(ORCL))
Run Code Online (Sandbox Code Playgroud)

要得到:

           ORCL.Close
MSFT.Close  0.6597159
Run Code Online (Sandbox Code Playgroud)

我怎样才能使这个通用,以便我可以拉出20个符号并运行它们之间的相关性?

我不知道如何引用给定字符串的变量.即我有字符串"MFST",我如何引用变量MSFT

我有字符串"MFST"和"ORCL"我怎么用它来写 cor(Cl(MSFT), Cl(ORCL))

r quantmod

1
推荐指数
1
解决办法
260
查看次数

来自getReturns的"二元运算符的非数字参数"错误

出于某种原因,我通常在Rstudios中运行的代码不再有效.我希望有人有类似的经历,并了解正在发生的事情.

getReturns(c('C','BAC'), start='2004-01-01', end='2008-12-31')
Run Code Online (Sandbox Code Playgroud)

这导致:

Error in unclass(e1) + unclass(e2) : 
non-numeric argument to binary operator
Run Code Online (Sandbox Code Playgroud)

我无法在线找到任何解决此问题的stackoverflow.另外,我从2014年7月开始看到最新的文档中没有提到任何内容:

http://cran.r-project.org/web/packages/stockPortfolio/stockPortfolio.pdf

有谁知道这里发生了什么?

finance r stocks quantmod

1
推荐指数
1
解决办法
1369
查看次数

R Quant Trading

我可以使用一些帮助让我的代码正常工作.我试图根据收盘价高于MACD,布林带和慢速随机指标创建一个简单的头寸信号.我在第17行开始出错了.我不确定这是不是因为"Stock"是一个xts对象.我想在最后绘制输出图.谢谢!

#install.packages("quantmod")
library("quantmod")
#install.packages("FinancialInstrument")
library("FinancialInstrument")
#install.packages("PerformanceAnalytics")
library("PerformanceAnalytics")
#install.packages("TTR")
library("TTR")

#######################################

Stock <- get(getSymbols('CAT'))["2014::"]

# add the indicators
Stock$BBands <- BBands(HLC(Stock))
Stock$MACD <- MACD(HLC(Stock))
Stock$stochOSC <- stoch(Stock[,c("High","Low","Close")])
Stock$position <- ifelse(Cl(Stock) > Stock$BBands > Stock$MACD > Stock   $stockOSC , 1 , -1)

Gains <- lag(Stock$position) * dailyReturn(Stock)
charts.PerformanceSummary(cbind(dailyReturn(Stock),Gains))
Run Code Online (Sandbox Code Playgroud)

finance r trading algorithmic-trading quantmod

1
推荐指数
1
解决办法
703
查看次数

在Quantmod R中获取商品价格历史的伎俩?

require("quantmod")
Run Code Online (Sandbox Code Playgroud)

这有效:

#Symbol for Natural Gas in front month with Yahoo Finance
getQuote("NGH16.NYM", src="yahoo")
Run Code Online (Sandbox Code Playgroud)

但这不"

getSymbols("NGH16.NYM", src="yahoo", from="2015-09-01")

    Error in download.file(paste(yahoo.URL, "s=", Symbols.name, "&a=", from.m,
  cannot open URL 'http://ichart.finance.yahoo.com/table.csv?s=NGF16.NYM&a=8&b=01&c=2015&d=11&e=24&f=2015&g=d&q=q&y=0&z=NGF16.NYM&x=.csv'
In addition: Warning message:
In download.file(paste(yahoo.URL, "s=", Symbols.name, "&a=", from.m,  :
  cannot open: HTTP status was '404 Not Found'
Run Code Online (Sandbox Code Playgroud)

我如何获得价格历史记录?

r time-series commodity quantmod

1
推荐指数
1
解决办法
1205
查看次数

网络抓取Yahoo!中的关键统计数据 R金融

有没有从Yahoo!抓取数据的经验的人?带R?的财务关键统计页面?我从HTML直接使用我熟悉的刮擦数据read_htmlhtml_nodes()以及html_text()rvest包。但是,此网页的MSFT关键统计信息有些复杂,我不确定是否所有统计信息都保存在XHR,JS或Doc中。我猜数据存储在JSON中。如果有人知道使用R提取和解析此网页数据的好方法,请回答我的问题,在此先感谢您!

或者,如果有一种更便捷的方法可以通过quantmod或提取这些指标Quandl,请告诉我,这将是一个非常好的解决方案!

r web-scraping quantmod rvest quandl

1
推荐指数
1
解决办法
2747
查看次数

从盈透证券交易平台下载数据

我一直在与盈透证券TWS和R合作,并且取得了不同的成功。

library(IBrokers)
IBConn <- twsConnect(port = xxxx)
currency_df = twsCurrency("NZD",currency = "USD")
test = reqHistoricalData(IBConn, Contract = currency_df, whatToShow ='BID_ASK', useRTH = "0", barSize = '1 min', duration="1 D", endDateTime = paste0(gsub("-","", reqCurrentTime(IBConn))," EST"))
plot(test$NZD.USD.Close)

library(quantmod)
plot(test$NZD.USD.Close)
chartSeries(test$NZD.USD.Close)
addBBands(n = 20, sd = 2, ma = "SMA", draw = 'bands', on = -1)
Run Code Online (Sandbox Code Playgroud)

效果很好,我可以下载当天的1分钟货币数据。

当我尝试获取公司的股票数据时就会出现问题

tws = twsConnect(port=7497)
symbol = twsSTK("AAPL")
data_AAPL = reqHistoricalData(tws, symbol)
print (data_AAPL)
Run Code Online (Sandbox Code Playgroud)

但是,我没有得到与该博客相同的结果(reqHistoricalData函数 -大约在页面的一半)。

我使用以下代码请求的其他数据运行了几个小时,并且我不得不在R控制台中单击“停止”。

tws <- twsConnect()
aapl.csv <- file("AAPL.csv", open="w") …
Run Code Online (Sandbox Code Playgroud)

api r quantmod yahoo-finance interactive-brokers

1
推荐指数
1
解决办法
1129
查看次数