问题:
即使使用相同的设置,在我的系统和银行之间,如何计算RSI也有区别?两个系统的源数据(OHLC)相同。由于默认值为“ MA”,因此我故意省略了“ maType”。
到目前为止的观察结果:
阅读此链接:https://quant.stackexchange.com/questions/30134/r-rsi-calculation-ttr-package
似乎标准的TTR RSI使用Wilder EMA。 我认为这可能是RSI结果有所不同的原因。
故障排除的现状:
进行了一些加Wilder = FALSE的测试,该测试给出的RSI值接近于银行的值,但并不精确。我还注意到,无论您添加emaType还是将其保留,RSI结果都不同,这似乎是一个错误,因为忽略它应该使用emaType =“ EMA”。
场景:
使用R R6创建面向对象的类,并使用TTR创建RSI指示符结果:
create_indicator_result_data = function() {
self$rsi_result_column <- round(
RSI(
price = decisions$mktdata_decision_map$Close,
n = 14
), digits = 2
)
},
专有系统中的结果(使用“问价”)。
OHLC数据(从银行API下载)+“ RSI结果”:
Date / Time / Open / High / Low / Close / RSI_result
2019-07-16 13:12:00 1623.37 1623.50 1623.25 1623.50
2019-07-16 13:14:00 1623.37 1623.75 1623.37 1623.75
2019-07-16 13:15:00 1623.62 1623.75 1623.50 1623.50
2019-07-16 13:16:00 1623.62 1623.75 1623.50 1623.75
2019-07-16 13:17:00 1623.87 1624.00 1623.50 1623.50
2019-07-16 13:18:00 1623.62 1623.75 1623.50 1623.75
2019-07-16 13:19:00 1623.62 1623.75 1623.50 1623.75
2019-07-16 13:20:00 1624.00 1624.25 1624.00 1624.25
2019-07-16 13:21:00 1624.12 1624.25 1624.00 1624.00
2019-07-16 13:22:00 1624.12 1624.50 1624.12 1624.50
2019-07-16 13:23:00 1624.75 1625.00 1624.75 1624.75
2019-07-16 13:24:00 1624.87 1625.00 1624.75 1624.75
2019-07-16 13:25:00 1625.00 1625.25 1625.00 1625.00
2019-07-16 13:26:00 1625.12 1625.75 1625.00 1625.50
2019-07-16 13:27:00 1625.62 1625.75 1625.50 1625.50 78.57
2019-07-16 13:28:00 1625.62 1625.75 1625.62 1625.75 80.10
2019-07-16 13:29:00 1625.50 1627.00 1625.50 1626.75 84.78
2019-07-16 13:30:00 1627.25 1627.75 1626.75 1627.75 87.86
2019-07-16 13:31:00 1627.87 1628.75 1627.50 1628.37 89.30
2019-07-16 13:31:00 1627.87 1628.75 1627.50 1628.25 87.14
银行图形上的结果: 银行使用期间也= 14 和“问价”。
Date / Time / RSI result
2019-07-16 13:27:00 73.96
2019-07-16 13:28:00 76.01
2019-07-16 13:29:00 82.09
2019-07-16 13:30:00 85.93
2019-07-16 13:31:00 86.30