【量亿数据-股票数据】利用简单指标,建立交易系统
来源:互联网 发布:mac在线恢复系统加速 编辑:程序博客网 时间:2024/04/29 10:12
对一些技术指标进行改进,或是利用一些非传统的方式,可以让交易者获利。在此,我们考察2个最基本的技术分析指标——随机指标(KDJ)和移动平均线,把其用于测试迷你标准普尔股指期货(ES),通过一些小的改动让绩效得到较大的改善。
理论:
随机指标,从20世纪50年代就开始被投资者用来判断市场方向,其由两条线构成,取值范围是0到100,当指标数值靠近100时,意味着市场处于超买状态,相反,靠近0时,就意味着目前处于一个超卖的市场。
对于超买和超卖临界值的认定上,通常采用的是对称认定,举一个例子,超买和超卖临界值会设在90和10或者是80和20。当随机指标先下穿下临界值然后又上穿该临界值时,一个很流行的方式就是入场做多;当随机指标上穿上临界值后又下穿该临界值,此时应该入场做空。
运用该技术指标,做一个简单测试,我们采取的是反转策略,就是平多单后直接开空单,或者平空单后直接开多单,这样我们一直处于对冲交易之中。与传统方法不同的是,我们的策略偏激进一点,当随机指标下穿下临界值时,入场做多,当它上穿上临界值时,入场做空。当随机指标下穿20时做多,上穿80时做空,对5年的ES数据进行测试后发现,获利能力较弱,同时有较大的回撤,这样就需要我们稍作改变。
非对称临界值现在我们把临界值非对称调整一下,因为市场本身趋向于非对称,我们据此调整我们的临界值,抛弃传统的80/20临界值,改为90/40。这样,在日K线图上,当随机指标上穿90时做空,下穿40时做多。测试结果表明,即使我们做了上述改变,情况仍不太客观,回撤依然很大,缺少止损让上述改动缺乏实战意义。趋势确认为进一步改善系统的绩效水平,我们增加了一个指标来识别趋势行情,用来证明我们的套利交易处于正确的方向。
当运用2个或2个以上的指标时,很重要的一点就是避免多重共线性(一个统计学术语),这是一个很普遍的问题,同样类型的指标表达的意思差别不大,这样就会显得很多余,让人觉得模棱两可,缺乏方向性。为了避免多重共线性,应该运用不同类型的技术指标,在我们的案例中,当运用随机指标(振荡指标)后,增加一个移动平均线指标(趋势指标)。
当一个3周移动平均线上穿一个30周移动平均线,这就意味着市场目前处于牛市行情中,我们用这些上穿、下穿信号来过滤一些错误信号,进而确认随机指标信号的有效性。利用移动平均线的交叉进行过滤的确起到了作用:它降低了交易次数,增加了盈利因子,提高了平均盈利能力。从这点来看,这个套利交易系统开始发挥作用,但是我们还可以通过资金管理进一步提高这个系统的绩效水平。
资金管理到目前为止,我们策略的基础部分是反手交易,为了进一步利用好趋势性行情,我们增加一些交易规则,当随机指标信号和移动平均信号方向一致时,我们增加头寸数量。这就意味着,一旦获利就会加倍获利,但亏损也会加倍。对5年的数据进行回测,我们发现,增加头寸带来的盈利比亏损多,这样的资金管理是有效的。
这个交易系统有一个地方值得注意:它没有对止损进行设定,因为是反手交易,只有开仓的时机出现后,才会平掉之前的亏损单子。在强趋势行情中,这样的策略可能会造成很大的损失。为了解决这个问题,我们对每一笔交易设定止损和最大回撤点位,进而使得这个交易系统更容易获利。
检验后的结果显示绩效非常好。策略绩效报告显示很多方面得到改善,包括净利、平均盈利和年回报率。
尽管结果非常不错,但在进行实盘交易前仍然需要进一步检验,因为到目前为止这套交易系统只是检验了历史数据,还需要进行样本外检验。这套系统可以用模拟账号来检验进而确保它的有效性,只有这样才可以运用到实盘交易中。如何改进交易系统上述策略只是一个很简单的例子,主要是为了显示整个交易系统如何构建,以实现我们的目标。我们运用了非对称随机指标构成基本的对冲交易策略,然后增加移动平均线确认趋势行情,最后增加资金管理的规则提高绩效。在上述例子中,把移动平均线作为过滤信号,然后增加简单的资金管理实现绩效的改善,这些在绩效报告中都可以得到体现。大家很容易看到净利润的变化,毕竟这是我们的目标,当然其他的一些因素也有体现,这样对这套系统有一个系统性的认识和了解。
- 【量亿数据-股票数据】利用简单指标,建立交易系统
- 【量亿数据-金融数据】CCI指标的运用
- 利用golang并发下载股票数据(一)
- PythonStock(14):使用pandas 批量处理股票数据,批量计算股票指标
- 股票数据
- 股票数据
- 股票数据
- 股票系统指标计算的简单模板
- 利用R语言获取最新所有股票数据
- 利用bs4和requests爬取股票历史交易数据
- 学习利用R语言抓取上市公司的股票数据
- 股票指标
- 股票指标
- 利用hibernate建立底层数据的心得
- 获取股票数据的2个简单方法
- 获取股票简单数据:腾讯、新浪、东方财富。。。
- 获取股票数据的2个简单方法
- 股票数据接口
- $.ajax()方法详解
- 李洋疯狂C语言之编程实现统计某年某月份的天数
- webpack模块化打包,结合react-route实现分文件打包,按需加载
- 运行、调试Web项目
- 记录Redis存储对象的问题
- 【量亿数据-股票数据】利用简单指标,建立交易系统
- CentOS 7下SSH远程登录服务器详解
- 牛客网---2016---去哪儿二分查找
- Eclipse引入jar包的三种方式
- 小白Ubuntu14下CKAN安装指北
- RabbitMQ概念详解
- Montgomery Modular Multiplication
- 使用Spring Boot框架maven项目新建后启动失败, 提示Unregistering JMX-exposed beans on shutdown
- 解决Navicat 报错:1130-host ... is not allowed to connect to this MySql server,MySQL不允许从远程访问的方法 .