首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在quantstrat/blotter的R中使用addDiv(命令)

在quantstrat/blotter的R中使用addDiv(命令)
EN

Stack Overflow用户
提问于 2015-07-22 23:42:55
回答 1查看 200关注 0票数 2

在R中使用addDiv命令的格式是什么?我知道如何在输入的范围内使用这个函数,但是我不知道它应该放在什么地方,而不是一般的概念。我是否将其放在实例化投资组合的位置之后?以下是R条提供的帮助:

将现金红利交易添加到投资组合中。 描述 增加现金股利不影响仓位数量,就像拆分一样。 用法 addDiv(Portfolio,符号,TxnDate,DivPerShare,.,TxnFees = 0,ConMult = NULL,verbose = TRUE) 参数 Portfolio:指向用initPortf构造的portfolio对象的组合名称。 Symbol包括在组合中的符号的仪器标识符,例如IBM。 TxnDate交易日期为ISO8601,例如“2008-09-01”或“2010-01-05 09:54:23.12345”. DivPerShare每股或单位数量支付的现金红利数额。 与交易相关的TxnFees费用,例如佣金。详情见。 如果未在仪器规范中定义符号,则为ConMult合同或仪表乘数。 verbose If TRUE (默认)该函数将事务元素以一行形式打印到屏幕上,例如,“2007-01-08IBM50@ 77.6”。使用FALSE进行抑制。 ...任何其他通通参数。 备注 **# TODO将TxnTypes添加到$txn表中 **# TODO添加AsOfDate*

EN

回答 1

Stack Overflow用户

发布于 2015-10-07 01:00:39

下面是一个如何使用它的示例,它基于来自blotter包的demo("longtrend")。正如你所看到的,如果你用事实来称呼它,那是很好的,因为吸墨机知道你的位置。

话虽如此,如果你需要知道你的总损益表才能做出交易决定的话,你就需要同时对它进行称谓。

代码语言:javascript
复制
require(blotter)
demo(longtrend, ask=FALSE)

# Add dividends from SPY
spyDiv <- getDividends("SPY", from=initDate)
for(i in 1:nrow(spyDiv)) {
  obs <- spyDiv[i,]
  addDiv("longtrend", "GSPC", index(obs), obs)
}
# Need to update portfolio, account, etc again, since
# we added new transactions
updatePortf("longtrend")
updateAcct("longtrend")
updateEndEq("longtrend")

# Plot position with dividends, calling dev.new() so
# we can compare it to the original plot from the demo.
dev.new()
chart.Posn("longtrend", "GSPC", Dates="1998::")
add_SMA(n=10, col="darkgreen", on=1)

#look at a transaction summary
getTxns(Portfolio="longtrend", Symbol="GSPC")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31575859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档