我目前正在尝试实施我一直在玩的交易想法。它由50多种证券组成,其策略与此非常相似。 (我目前使用的包是quantmod)。
http://www.r-bloggers.com/backtesting-a-simple-stock-trading-strategy/
对于那些对点击不感兴趣的人来说,这是一个策略,它将查看X天(在他的情况下为200天)并根据库存中达到的峰值输入一个位置。我理解如何为我的想法做这个策略,但我无法掌握如何将我的数据汇总成一个摘要。
有没有办法可以将我所输入的所有头寸的摘要合并到一个更大的投资组合摘要和图表中,而不是S& P 500?
有关我可以在何处找到资源或获取信息的任何建议。我已经看过R的投资组合分析包,我不相信这会对我有多大帮助。
提前谢谢。
编辑:在链接的底部,有3个索引是FTSE,N225,DJIA。我可以将这3个摘要组合起来显示与下面相同的输出,但结合
FTSE:
Me Index
Cumulative Return 3.56248582 3.8404476
Annual Return 0.05667121 0.0589431
Annualized Sharpe Ratio 0.45907768 0.3298633
Win % 0.53216374 0.5239884
Annualized Volatility 0.12344579 0.1786895
Maximum Drawdown -0.39653398 -0.5256991
Max Length Drawdown 1633.00000 2960.0000
我可以获得相同的输出但是3种证券数据合并了吗?有没有一种有效的方法。非常感谢。节日快乐
答案 0 :(得分:0)
在这种情况下,我对你的意思是“结合”有点不清楚。如果你想要一个代表所有三个交易所的综合回报的单一列,就好像它们是一个统一的市场一样,这真的很棘手,因为交易所以不同的货币(英镑,美元,日元等)交易。必须对基础分析进行大幅修改,以考虑到每日外汇汇率的波动。
我怀疑这不是你想要的。相反,您只是询问如何采用三个连续的两列输出并将它们转换为一个并行的六列输出。
如果确实如此,那么您需要重写链接底部附近显示的testStrategy()
函数。正如它目前所写的那样,该函数需要三个输入:索引名myStock
(允许值为FTSE,DJIA或N225),以及两个整数值nHold
和nHigh
。您需要更改它,以便它接受五个输入;例如,myStockA
,myStockB
和myStockC
,加上已经提到的两个整数值。然后,当前引用myStock
的每一行都必须复制三次。最后,您在底部看到的两条cbind()
行必须进行修改,以便不包括将数据合并为两列,而是包括所有六列。
有关如何编写和修改自己的R函数的详细介绍教程,请参阅this。要了解如何使用cbind()
功能,您必须使用六个而非两个输入来调用,请参阅this。