橡胶焦煤的后复权价格可能有问题,我用如下复现代码订阅数据:
Events
OnInit()
{
SubscribeBar(ru888.SHFE,1d,20230101);//,20220801);jm888.DCE,
SubscribeBar(ru888.SHFE,5m,20230101);//,20220801);
Range[0:DataCount-1]
{
AddDataFlag(Enum_Data_RolloverBackWard()); //设置后复权
}
}
我分别用起始时间2023/03/01和2017/01/01,发现K线图橡胶的价格是相同的,约2015,离橡胶真实价格11715差很多,如图:
请告知我该如何使用橡胶的复权数据?
谢谢,我全明白了
所谓的后复权,就是每次换月以后修改后面的新数据。所以只有第一个主力合约的数据,后复权和未复权是一致的。而且这个后复权是不论你怎么取时间范围,都是不会变化的,否则随便改改时间范围,数据变了,测试报告也变了,这怎么能行?
所以我这里没有听懂你的问题到底是什么,复权数据到底哪里错了?为什么起始时间不同,数据就应该不一样?为什么不可以和真实价格有差距?后复权的定义你有明确的了解过吗?
谢谢您的答复,我大致明白了。按照网上查到的:
后复权要看我们使用的数据以什么时候为起点,可以是上市当日,也可以自己任意取一个开始日期,可以粗糙地理解是从开始日期把往后的数据向上平移,去除缺口 后复权后价格=复权前价格× (1+流通股份变动比例)+现金红利
追问:是不是tb的后复权数据都是从上市当天开始算,所有数据已经固定了,不管我订阅数据从哪天?(这样可以计算量更少,不用每次订阅都要算一次-之前经历,但同真实价格区别蛮大,)
对的 所有888数据都是从这个品种的上市作为起始源头开始计算 所以后复权数据计算出来以后就是固定死的,不会因为你调整单元里的数据起点而发生变动