前言
今天要和大家分享的一个在使用ptrade过程中遇见的问题是功能号一天执行了300万次!
一、问题描述
客户反馈339204功能号一天执行300万次左右。
二、解决方案
1、339204是历史银行转账查询功能号,
根据home/fly/config/custom_config.conf配置项sync_seconds = 6
默认为6秒,在before_trading_start开始,after_trading_start结束,一般为9:10-15:30进行查询,
PTrade量化后台未落入日志,建议客户在sa节点插件进行抓包339204功能号;
说明:custom_config.conf配置项sync_seconds查询会发送362802转换为柜台333104持仓查询、362800转换为柜台333101委托查询、362812转换为柜台332704综合业务委托查询、362803转换为柜台332255客户资金精确查询、362903转换为332250证券账户当日转账流水查询、362931转换为339204历史转账流水查询
2、客户抓包后,查看339204应答返回的position_str定位串是从2022年进行返回,该功能号默认一次查询50条,因查询历史日期较久,需请求多次进行返回,
目前量化默认查询10年内数据,客户四台服务器,大概500个交易运行,一个交易在6S内大约需查询2次进行查询结束,1分钟预估查询20次,1小时预估查询1200次,500个交易1小时查询预估为60W次,全天大概312W次请求;
3、经查看柜台事件,339204返回数据受1178开关影响,默认开市期间返回30天,闭市期间返回100天数据,如客户限制一次返回30天数据,可以减少量化的请求次数,与客户确认1178开关配置,该开关配置为30,开关字符类型配置不生效,默认返回全部,建议客户进行柜台1178开关修改;
4、量化部分提交需求进行修改,减少339204查询次数、查询时间,无需查询10年数据。
注:1178-周边历史查询交割在开闭市期间的允许日期间隔,在字符串值中设置开市闭市周边历史查询交割的允许日期间隔,用斜线隔开;默认是30/100,表示开市期间允许查询30天(自然日)的历史数据,闭市期间允许查询100天(自然日)的历史数据。注:开市期间是按交易时间为6禁止查询统计时间来判断的。
结语
ptrade的渠道可以通过《ptrade开通详则》来获取,感谢看到这里,如果有更多疑问欢迎在评论区提出!