# 一、Data 模块功能 ### 功能块: [数字币(合约|现货|秒合约)、股票(美股|泰股|马股|印尼股|印度股|新加坡股|港股|英股)、新股申购(美股|泰股|马股|印尼股|印度股|新加坡股|港股|英股)、大宗交易(美股|泰股|马股|印尼股|印度股|新加坡股|港股|英股)、期权(印度)] ``` 1、自动监控服务功能 1>初始化代码列表 2>监控代码价格(行情|设置)缓存 3>监控挂单 4>监控持仓 2、调用服务功能(详细逻辑-->见相关功能设计文档) 1>下单 2>止盈止损 3>撤单 4>平仓 5>一键平仓 3、相关调用文档(http://g.jd66.cc:3001/project/56/interface/api) ``` # 二、Data 模块优化【TODO】 ### 分布式计算(用户最小单元,即为:5000个用户启动5000个任务队列)-(优点:有序队列、高并发、计算速度(例如:mysql死锁、数据的一致性、快速计算)) ``` 一、交易处理 1>用户下单 -> 用户挂单队列周期性有序执行 -> 返回结果(UI交互) 2>挂单计算 -> 处理状态|开仓价格|开仓手续费等(队列缓存:清理) -> 写入用户存储队列(挂单到持仓资产变更) 3>持仓计算 -> 处理状态|平仓价格|平仓手续费等(队列缓存:清理) -> 写入用户存储队列(持仓到平仓资产变更) 4>存储计算 -> 有序执行(挂单|持仓) -> 处理用户存储队列 二、用户撤单 1>用户挂单队列 -> 清理用户挂单队列的订单 -> 写入用户存储队列(挂单到撤单资产变更) 三、用户修改订单(止盈止损) 1>用户持仓队列 -> 更新用户持仓队列订单 -> 写入用户存储队列(更新用户订单信息) 四、用户平仓 1>平仓 -> 写入用户存储队列(持仓到平仓资产变更) -> 清理持仓队列中的订单 -> 返回结果(UI交互) 五、用户一键平仓(返回结果是否要异步处理) 1>平仓 -> 写入用户存储队列(持仓到平仓资产变更) -> 清理持仓队列中的订单 -> 返回结果(UI交互) ```