我希望使特定资产(符号)的最大允许头寸成为资本(初始分配+ PL)和指标的函数。我尝试通过更换osMaxPos
. 我在顶部添加了这个,初始值是硬编码的,ddQ 是我的指标,
updatePortf(portfolio, symbol, Dates=paste('::',as.Date(timestamp),sep=''))
cumPL <- sum(getPortfolio(portfolio)$symbols[[symbol]]$posPL$Net.Trading.PL)
print(paste0("expFluct", data$ddQ[timestamp]*2))
maxPosVal <- (10e6+cumPL) * data$ddQ[timestamp]*2
print(paste0("maxPosVal = ", maxPosVal))
addPosLimit(portfolio,
symbol=symbol,
timestamp = first(index(data)),
maxpos = maxPosVal
)
这是可行的,但需要执行一个日内策略,其中包含大约 2 年的 1 分钟数据,从几分钟到几小时不等,因为我的投资组合在每次通话中都被标记。有人可以指出一种更有效的方法吗?谢谢。