分类
百万富翁交易员如何行动

完整的交易系统设计方案

阅读 582192 9 股道纵横 2019-07-05 07:26

常见分布式应用系统设计图解(十二):证券交易系统

这篇讲的是证券交易系统,这类系统包含的内容很多,但是我们还是把目光放在核心的交易部分,比如说股票交易. 在某个可交易时间,如果卖家 A 要以至少 y 的价格卖掉股票 x,卖家 B 愿以至多 y 的价格买入股票 x,那么这个交易就可以发生. 虽说是交易系统,但是它和任何一个支付平台的交易系统有着显著的不同,它的核心是一个竞价匹配的机制,而非货币支付的机制,简单地说,这个机制包含了这样四个步骤:.

常见分布式负载均衡工具介绍nginx lighttpd haproxy

在架构系统的时候,通常会涉及到分布式,而处分布式里面最前端的是负载均衡器(当然还有cdn). 在网上搜寻一份,对目前常见的负载均衡器做一些介绍和常见组合,不涉及具体配置. 第一种是常见的硬件有比较昂贵的NetScaler、F5、Radware和Array等商用的负载均衡器,它的优点就是有专业的维护团队来对这些服务进行维护、缺点就是花销太大,所以对于规模较小的网络服务来说暂时还没有需要使用;.

常见的iOS手机应用开发流程

iOS应用开发无疑仍会是未来一段时间内的热门,因此,不管是对开发者还是企业管理人员来说,或多或少了解一些应用开发流程十分有必要,本文涉及的大部分内容并不局限于iOS应用,同时也适用Android、Windows Mobile和Blackberry等其他移动平台. iPhone应用的开发并不是一个简单的过程,建议按照以下步骤逐条考虑:.

Android 应用中十大常见 UX 错误

Android 开发者关系团队每天都会试用无数的 App 或者受到无数的开发者发来的请求评测的 App,在评测如此之多的应用之后,他们总结出了10个最常见的错误. 作为一个长期使用 Android 的用户,我在使用 Android 应用的时候经常遇到各种各样的交互上的问题,并且早就想整理它们写一篇文章了.

常见算法在实际项目中的应用

近日Emanuele Viola在Stackexchange上提了这样的一个问题,他希望有人能够列举一些目前软件、硬件中正在使用的算法的实际案例来证明算法的重要性,对于大家可能给到的回答,他还提出了几点要求:. 使用这些算法的软件或者硬件应该是被广泛应用的;. 例子需要具体,并给出确切的系统、算法的引用地址;.

web图像的常见应用策略与技巧

本文介绍一些关于响应式图像的适配应用策略,回退原理,SVG的换色技巧,雪碧图的百分比定位计算公式等相关的一些小知识点,目的在于帮助一部分同学快速的理清图像应用思路,以及一些web图像的应用技巧. 1.响应式图像的应用与回退. 特点:应用简单,上手容易,性能表现良好. 根据不同设备,不同分辨率,不同像素比使用的响应式图像,常用的有两种场景:.

分布式事务解决方案常见误区与实用建议

最近,工作中要为现在的老系统做拆分和升级,刚好遇到了分布式事务、幂等控制、异步消息乱序和补偿方案等问题,刚好基于实践结合个人的看法记录一下一些方案和思路. 首先,做系统拆分的时候几乎都会遇到分布式事务的问题,一个仿真的案例如下:. 项目初期,由于用户体量不大,订单模块和钱包模块共库共应用(大war包时代),模块调用可以简化为本地事务操作,这样做只要不是程序本身的BUG,基本可以避免数据不一致.

列举web应用程序设计中常见的10种错误

作者:Jakob Nielsen. 撰写有关应用程序设计错误的文章是件很困难的事情,因为最糟糕的错误往往具有领域专门性和特殊性. 通常情况下,应用程序的失败有以下3种原因:解决了错误的问题;目标问题正确,但使用的是错误的功能;功能设计正确,但过于复杂使得用户难以理解. 这3个错误都可能导致应用的失败,而我却还无法告诉你怎么做才是正确的.

基于twemproxy的redis分布式应用

根据以往的测试结论,单个redis的实例的内存总量最好控制在8G以内(最大不能超过20G),而实际上应用对redis的内存的需求可能会远远大于8G,因此需要一个保持redis server性能不下降,但可以有效扩充redis server的容量的方案. twemproxy是一个恰当的选择. twemproxy,也叫nutcraker.

分布式应用框架 Dapr

微服务架构已成为构建云原生应用程序的标准,微服务架构提供了令人信服的好处,包括可伸缩性,松散的服务耦合和独立部署,但是这种方法的成本很高,需要了解和熟练掌握分布式系统. 为了使用所有开发人员能够使用任何语言和任何框架轻松地构建便携式微服务应用程序,无论是开发新项目还是迁移现有代码. Dapr是一种可移植的,事件驱动的,无服务器运行时,用于构建跨云和边缘的分布式应用程序.

每日一招:如何建立一套适合自己的高胜算交易系统

阅读 582192 9 股道纵横 2019-07-05 07:26

  • 每日一招:能做到这10点,你就是.
  • 每日一招:如何捕捉强势股的起爆点
  • 上证指数3000点兵临城下!节前.

版权所有:深圳市新兰德证券投资咨询有限公司 | 公司地址:深圳市福田区梅林街道梅都社区中康路136号深圳新一代产业园2栋3401 | 公司电话:400-166-1188

证券投资咨询服务内容由深圳市新兰德证券投资咨询有限公司 (中国证监会核发证书编号:91440300192204488J)提供 友情链接: 从业人员 基金频道 期货频道

证券交易系统架构演进

从名字上看,一定是从分散的交易系统整合而来的,事实上也确实如此。在上世纪 90 年代证券市场发展初期,证券经纪业务是以营业部为单位开展的,每家营业部都有自己的证券交易系统,单独保存自己的业务数据。粗放的管理模式带来了巨大的业务隐患,出现了诸如修改客户结算数据、挪用客户保证金、伪造客户交易指令等风险事件。 2004 年左右,整个行业风险经过多年累积,呈现集中爆发的态势,出现了 “ 南方证券 ” , “ 德隆系 ” 等一系列重大风险案件,促使国家开始对证券行业进行综合整治。也就是从这个时候开始,所有证券公司开始部署集中式的证券交易系统,由技术部门统一运营管理,这一代的证券交易系统也开始被行业内称为 “ 集中交易系统 ” ,并一直沿用至今。

二、集中交易系统承载哪些职能

    完整的交易系统设计方案
  • 账户业务。可以为客户进行账户开户、销户、管理业务权限、处理与交易相关的适当性管理、合规报送等。
  • 资金业务。早期通过银证转帐实现,后来全面实行了客户保证金三方存管制度。
  • 证券交易业务。处理投资者提交的各类交易指令,按照交易规则进行资金和证券的处理,并实现与交易所的委托和成交指令的对接。
  • 信用交易业务。 2010 年证监会推出融资融券业务试点,投资者可以通过向证券公司融资买入股票,也可以融券卖出股票,实现了杠杆交易。系统需要按照信用交易的业务规则处理各类交易指令。
  • 基金代销业务。投资者可以通过证券账户购买开放式基金产品,系统处理投资者的产品申购赎回指令,并实现与相应基金公司的指令交互和资金、份额结算。
  • 清算业务。负责与交易所、登记结算公司进行数据交互和业务核对,完成客户在交易所内产品的资金、股份清算和结算。
  • 查询业务。满足客户需要的各种交易流水、对账单、交割单等业务数据。
  • 理财产品销售。券商为扩大客户投资品种范围,自行提供的各类理财产品的销售。
  • 现金余额理财业务。可将客户投资账户上的现金余额自动申购为货币基金,提高客户的资金收益。
  • 其他管理职能。系统参数设置、客户账号安全、外围系统接入、异常交易监控等。

三、集中交易业务有哪些特点?

要理解集中交易系统的架构,先要看看它承载的业务有哪些特点。与其他金融业务相比,证券交易业务有一个非常大的行业特点,就是 时效性 。主要表现在:

  1. 交易时段限制。交易所开盘只有 4 个小时,在开盘时间范围内的指令才会得到处理。
  2. 竞价交易规则。交易达成是通过竞价实现的,竞价规则是价格优先 + 时间优先。如果指令提交太慢,就可能错过最佳的成交时间。

“ 时效性 ” 的特点,决定了集中交易系统在设计时,必须要满足以下特性:(1)极强的稳定性和高可用性,尤其是在交易时段的高可用性 ( 2 ) 有竞争力的性能指标,保障客户的交易指令能快速到达交易所(3)主要业务都在开盘时间内集中处理,因此需要有足够的系统容量,并能随着业务规模的扩大灵活扩容。

证券业务的第二个行业特点是业务的 外部性 。证券开户需要通过登记结算公司,交易需要通过证券交易所,资金转帐需要通过存管银行,基金交易需要连接基金公司,交易清算需要依赖交易所和登记结算公司提供的结算文件。

第三个特点是金融产品的 多样性 。各种金融产品的交易、结算、交收规则各不相同,要求业务系统具有很好的灵活性,能适应各种不同金融产品的业务处理要求。

第四个特点是业务的 合规性 。根据资本市场的主体责任划分,券商需要对交易的合规性进行前置检查,不允许出现证券卖空、资金透支等交易风险,因此就要求业务系统要保障业务逻辑的一致性。

四、证券交易系统技术架构演进之路

  • 接入层,一般为一个高性能的消息中间件,负责渠道系统的接入和业务消息传输。
  • 业务逻辑层,一般包含业务处理中间件框架,负责将业务消息分配到不同的业务处理模块进行处理。各业务模块通过与数据库交互,处理相应的业务请求。与外部系统相关的业务,则产生相应的业务请求并发送到外部系统,如交易所报盘、银行转账、登记结算公司账户开户等。
  • 数据库,也称为数据层,通过传统的关系型数据库存储所有的业务数据,也有些系统通过存储过程实现部分的业务逻辑。

(2) 数据库承担了大量的业务处理逻辑,为了达到交易系统对容量和延时的要求,必须配置高性能的软硬件设备。软件基本都采用了 Oracle 、 DB2 等数据库,硬件则采用 IBM 的小型机设备,并配备 EMC 的高端存储。是一种典型的 IOE 架构。

(4) 通过数据库复制软件将业务数据复制到备机和灾备机,即实现了业务系统的备份和灾备。正常状态下,备份系统只能执行业务查询,不能处理交易指令。如主机发生故障,可将备份系统启用。如主备系统均不可用,则可切换到灾备机。系统的可用性水平(如 RTO , RPO )主要取决于数据库复制的速度。

(2) 由于每一项证券业务都在使用客户的资金信息,因此资金信息成为资源争用的中心。数据库事务很容易造成数据资源之间的 死锁 ,因此对业务逻辑的编写有很高的要求,加剧了业务之间的耦合,使系统的研发和维护成本越来越高。

第一代证券交易系统从 2005 年开始进入券商,基本满足了当时的市场业务需要。但随着资本市场的快速发展,特别是在经历了 2008 年的牛市行情,市场成交量逐步放大的背景下,部分商开始尝试解决集中交易系统可能面临的容量和性能问题。

第一个思路是寻找支持事务一致性的分布式的数据库系统,试图从数据库层面解决但数据库面临的容量问题, DB2 也曾发布过类似的产品,但最终未能得到供应商的支持。但 Oracle RAC 架构的推出,解决了主备数据库的数据同步和高可用问题,因此得到了全面实施。

弱一致性的引入,可以大幅提高系统的吞吐量,也可以降低单笔业务的延时。在恒生电子的 UF2.0 中,综合采用了客户分拆、弱一致性事务等机制,在券商中得到了广泛使用。但由于是数据库机制,交易延时仍然只能达到 10ms 这个量级。

在供应商的推动下,券商从 2009 年开始全面部署第二代集中交易系统,随后证券市场开始出现了新的变化,包括:

  • 交易量开始稳步上升,两市每天稳定在 3000 亿以上,随时有放大的趋势。
  • 交易所开始推出各类创新的业务品种,包括创业板、融资融券、个股期权、沪深港通、固定收益产品扩容到地方政府债、公司债、企业债、ABS等。
  • 完整的交易系统设计方案
  • 证监会放开非现场开户后,客户争夺更加激烈,市场佣金持续下降。
  • 业务合规性要求越来越高

第一个优化的方向是将账户系统进行剥离,从而为券商优化经纪业务运营体系提供可能性。按照这个思路,部分券商上线了独立的 账户系统 ,将与营业网点相关的账户开立、资料录入、业务审核、合规报送等功能从集中交易完全剥离出来。

第二个优化的方向是将数据查询功能进行剥离,部署独立的 数据中心系统 ,一方面可以减轻集中交易系统数据查询带来的压力,另一方面也可以进一步完善对客户的服务。

第三个优化是将理财产品销售功能进行剥离,部署专门用于处理产品销售的 OTC 系统 ,将原有开放式基金业务也纳入 OTC 系统统一处理。

第四个优化的方向是清算子系统,部分券商将清算职能从集中交易系统完全剥离出来,纳入统一的 清算运营平台 ,更有甚者,将公司自营、资管等业务线的清算也统一考虑,形成了公司级的运营平台。

  • 使用计算机软件进行程序化交易。
  • 对交易延时极为敏感,不同投资者之间存在速度竞争。
  • 可能在较短时间内发出大量订单,对系统稳定性要求更高。

以数据库为中心的交易系统虽然经过了各种架构优化,但也只能将交易延时缩短到 10ms 左右的水平,离专业投资者的要求还有很大的差距。供应商开始推出全内存化的快速交易系统,专门服务少量的专业投资者。快速交易系统只有交易功能,其账户业务、资金划拨、清算均依托集中交易系统。所有业务全部在内存中完成处理,且每个客户的业务均采用串行化处理,确保数据的一致性(这一设计借鉴了期货交易系统)。

快速交易系统将交易延时提升了一个量级,达到了 100 微秒左右,有些供应商的系统甚至更快一些。但由于数据全部保存在内存中,损失了一定的高可用性,且由于业务串行化处理,吞吐量也受到了一定限制,因此单个节点的快速交易无法承载很多客户,券商会根据需要部署多套快速交易系统,有些甚至部署不同供应商的快速交易系统。券商交易系统进入了一种融合的架构模式,如下图所示:

股市真正厉害的人:完整的交易系统设计方案(纯干货)

红线代表着短期趋势,也可以理解为 主要趋势的杂波和毛刺 。在一轮主要趋势中,涨跌一个轮回,上涨过程中有四次(不必然是四次,见绿色箭头)剧烈的回调,你如果重仓、全仓必是爆仓无疑;下跌过程有四次(不必然是四次,见红色箭头)反弹,每一次都是重仓、全仓交易者的葬身之地。这短期趋势构成的回调、反弹有时异常凌厉,三五天就是10%以上的幅度,这样的调整在趋势行情中屡见不鲜,非常难于防范。武汉的豆油大姐为什么声名远播,因为四万赚到一千万是历经劫难的,是出神入化,她能做到真是逆天了。

输家总是变着方的想重仓,在交易中,90%以上的输家是一直抱有重仓、全仓的想法的。其实重仓、全仓从来不是他们的目的,他们的目的是对暴利的不要命的追逐,他们时时刻刻不忘一年千倍、雪球效应。输家的特点就是贪婪,没有不贪婪的输家。这也是 99.8% 的交易者亏损之源。

为什么输家会一直痴迷不悟的徘徊十年八年也不放弃贪婪的想法? 他可能昨天进行了公式计算;今天做做理论推导;明天运用方程求解;后天电脑上模块演练。

就是想找到一个可以满足贪婪而又不承担风险的方法。 输家大多倾向于技术分析,鲁莽、不安的好动;赢家注重交易理念,大多沉思、蛰伏的好静。俗话说大利必有大恶,交易中的普遍规律是:贪婪的对价就是爆仓、就是倾家荡产。这是交易的规律谁也改变不了,这也是为什么赢家拒绝暴利的真正缘由。

(注意:导图看不清晰的可以找我要高清图片,这里会被压缩了)

谈谈如何建立合适自己的交易系统

因为我是趋势交易者,因此我的讲述会更偏重技术分析方面。

小结:作为投资者,要学会界定自己的能力圈,明确自己在投资领域的比较优势,集中精力于自己可以理解、可以把握的市场机会,这样前提下构建的交易系统,才会更适合你。

3、买入后的处理:持有或退出

小结:搭建交易框架,就是根据现有的理论和经验,制定一套如何选择投资标的,如何确定买点及买入后如何应对的流程。

4、逐步在实践中摸索,提高成功概率

小结:通过刻意、重复的训练,形成自己固定的交易风格,内化为自己的本能,是高手们能够稳定获利的原因。

另外, 好的系统同时也要有好的执行力 ,这样才能”截断亏损,让利润奔跑“。职业交易员都有稳定的心态、开放性的头脑和独立思考的能力,能够客观的看待市场。他们做交易有一个共同特点:有耐心和勇气,他们在等待机会时会很有耐心,而一旦发现机会,就敢于果断出手,重仓买入。

每个人的能力是有限的,你需要盯住的仅仅是你最拿手、最敏感的机会。我们跟不上市场每一个细小的变化,我们可以采用一个最笨的办法,把自己简单化处理,等着当市场适合我的交易模式的时候,或者适合我的机会出现的时候,我再出手,这就是建立交易模型的初衷。