最近写了不少行情数据模拟工具,在写的过程中遇到各种问题,同时也有些体会,记下来!
1.经常涉及到时间的比较,一开始我会先比较时,然后分,再到秒,这让代码量比较大,还容易漏掉某个点,后面想到把时间转换为int型的数字
比如int i_currenttime = 10000*hour +100*min+sec
2.行情最新价的波动范围在10%,如果要用随机数产生价格可以这么做先产生一个0-0.2的随机数,然后0.9加上这么随机数再乘以当前价格
ran_numf = rand() / (double)(RAND_MAX);
ran_numf = ran_numf/5.0;
marketData->LastPrice = (marketData->HighestPrice)*(0.9+ran_numf);
3.随机产生的价格如何更接近真实数据呢,我们可以采用正态分布产生随机数,这样的价格分布就跟真实数据很接近了