[img]http://dn-filebox.qbox.me/8c218c119046b2a25df2d9c7b00c1e0fa6899bdd.png[/img]
NO:01

交易策略 ≠ 交易系统。

一个完整交易系统,其实是交易者给自己定的各种规则,它包括了交易的各个方面,其中并没有给交易者留下一点主观想象的余地。大多数成功的交易者都是使用机械交易系统,这并非偶然。

一个正期望的交易系统可以自动运行整个交易程序。在交易中每项决策,交易系统都会给出答案。它至少应该包含策略选择、品种选择、资金管理、下单交易、极端行情应对、交易心态等等。

NO:02

策略选择:
[img]http://dn-filebox.qbox.me/cdce4809f4b89c6dc055a0de8bda725dcf8d3b68.jpg[/img]
1、多因子量化对冲策略

多因子策略用在股票量化比较多一些。影响价格涨跌的因素不胜枚举,而这些 “ 因素 ” 就是因子!最简单的方法,先找一些自己熟悉的因子,比如增长率、市值、ROE、PB、PE、涨幅、换手率等等。然后一个个往里面删减,看看效果如何,效果好了留下,效果差了删除,反复重复这个过程就能找到合适的因子。

2、CTA策略

传统的CTA策略大部分是趋势追随策略。俗称就是追涨杀跌。但是这种策略有个缺点,在没有行情的时候容易亏钱,历史上很多CTA基金就是这样被熬死的,倒在了黎明前的黑暗。为了避免这点,就需要一些在没行情的日子里也能喝口汤的策略,这类策略就是反转策略。和趋势追踪相关,反转策略俗称高抛低吸。

3、套利策略

套利策略利用不同资产或不同市场之间不合理的价格关系,通过买进低估资产,卖出高估的商品,在未来价格重新回归合理过程中获取价差收益的交易策略。关于套利策略有许多类型:期现套利、跨期套利、跨品种套利、分级基金套利、期权套利、ETF申赎套利等等。

[img]http://dn-filebox.qbox.me/fe6172aa6c55978d84dfaed08bdca77bed8ed68d.jpg[/img]

NO:03

品种选择:

做过交易的人知道,每个品种都有各自的性格。有些品种性格很 “ 火爆 ”,流动性好、波动大、容易走出流畅趋势;有些品种性格很 “ 温顺 ”,常年都在震荡。

[img]http://dn-filebox.qbox.me/ce36c8a0e579407e5cc061de6e7bdafd2d6d2abc.jpg[/img]

不同的策略适应不同的行情,选择好交易品种,对期货交易这项大工程来说是一个非常关键的开始。从绝对意义上来说,没有绝对好的品种也没有绝对不好的品种。根据投资风格的不同,以及风险承受力的不同,交易者要针对自己的标准进行相应的调整。

另外,在交易中固定收益策略也是整个交易系统中不可或缺的一部分,它是账户稳定与否的另一个壁垒。关于固定收益可以有很多选择,比如:国债逆回购、货币基金、银行券商理财产品等等。

NO:04

参数设置和参数优化:

策略编写要简单到不能再简单,但是这种简单是历经复杂之后简单!在策略中参数越少越好,核心参数最好不要超过3个。

也很多人说策略最好不要设置参数,做好了的策略应该把参数固定在模型内不再改变。但是这样未免太过偏激,因为市场总是在不断进化和变化的,而我们使用的策略也是尽可能抓住这种变化的规律,留一个参数就是为了方便调节这种变化。

[img]http://dn-filebox.qbox.me/5a3b4533d44ff395378fa033420009ca641689a5.jpg[/img]

比如说均线系统,如果近几年该品种波动率很高,总是大起大落,那么就用短一点的周期就可以了。因为行情总是比均线走的快,不会频繁出现开平仓信号。如果未来几年该品种不活跃了,那么就应该把周期调长一些,以适应市场。而不是以一刀切的方式解决没有参数就不用面对参数优化的问题。

[img]http://dn-filebox.qbox.me/03f12e846f5297b6ec787ec75f6bf33efe5d7a01.jpg[/img]

如果参数过多的话,就等于给策略更大的灵活性,以适应更多情况的行情。但在具体选择参数的时候就会面临很大的困惑,因为经过优化后的参数可能只是最符合历史行情的参数,也就是所谓的 “ 过度拟合 ”。因为在历史行情中,即使是最烂的策略,都可能因某些参数让该策略表现出优异的假象。

NO:05

资金管理:

1、初始仓位

资金管理首先涉及的是初始仓位,很多人开的仓位都很重,账户上有多少资金基本都能发挥它最大的效用,高效运用资金,这种方式在对的行情里面,盈利可能很大,可能一年翻好几倍都不是新鲜事,但是这种方式一旦遇到不利的行情,资金下滑的速度同样也会远超你的想象。

2、加减仓

达到什么条件加减仓,加减仓的时候加减多少?这些都会直接影响交易结果。加减仓的方式有很多,有顺势加减仓的、有逆势加减仓的。而哪种加减仓方法更科学,对应的是你的赢利点 ,不能一概而论。

[img]http://dn-filebox.qbox.me/0de66471665e2745d072c75396c07da1366eab57.jpg[/img]

如上图,CTA策略就比较适合 “ 金字塔加减仓法 ” 。即初始进场的资金量比较小,后市如果行情方向一致,逐步加减仓,加减仓比例越来越小,仓位控制呈下方大,上方小的形态,像一个金字塔。

NO:06

入场策略:

一个好的买点,是成功的一半,它能够让你迅速摆脱成本区。关于入场方式,有两种主流方式:突破开仓和回调开仓。如果你是以为有经验的交易者,就会发现,无论以哪种方式开仓,其实区别不大。

突破开仓,这种大道至简略显粗暴的方式是公认的进场交易方法之一。好处是,不会错过行情。但是却有一个缺点,遇到假突破时就得频繁止损。因为在盘中没有人能够完全确定这是一个真突破。如下图:

[img]http://dn-filebox.qbox.me/e0733a91ff71a523b571f5dc6e583662f75a7e9c.png[/img]

回调开仓,如下图,在这个走势中,每个波谷都是一个好的回调入场点。这种入场方式的好处是开仓风险小,止损小,盈亏比好,仓位可以大点。缺点是一旦行情出来,都是以突破为开始,而且行情越大,回调几乎没有,或者很少,往往错过行情,更糟糕的是,行情突破大幅拉升后,后面一般是大幅震荡甚至是行情翻转了。

[img]http://dn-filebox.qbox.me/b9ad644069e28a3c5d9a862afd8067c6509fb2f4.png[/img]

毫无疑问开仓条件仅是一个试错的依据。不管是月线加日线混合判断,还是基本面分析,不管是资金动向,均线交叉,还是抛硬币,这些都是一个入场试错的依据而已。重点在于,当这笔单子进到市场开始接受行情走势的波动后,如何处理单子所面临的各种可能走势。

曾经有一个 “ 裸K ” 高手说过:开仓可以无需任何条件,永远不会有什么人能告诉你在这个点开始是对的,在那个点开始是错的。开仓不是交易的核心,交易的核心是开仓之后,如何尽可能优化处理单子。当然做交易时间长了,经验可能客观上帮助投资者提升开仓技巧,除此之外,谈任何开仓信号都是浪费时间。下面让我们看看如何出场。

出场策略

不管是短线策略,还是长线策略,比的不是看谁持仓时间长,而是风险收益比。换言之,影响策略绩效的最终结果是如何出场,何时兑现利润。

出场方法又可以分为两种:止损出场和止盈出场。而这两个部分都是任何交易系统所必需的,也是关乎于交易策略成败的重要分水岭。

止损出场

止损出场的目的是为了控制风险,这是它的优点。但是任何止损出场策略都会或多或少的降低交易系统的获利,这是它的缺点。但是止损损失是不能够完全避免的,就好像开车,买汽车保险的钱不能省一样。

最初的止损价位通常是根据重要的技术指标而定的,例如,趋势线,移动平均线,支撑阻力位等。当然,也可以根据时间,价格百分比%来制定。

止盈出场

你甚至可以在买入之前,估算出的目标价位出场。但是这样做的缺点是,不能够使获利最大化,有时候当价格趋势开始后,可能有很可观的延伸。所以,如果你做短线交易,或是根据震荡策略交易,你可以利用价格反转来出场,也就是价格收于前一个交易日最低点以下就出场。 如果,你是做趋势跟踪交易,那么你最好能够利用跟踪出场的方法,这样做的优点是可以使你有机会抓住大的趋势。

有的投资者有盈利就出场,亏损就开始死扛,那无论怎么入场,胜率有多高,终归会有一波扛不住的行情,让其产生重大损失。相反,还有些人截断亏损,让利润奔跑。在交易中,过分追求入场的精准和完美是一种典型的浪费行为。研究和完善出场规则,构建一个完整的交易系统,才是正确的选择。

NO:07

如何下单

1、委托下单类型和方式:

委托下单的类型和方式有许多在种,比如:委托时用排队限价单、对手价、最新价、超价、涨停价、跌停价、买一价、买二价、卖一价、卖二价,或者先用排队价,再用超价,分批报单,或者把大单拆成一个个小单,或者干脆直接把单子全部报出去。

2、撤单

如果下单没有成交,是继续等待还是撤单,撤单条件依据是时间,比如10秒内没有成交。还是依据价格,比如价格已经远离下单时价格10跳。

3、追单

当下单没成交的时候,是否追单。如果追单,是按最新价去追,还是对手价,还是涨跌停价,如果追单仍未成交是否继续追单。

4、涨跌停价

当下单信号出现时,刚好是涨跌停价格时怎么办。是否在涨跌停价挂单排队成交,如果没有成交时怎么办。

5、集合竞价

开盘集合竞价要不要参与,怎么参与。

6、夜盘

商品期货夜盘是从21:00至次日02:30,这段时间做不做,人工做还是让电脑来做。

7、重大节日

重大节日的超长假期之前,仓位需不需要保留。如果保留的话如何控制风险。

NO:08

极端行情应对

1、短时间价格大幅波动

价格瞬间涨跌停、连续涨跌停、乌龙指事件、黑天鹅行情价格踩踏事件等等,这些情况如何处理。

[img]http://dn-filebox.qbox.me/a9370b52ac5730d69c3ad24862ad2bff38560bcb.jpg[/img]

2、流动性风险

如果一档对手盘没有你要的下单量,但你又需要及时成交,特别是非主力合约流动性很差,自己下的单子很容易对市场造成冲击,滑点很大,如何应对。

3、品种规则变化

商品期货品种加入夜盘,保证金比例上调,手续费上调,特别是短线策略,对于这些变化会非常敏感。

4、交易环境风险

比如:突然断电、断网、电脑故障、软件宕机、银期转账暂停、自然灾害等,出现时如何应对。

以上情况,出现的概率很小,或者说几乎不可能。但如果事情可能发生,就一定能发生。做好这些假设,并加以防范是非常有必要的。

NO:09

交易心态

交易中常见的三种主要心理情绪为贪婪、恐惧和侥幸。投资者需要一个强大的交易心理体系在不同阶段对上述三种情绪加以控制甚至利用。

[img]http://dn-filebox.qbox.me/4dfd1f6eeae03983d9dcaceded2339249ebfdd6f.png[/img]

交易之前要有一个对未来的整体预期,包括市场预期和标的心理预期。市场预期指对市场所处的位置和未来的方向有一个较为明确的目标,标的预期是指该标的在当前位置下的交易机会和风险状况。如果没有以上心理基础,则一切都无从谈起。

实盘交易的全过程就是不断分析、修正和执行的过程,其间交易的时间不多,更多的是跟踪和忍耐。这是一个综合考察心态、考验人性的过程,交易者的各种习性在交易过程中都会被展现无遗和放大。只有不断学习和总结经验教训,不断历练,才能克服人性的思维共性和心理弱点。

NO:10

综上所述,所谓的交易系统,其实就是这样,有它完美的一面,也有它残缺的时候,我们衡量一个交易系统的合理性,并不能只看他完美的一面,也不能只看他残缺的一面,更应该综合的分析系统的完整性。

最后根据系统的特性,结合自身的性格和资金情况一起去衡量该系统是否适合自己,如果适合自己的话,要充分评估自己坚持下去的可能性有多大,最坏的结果要事先规划好,如果最惨的一面你都想好了,那么执行下去的可能性就相对较大。

在交易中,信心源自于你发自内心的认可,信心源自于正确的交易理念。

转载自 BotVS
作者:   Hukybo
--

转载自 BotVS 「 珍藏版 」如何搭建一个完整的交易框架的更多相关文章

  1. 基于react+如何搭建一个完整的前端框架(1)

      1.使用 create-react-app 快速构建 React 开发环境 create-react-app 是来自于 Facebook,通过该命令我们无需配置就能快速构建 React 开发环境. ...

  2. 吴裕雄--天生自然SSH框架开发:搭建一个完整的SSH框架

    下载jar包 spring框架的jar包:https://repo.spring.io/ hibernate框架的jar包:http://hibernate.org/orm/ struts2框架的ja ...

  3. asp.netmvc 三层搭建一个完整的项目

    接下来用 asp.net mvc 三层搭建一个完整的项目: 架构图: 使用的数据库: 一张公司的员工信息表,测试数据 解决方案项目设计: 1.新建一个空白解决方案名称为Company 2.在该解决方案 ...

  4. 搭建一个完整的Java开发环境

    搭建一个完整的Java开发环境 作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,ecl ...

  5. 手把手搭建一个完整的javaweb项目

    手把手搭建一个完整的javaweb项目 本案例使用Servlet+jsp制作,用MyEclipse和Mysql数据库进行搭建,详细介绍了搭建过程及知识点. 下载地址:http://download.c ...

  6. 利用vue-cli配合vue-router搭建一个完整的spa流程

    好文章备忘录: 转自:https://segmentfault.com/a/1190000009160934?_ea=1849098 demo源码:https://github.com/1590123 ...

  7. 11. 搭建一个完整的K8S集群

    11. 搭建一个完整的Kubernetes集群 1. kubectl的命令遵循分类的原则(重点) 语法1: kubectl 动作 类 具体的对象 例如: """ kube ...

  8. react全家桶从0搭建一个完整的react项目(react-router4、redux、redux-saga)

    react全家桶从0到1(最新) 本文从零开始,逐步讲解如何用react全家桶搭建一个完整的react项目.文中针对react.webpack.babel.react-route.redux.redu ...

  9. 搭建一个完整的Android工程(一)Dagger2

    写在前面 现在越来越多的使用到了开源项目,但是仅限于使用,却不了解,更谈不上深入.也是因为越来越多的开源项目,平时工作中遇到问题也是第一时间寻找对应的开源项目,少了许多独立的思考.现在虽然能很轻松的完 ...

随机推荐

  1. 開始:触摸MySQL

    学习MySQL.少不了安装一个MySQL数据库,安装想必非常easy,事实上也是.我下载了一个MySQL5.7.百度了一下安装步骤,就成功安装了.相对于Oracle来说要简单不少. 买了两本书,看了& ...

  2. 五、Spring Boot 事务

    spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement 开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactio ...

  3. SpringMVC实现JSON与前台交互

    这几天忙着做学校的项目,感觉好久没有更新博客了,来整理一下. 由于要实现的功能是表单联动,只能自己去写ajax来实现提交给后台接口了,好久没有写前端,好多东西都忘记了,只能可怜巴巴的用原生的js去实现 ...

  4. Intellij 解除(去除)SVN关联

    方法一:通过Intellj 来处理 1. 安装插件 打开Intellij的setting(ctrl+alt+s),选择plugins,在右边搜索框输入"SVN",搜索.选择&quo ...

  5. 《编程人生:15位软件先驱访谈录》【PDF】下载

    <编程人生:15位软件先驱访谈录>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382231 内容简介 本书适合所有程序员,也适合 ...

  6. 【python】集合set

  7. 【python】函数闭包

    列表时可以改

  8. JaveScript运算符(JS知识点归纳三)

    JaveScript中有许多的运算符,在这里就只说明一些需要注意的. 01 一元运算符 一元:指的是参与运算的操作数只有一个 最经常使用的是++   -- 计算规则: ++/-- 前置于操作数的时候 ...

  9. HTTP协议------->资源和URL

    1.前言 最近在研究http,希望结合书本,对网上资料进行整合,用“人话”聊聊这个玩意儿- 计划用近十篇文章,详尽的说清楚以下一些问题: URL和资源.HTTP报文是什么东西? HTTP是怎样进行链接 ...

  10. Core Erlang:Erlang的Core中间表示

    随着erlang的不断发展,它的语法越来越复杂,不便于诸如分析器,调试器此类程序在源码层次直接进行解析,而CORE Erlang旨在为Erlang提供一个人类可读可改的中间表示(Intermediat ...