0

我目前正在尝试为投资组合回测设置 PSQL 数据库,并且想知道是否有人为未来的更改提供了更自动化的解决方案。

假设我有一个包含股票 A、B 和 C 的投资组合。我每个月都会更改投资组合的权重。假设 2015 年 1 月,我的体重是 A-25%、B-25%、C-40%。为了计算一个 1000 美元的投资组合我需要的股票数量,我只计算 A * 1000/A 的股票价格的权重,以此类推 B 和 C。每天,我检查 A、B 和 C 的价格并相乘通过股票数量来获得总投资组合的价值。

在 2 月份,如果我将投资组合的价值更改为 A-25%、B-35%、C-40%,那么我需要通过取 1 月最后一天的投资​​组合价值并乘以 2 月份的权重来重新平衡,除以股票的股价。

问题是我想测试如果我在月中添加重新平衡会发生什么。我不想只存储投资组合的总价值,因为如果我添加再平衡,它可能会改变。

我目前将每个月的投资组合百分比输入数据库。在调整额外的再平衡时,计算投资组合每日价值的最简单方法是什么?

为该月的每一天插入等于上次重新平衡的股票数量的行是否更好?例如,我是否应该只有每次重新平衡的股票数量,所以 2015 年 1 月 - 每股股票数量,2015 年 2 月 - 每股股票数量。或者我应该有 2015 年 1 月 1 日 - 每个股票的数量,2015 年 1 月 2 日 - 和以前一样,2015 年 1 月 3 日 - 和以前一样...... 2015 年 2 月 - 每个新的股票数量。如果在第一个示例中这样做,我将如何在 SQL 中设置条件,以便我使用最后一次重新平衡,但在下一次重新平衡时停止?我是否只需要获取重新平衡的日期列表,然后一次循环两个,一个作为开始日期,一个作为结束日期?

任何帮助将不胜感激

4

1 回答 1

1

即使使用先进的回溯测试工具,也有诸如 Quantconnect/Lean 或 Quantopian /Zipline 之类的回溯交易工具,如果不对市场影响/滑点/佣金进行建模,就很难信任并在数据库上进行可靠的测试,这可能是在浪费时间。

重新平衡我的经验会对算法产生很大影响。特别是如果您模拟滑点和佣金。

于 2017-05-04T04:58:07.270 回答