2

在 R 中使用 addDiv 命令的格式是什么?就输入而言,我知道如何使用该功能,但我无法弄清楚它应该放在哪里超出一般的想法。我是否将它放在我实例化投资组合的位置之后?以下是 R 提供的帮助文章:

将现金股息交易添加到投资组合中。

描述

添加现金红利不会影响头寸数量,就像拆分一样。

用法

addDiv(Portfolio, Symbol, TxnDate, DivPerShare, ..., TxnFees = 0,  
       ConMult = NULL, verbose = TRUE)

论据

Portfolio 一个投资组合名称,指向一个以 结构的投资组合对象initPortf

Symbol 投资组合中包含的符号的工具标识符,例如 IBM。

TxnDate 交易日期为 ISO 8601,例如“2008-09-01”或“2010-01-05 09:54:23.12345”。

DivPerShare 每股或每单位数量支付的现金股利金额。

TxnFees 与交易相关的费用,例如佣金。阅读详情。

ConMult 如果未在工具规范中定义,则符号的合约或工具乘数。

verbose 如果TRUE(默认)该函数将交易的元素以一行的形式打印到屏幕上,例如“2007-01-08 IBM 50 @ 77.6”。禁止使用FALSE.

... 任何其他传递参数。

笔记

**# TODO 将 TxnTypes 添加到 $txn 表

**# TODO 添加 AsOfDate****

4

1 回答 1

2

下面是一个如何使用它的示例,它基于demo("longtrend")blogger 包。如您所见,事后调用它很好,因为吸墨纸知道您的位置。

也就是说,如果您需要知道您的总损益以做出交易决策,您需要同时调用它。

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")
于 2015-10-07T01:00:39.047 回答