- 1、本文档共65页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第二章:程序化交易的实现流程程序化交易的实现流程由以下几个部分构成:1、策略形成:2、软件编译:3、后端研发:4、模拟交易:5、实战交易:6:系统维护。上述六大步骤,每一步都离不开数据库。所以数据库的建立是实现程序化交易的第一步。所有的策略软件都必须在一个软件平台上,才能运行。所以软件平台的搭建是程序化交易的第二步。第一节:建立数据库程序化交易的全部流程都是以数据库为基础实现的,所以建立相对完善的数据库是实现程序化交易的前提。当下,在市场上有很多数据商,数据格式和数据品质各不相同。对于一家研究机构而言,首先,你的数据格式必须是统一的。其次,必须保证数据品质,数据出错率小于3万分之一为好。建软件平台是实现程序化交易的基础步骤。01目前,国内有一些公开的商业性软件平台,02但是,使用这些商业性平台进行程序化交易,有两个致命性缺陷。1、逻辑结构复杂的模型程序不能实现。2、商业秘密无法保障。所以,如果你真的要进行程序化交易,就必须自己搭建平台。由此可见,程序化交易的难度和复杂程度,远远超出绝大多数人的想象,这里需要的人力和财力都是巨大的。03第二节:搭建软件平台续至于有些人,天真地以为,用一些简单的算法逻辑在公开平台上跑一跑,就能找到赚钱的策略,纯属异想天开。据我了解,两年来,尝试程序化交易的投资者,90%以上是失败的。就我们本身而言,两年来的程序化交易过程,也是一部血泪史。第三节:策略形成们前面讲了,程序化交易策略的定义。程序化交易策略等于“固定的市场状态”加上“固定的行为规则”。也就是说,在这里我们必须给出两个明确唯一的定义:市场状态定义和行为规则定义。提出策略概念假说,可以依据传统理论,也可以依据我们的直接经验,就是我们在实际市场中观察到的现象,把它抽象成概念,写出来,这是金融家的工作。一、“市场状态定义”“市场状态定义”就是用电脑得懂的语言,定义出一个可公度的概念。比如,AB是一段上涨的推动行情,在我们描述这段行情运行速度的时候,我们就不能用“涨得快”、“涨得慢”这样的字样来描述,因为这样的描述电脑听不懂。但如果我们说“AB之间单位时间内上涨的百分值大于一个数字”,这样电脑就可以懂了。“市场状态定义”是研制投资决策模型的基础环节,只有明确唯一的“市场状态定义”才可能进行数据库检索。续同时,使用动力系统的指标描述市场状态很容易,而使用图形识别技术描述市场状态很困难,这就是为什么算法模型研制的技术难度低,而图形识别模型研制的技术难度高。算法模型就是通过数据计算来实现投资决策的模型,图形识别模型是以图形形状识别来实现投资决策的模型。一个事实:图形识别模型比算法模型:平均胜率高十个百分点以上。平均年化收益率高30%以上。这个差别是致命的差别。二、“行为规则定义”“行为规则定义”是要明确,当模型所要求的市场状态发生之后的行为规则。比如,怎样开仓、怎样止损、怎样赢利退场、风险系数,等等。行为规则的设定在模型构建中是极为重要的环节,卓越的“市场状态定义”配合科学的“行为规则定义”才可能研制出卓越的模型。如果“市场状态定义”很好,但“行为规则定义”不够科学,就会常常出现看对行情亏了钱的现象。“行为规则定义”的依据来自五个方面:1、“市场状态定义”的性质:根据“市场状态定义”的性质,判定理论上最优的行为规则。然而理论上的判定,数据库认不认?却是另外一个问题,所有金融投资行为策略的选择标准是否正确,终极裁判是数据库。2、胜算概率:胜算概率是模型参数中最重要的一个。在设定行为规则的时候,必须要考虑的是怎样才能让胜算概率更高。3、利润风险比就是预期利润和预期风险的比值,当然这个参数越大越好。但是利润风险比和胜算概率是负相关关系,对于同一个“市场状态定义”,利润风险比提高,必定导致胜算概率降低,两者的均衡是很重要的。4、收益率:收益率是指平均年收益率,当然此参数越大越好。5、收益波动率:收益波动率=(某年收益率/前一年收益率)*100%。收益波动率越小越好,因为收益波动率小就意味着收益稳定,我们都知道,稳定收益比爆利重要。有时我们甚至会牺牲收益率,来降低收益波动率。程序化交易的软件编译工作可以分为三步:需求分析;2、逻辑结构设计;3、写程序。第四节:软件编译一、需求分析:一般说来,研制一个卓越的程序化交易策略,需要两个角色的配合,一个是金融家,一个是金融数学家(兼IT专家)。金融家将其设计的模型概念和研发需求,通过语言沟通、图形沟通的方式,告诉金融数学家。让金融数学家明白自己要干什么以及要什么。这就是需求分析。续在需求分析的过程中,极容易产生误解。说者认为自己说清楚了、说明白了,听者也认为自己听清楚了、听明白了。但事实上,听者并没有真正明白说者的意
文档评论(0)