橡胶的价格是14000多,为什么橡胶888合约的后复权价格是2400左右?用888合约后复权去跑策略,由于后复权价格与真实价格偏离太大,会导致计算的开仓仓位不准确。
例如:设置按账户金额10%开仓,真实价格只能开5手,但是由于888合约后复权价格太低,会发出指令开25手,但实际是账户金额不够,导致策略无法测试。
计算手数时要还原价格
使用rollover系统函数
“橡胶的价格是14000多,为什么橡胶888合约的后复权价格是2400左右?”
这个问题不知道怎么回答。为什么复权后价格不是2400左右?那么正确的应该是多少?
“用888合约后复权去跑策略,由于后复权价格与真实价格偏离太大,会导致计算的开仓仓位不准确。’
那么计算开仓仓位的时候可以把价格数据除权再计算
”例如:设置按账户金额10%开仓,真实价格只能开5手,但是由于888合约后复权价格太低,会发出指令开25手,但实际是账户金额不够,导致策略无法测试。“
由于 复权价格 = 原始价格 * 复权系数,那么计算手数的时候只要把公式变形一下
原始价格 = 复权价格/复权系数,就可以计算出5手
“橡胶的价格是14000多,为什么橡胶888合约的后复权价格是2400左右?”
首先,我并不是想挑战橡胶888合约的后复权价格算错了。只是很好奇,其他品种的后复权价格差异没有这么大,所以才会有此疑问。可能是因为橡胶在换月的时候跳空比较多,或者是因为什么其他原因?
差异大好像不能算数据不正常的理由......复权系数每次换月都会继承上一次换月的比值,所以上市久,或者每次换月价差大,都可能是复权数据和真实数据很大的原因
看它怎么算出来的就知道为什么以及怎么算回去了