引言:出事了?
1.还记得曾经的7·23甬温线特别重大铁路交通事故吗?2011年7月23日晚上20点30分左右,北京南站开往福州站的D301次动车组列车运行至甬温线上海铁路局管内永嘉站至温州南站间双屿路段,与前行的杭州站开往福州南站的D3115次动车组列车发生追尾事故,后车四节车厢从高架桥上坠下。这次事故造成40人(包括3名外籍人士)死亡,约200人受伤。
2.还记得那两个无辜的程序猿吗?无证程序员造成了7.23温州动车追尾特别重大事故?“温州事故原因有新进展:铁路调度程序员出现BUG(故障)是本次事故的根本原因,警方已经拘留了两名无证程序员。案件在进一步审理中。”
3.关于程序员的故事有了最新的版本?你知道吗?他的名字叫做光大证券:周五上午11时后大盘突然快速拉升,盘中最高报2198.85点,不足十分钟时间内拉升百余点,涨幅一度超5%。板块方面,银行、证券为首的板块涨幅也突然放大,涨幅均超过4%。此外,传媒、环渤、煤炭等板块涨幅超1%。盘中,中国石油、中国石化、农业银行等权重股也瞬间触及涨停。光大董秘自述“乌龙指”过程:系统出错:"系统的生成系统和执行系统先后都发生逻辑错误,2分钟内产生了2.6万手额外的市价委托单造成市场波动"。
一、来着证监会的结论:证监会:“乌龙指”不是人干的
针对16日光大证券异常交易情况,中国证监会新闻发言人18日通报说,经初步核查,原因是光大证券自营的策略交易系统存在设计缺陷,连锁触发后生成巨额订单,尚未发现人为操作差错。
光大证券自营的策略交易系统包含订单生成系统和订单执行系统两个部分,存在程序调用错误、额度控制失效等设计缺陷,并被连锁触发,导致生成巨量市价 委托订单,直接发送至上交所,累计申报买入234亿元,实际成交72.7亿元。同日,光大证券将18.5亿元股票转化为ETF卖出,并卖空7130手股指 期货合约。
发言人表示,在核查中尚未发现人为操作差错,但光大证券该项业务内部控制存在明显缺陷,信息系统管理问题较多。上海证监局已决定先行采取行政监 管措施,暂停相关业务,责成公司整改,进行内部责任追究。同时,中国证监会决定对光大证券正式立案调查,根据调查结果依法作出严肃处理,及时向社会公布。
二、关键词
程序调用错误、额度控制失效、设计缺陷、连锁触发、累计申报买入234亿元
三、我所知道的金融系统
1.关于BUG:我是做金融行业的,任何一个金融机构的系统一般都包括开发系统、测试系统(准生产)、生产系统。开发系统是程序员的世界,测试系统是测试工程师的战场,生产系统是业务员工作的基地,三者之间物理上网络隔离,老死不相往来。业务流程:程序员开发的东西,经历单元测试,系统测试无问题后,提交测试环境进行验证,测试工程师进行功能性验证,验证无误后,有生成运维系统工程师实施生产环境部署。中间环节都是严格控制。从逻辑流程的角度来讲,功能实现程序员负责;缺陷验证测试工程师负责;系统运行运维工程师负责;系统操作业务人员负责。我就想不明白了,这个有bug的系统,怎么就混进去了呢?严格意义上来讲,通过测试工程师验证过的系统就是已经和程序员无关了。
2.关于额度控制
去银行做过大额转账吧?超过5w的金额,都是需要操作柜员执行录入,由复核柜员进行业务确认的,一个人录错,可以理解,两个人同时录错,你糊弄鬼呢?234亿元的大单啊,我不知光大证券的市值是多少,但是我不相信一个业务员有权限录入234亿的大单。额度控制不起作用的说法,是不是需要抓两个无证测试工程师来顶缸呢?
四、高危的程序猿,如何自保
考个证吧,至少弄个软件设计师的证书,否则哪天真给当做无证程序猿抓起来,动物保护协会也不会理我们的。至于自保秘籍,大家各叙己见吧。欢迎留言,人多力量大,至少能形成一个《程序猿自保入门手册》。关于光大证券“乌龙指”,缸顶何方,持续关注中?