vn.py量化社区
By Traders, For Traders.
Member
avatar
加入于:
帖子: 42
声望: 3

用的2.1.8版本,sqlite数据库。具体表现是,系统运行超过一定时间(5小时以上?因为有点随机,发现界面卡死也不一定是当时时刻,估计得不是很准确)。
程序正常运行时cpu一般在5%以下,内存一般在100M以下。
界面卡死时cpu会到30%左右,内存有时候在500M左右,有时候会上G,可能跟运行时间有关系。
其实这个时候vntrader并未崩溃掉,只是UI不刷新了而已。有时候等上几分钟,有时会等上20分钟左右,内存占用自动降下去后(观察了一下,内存降得稳定有规律,是否是python的内存回收机制在工作?),UI就能正常活动了。
试验了两台电脑,一台既跑策略也录数据,另一台只录数据,都会发生同样的问题。
看到有同样的问题的答复是,盘后要关闭vntrader,以便释放资源。下次开盘时再重启。
不过这个解决办法不是个根本措施。也有可能开盘前做了重启,但在盘中UI再卡死,这个时候会影响到交易操作。现在贵金属的交易时段已经是5个半小时,时间很长了,很可能在交易时间段会出现这个问题。我今天早上9点前启动了vntrader,因为中午休息时间期货公司不断开连接,所以一点半前没有再重启vntrader,到3点过5分时,发现UI已经卡死了(没一直在电脑前,不知道是收盘前卡死的还是收盘后卡死的),看日志整个运行期间都没有断过连接,也不像是CTP的反复中断重连消耗的资源。

这个问题是框架本身设计的特性导致的,还是哪个地方存在某个bug?如果将来某些品种连续交易时段超过十来个小时,这个问题的会不会显得更加突出?
在后续的版本中,会考虑解决这个问题吗?谢谢!

Administrator
avatar
加入于:
帖子: 4466
声望: 255

看来比较像是内存耗尽导致的。

请问你的内存大概是多大的?如果只是交易一般2核4G最低配置,如果录制行情推荐8G或者16G了。

另外请在cmd中用python -m vnstation命令启动,如果因为内存问题挂掉,在cmd中会有提示。

Member
avatar
加入于:
帖子: 42
声望: 3

我机器内存8g的,UI不响应时内存应该没到耗尽的程度。用-m vnstation没看到输出有问题的信息。我现在把策略和行情记录分开,行情记录用no_ui的进程来跑,再观察几天看看是否还有问题。谢谢答复!

© 2015-2019 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号-3

沪公网安备 31011502017034号