gpt4 book ai didi

r - quantstrat 中的资本感知头寸规模

转载 作者:行者123 更新时间:2023-12-02 08:32:20 26 4
gpt4 key购买 nike

我希望使特定 Assets (符号)的最大允许头寸成为资本(初始分配+ 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 分钟数据,从几分钟到几小时不等,因为我的投资组合在每次通话中都会被标记。有人可以指出一种更有效的方法吗?谢谢。

最佳答案

改用重新平衡规则,例如 rulePctEquity

演示('macdRebalancing')

举个例子。

大多数实际投资组合不会在每笔交易中都重新平衡,因为这不是特别实用,尤其是在日内数据上。

rulePctEquity 会调用 updatePortf,但在每次新观察时调整您的交易规模在实践中通常会获得很少的值(value)。

它与您的示例不同,它标记整个投资组合并查看总权益,而不仅仅是一种工具的累积损益。

如果您想更频繁地调整,或者只想根据单个工具中的 P&L 进行调整,那么您根本不需要 updatePortf。如果您只想要初始分配加上单个工具的损益,那么您应该从 Txns 表中总结该工具的已实现损益,并根据您的未平仓头寸与当前市场价格。在大多数情况下,这比调用 updatePortf 快数百倍。

关于r - quantstrat 中的资本感知头寸规模,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25371670/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com