fk

109 阅读7分钟

风控模块————账号维度 控的维度(指标):info count(信息量=报单+撤单)、撤单量、涨跌停、资金 输入:统计量————资金,driver仓位、撤单量

维度 metric(这个): info count(信息量=报单+撤单)、 报单、 撤单量、 涨跌停、 资金、

每个维度对应一个threshold

执行action: 输入+维度+threshold=》推倒出action - turn off open - turn off trade - turn off feed
recover action: 低于阈值了,重新打开

scope 在合约维度/contract group维度/账号维度/security type(stock、future)/ product / exchange(最高级别) - exchange SSE - exchange_group SSE\SZSE - exchange + security SSE STOCK FUTURE - exchange + security group SSE STOCK/ETF - exchange + security + product INE(上交所) Future SC(原油) - exchange + security + product INE(上交所) Future SC(原油/铁矿石 - exchange + security + product + contract(cid可为空) 110|120|130 各指向一个measument - exchange + security + product + contract group(cid可为空) 110+20+130 3个合约映射同一个measument

风控是在scope上聚合metric上的measument,与threshold对比,推倒出action

谓词 predict 大于等于/小于

no market data warning metric: market data warning measument: 多长时间没行情 scope:合约 action:turn off trade

有一个合约到measument到映射 product IF上关于cancel count的统计是50 此时来了一个

定时触发比较(deduce一次)————根据当前统计量,谓词、和阈值,推倒出action

我们以两条风控规则为例 scope: contract metric: cancel_count predict: > threashold: 1000 action: tunn_off_trade exchange XXX security Future contract 1111

scope: product
metric: cancel_count 
predict: > 
threashold: 1000 
action: tunn_off_trade
exchange XXX
security Future
product SC(原油)

内部就会维护两个measument1 measument2 contract 1111会映射到这两个measument,如果来一个cancel count回报,这两个measument里的值都会增加

输出:发送risk control request ——————————————————————————————————- 策略配置

  1. contract
  2. contract trigger 听哪些
  3. pricer————从哪里拿到价格(选定价模型)
  4. max position————0仓附近最多开几手
  5. position radius————波动范围
  6. pricer以及pricer参数,应该用哪些model

策略 feed driver收到行情,disrupter,配3个trading core,每个trading core一个disrupter

disrupter—— feed driver push trading core ——pop,同时在pop回报

,每个core上跑很多策略,core内部有个cid到策略的一个接口(trigger flow)的表,将cid喂给策略

策略收到行情之后,每个策略都有一个pricer————输出valuation price (估价)(未来涨到多少钱,跌到多少钱),pricer里面有一些model,都是本地的model

发现最新的valuation price到99,如果发现已经挂出去的单子不挣钱,就撤单 发现盘口100,valuation 102,要迅速把100的卖单吃掉

也可能做一些不是马上下单的决定———比如等哪一单成交再下单

有时候下单发给agent,agent会配一些参数————例如5秒后未成交,就撤单/如果cancel不掉,5s后再cancel一次

agent发给trade driver————事前风控和拆单

事前风控:price离行情过于远 拆单:每个券商或者交易所能做的操作不一样(例如股票只能平昨), driver里有昨有今,如果卖单发现昨仓不够,就拆单失败了

l4行情 tbt来了,order book中的 bid/ask volume一定会变 难点:cancel 对上海在order里,对深圳在cancel

去年11月之前,sh和order和trade会乱序,两个流过来,不保序, order1--卖200 order2--买100,交易所只会发一个trade,说o2打掉了o1, o2是不会有买100的order的

sz有市价单,order来了,一定会被吃掉,但是不知道在哪个价格会被吃掉,orderbook一定不对,所以不能推现在的行情,

自己机器用高速网卡——网卡buffer->kernel buffer没必要,kernel buf-> 用户态buffer,kernel by pass feed driver -> 不用linux的锁,用自旋锁 交换机做到最少跳

交易所————————————————————————————————————————————-- 中国目前有多个交易所,涵盖股票、债券、期货、商品等多种金融产品。以下是主要交易所及其交易品种的概览:

证券交易所 上海证券交易所(SSE)

股票:A股、B股 债券:国债、地方政府债、公司债、企业债、可转换债券、可交换债券等 基金:封闭式基金、开放式基金、ETF(交易所交易基金) 其他:证券投资信托 深圳证券交易所(SZSE)

股票:A股、B股 债券:国债、地方政府债、公司债、企业债、可转换债券、可交换债券等 基金:封闭式基金、开放式基金、ETF、LOF(上市开放式基金) 创业板:以科技企业和中小企业为主的股票 其他:证券投资信托 期货交易所 上海期货交易所(SHFE)

金属期货:铜、铝、锌、铅、镍、锡、黄金、白银 能源化工期货:螺纹钢、热轧卷板、天然橡胶、沥青、石油沥青、燃料油 大连商品交易所(DCE)

农产品期货:玉米、豆粕、大豆、豆油、棕榈油、鸡蛋 工业品期货:聚乙烯、聚氯乙烯、聚丙烯、铁矿石、焦煤、焦炭、乙二醇 郑州商品交易所(ZCE)

农产品期货:小麦、白糖、棉花、苹果 工业品期货:PTA(精对苯二甲酸)、玻璃、甲醇、动力煤、菜油、菜粕 中国金融期货交易所(CFFEX)

金融期货:股指期货(沪深300、上证50、中证500)、国债期货 商品交易所 上海黄金交易所(SGE)

贵金属:黄金、白银、铂金 上海国际能源交易中心(INE)

能源期货:原油期货、燃料油期货 区域性股权交易中心 全国中小企业股份转让系统(新三板)

股票:中小企业和创新企业的股票 地方股权交易中心

各地的地方股权交易中心,主要服务于当地中小企业的股权、债权及其他权益的交易。 其他 中国外汇交易中心

外汇:人民币兑主要外币的即期和远期外汇交易 货币市场:银行间市场的拆借、回购、票据等交易 北京金融资产交易所(CFAE)

金融资产:债权、股权、信托受益权等金融资产交易 通过上述交易所的划分和交易品种的说明,可以看到中国金融市场的多样性和复杂性。各交易所在不同领域和产品上都有其独特的定位和作用。

Alpha策略和T0策略是两种截然不同的投资策略。Alpha策略注重长期持有和获取超额收益,依赖投资经理的选股和市场判断能力;T0策略则关注短期内价格波动,依赖技术分析和高频交易来实现日内利润。了解这两种策略的特点和适用场景,可以帮助投资者在不同市场环境下选择合适的投资方法。

Alpha策略和T0策略是两种截然不同的投资策略。Alpha策略注重长期持有和获取超额收益,依赖投资经理的选股和市场判断能力;T0策略则关注短期内价格波动,依赖技术分析和高频交易来实现日内利润。了解这两种策略的特点和适用场景,可以帮助投资者在不同市场环境下选择合适的投资方法

事前风控 流控 股票的open_count,事前只会制止交易,不会控策略 如何计算:T0和alpha共同交易,昨多1w,t0最多只能卖1w,alpha打4000的可卖量,剩下6000是t0用,t0的open count是6000, (根据昨仓减 alpha可卖量算出来,注意不考虑融券【只增加可卖量,不增加持仓】,现在不做) alpha————每天打一个target 为什么不事前做————复杂

kernal by pass———— 柜台给的API的so里做了/或者FPGA组在其上面封装了一层做了 收包————厂商提供,用Linux收包一定会过kernal 应用层————pass的过程

这是一个行为, intel 网卡用DPDK支持kernal by pass, dpdk——允许在intel网卡上实现kernal by pass。 DPDK(Data Plane Development Kit)是一个用于高速数据包处理的开源软件项目,最初由Intel开发。DPDK提供了一组库和驱动程序,使得用户空间应用程序可以高效地进行网络数据包的处理,从而绕过内核,减少延迟,提高吞吐量。