У меня есть объект timeSeries с возвратом 10 акций.Я хотел бы получить касательный портфель, используя fPortfolio, короткую позицию по первым 5 акциям и длинную позицию по последним 5.
Я пробовал что-то подобное, где ts_portfolio
содержит мои доходы:
tgSpec <- portfolioSpec()
setSolver(tgSpec) <- "solveRshortExact"
portfolio_constraints <- c("eqsumW[1:5] = -1", "eqsumW[6:10] = 1")
tangencyPortfolio(data = ts_portfolio, spec = tgSpec, constraints = portfolio_constraints)
Однако fPortfolio просто выполняет неограниченную короткую оптимизацию, не учитывая групповые ограничения в portfolio_constraints
, т. Е. Акции 1: 5 имеют как положительные, так и отрицательные веса.Я пытался использовать другие решатели, но они не позволяют запустить скрипт.