gpt4 book ai didi

r - 从局部最小值/最大值计算累积增长/下降

转载 作者:行者123 更新时间:2023-12-01 01:12:17 26 4
gpt4 key购买 nike

我正在学习 R(及其通过 quantmod lib 在交易任务中的应用)并定期浏览社区以从这里获得许多新知识和技巧。我对 R 的总体印象和特别是 quantmod lib 的印象 - 它很棒。

在这一点上,我需要经验丰富的 R 用户的帮助。我正在使用通过 getSymbols 下载的时间序列,我需要分别从局部最小值/最大值计算累积增长/下降。

我可以使用 FOR 循环解决我的任务,也可以在 MS Excel 中进行必要的建模,但我想找出更简单的解决方案,它不需要 FOR 循环并且在 R 中更“ native ”。

例子。
输入数据:

20121121    79810
20121122 79100
20121123 80045
20121126 81020
20121127 80200
20121128 81350
20121129 81010
20121130 80550
20121203 80780
20121204 81700
20121205 83705
20121206 83350
20121207 83800
20121210 85385

结果:
            CLOSE   Cumulative gr/dd
20121121 79810 N/A
20121122 79100 0.58%
20121123 80045 1.55%
20121126 81020 2.37%
20121127 80200 -0.10%
20121128 81350 0.06%
20121129 81010 -0.76%
20121130 80550 -0.82%
20121203 80780 0.73%
20121204 81700 3.78%
20121205 83705 5.19%
20121206 83350 -1.50%
20121207 83800 1.67%
20121210 85385 2.22%

最佳答案

计算已经在tseries包为函数 maxdrawdown .这是其示例的开头:

mxdrwdR> # Toy example
mxdrwdR> x <- c(1:10, 9:7, 8:14, 13:8, 9:20)

mxdrwdR> mdd <- maxdrawdown(x)

mxdrwdR> mdd
$maxdrawdown
[1] 6

$from
[1] 20

$to
[1] 26

将其转换为百分比非常容易——查看函数本身的(短)代码。

关于r - 从局部最小值/最大值计算累积增长/下降,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14737899/

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