设为首页收藏本站

宽客俱乐部——量化投资与对冲基金交流平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
揭开股票高频交易的神秘面纱——股票日内回转T+0交易课程
神奇的期货冲量交易法培训(包学会)
查看: 2699|回复: 4

金字塔排序解决方案图表版

[复制链接]
发表于 2014-10-14 17:28:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
【模块】金字塔排序解决方案(图表)版
去年发布了一个金字塔排序解决方案。主要是用通过金字塔的后台tinsort函数,解决实盘排序的问题。但并不完美,留下的遗憾是tinsort为后台函数无法测试。
通过此贴,我们将彻底解决此问题,不再留有遗憾,图表也能方便的进行排序、测试啦!!。
那为什么以前不可以,现在可以了呢?这个得益于金字塔2.93版改进的数组(矩阵)功能。
以往我们图表要做与排序相关的策略是个很复杂的过程。比如我们开盘要对10个品种的涨幅进行排序。笨办法是我们通过STKINDI两两比较后,才能得出结果。技术稍高的朋友会采用冒泡排序,但依然相当复杂、繁琐,每个品种所对应的排名依然很难获得。
那么现在通过金字塔的改进后的数组功能后,情况是怎么样的?我们为了统一,依然以后台版的例子为例。
描述:开盘后,我们根据KDJ的K值由大到小排序,品种为CU,RU,M,CF,IF,
策略:当交易的品种为CU, CU的排名为第一且无持仓时下单。
首先,我们需要建立数组,然后通过HOD2函数取的排序值。
VARIABLE:X[5]=0;
X[1]:=STKINDI('CU00','KDJ.K',0,6,0);
X[2]:=STKINDI('RU00','KDJ.K',0,6,0);
X[3]:=STKINDI('M00','KDJ.K',0,6,0);
X[4]:=STKINDI('CF00','KDJ.K',0,6,0);
X[5]:=STKINDI('IF00','KDJ.K',0,6,0);
CU排名:HOD2(X,5,X[1]),LINETHICK0;
RU排名:HOD2(X,5,X[2]),LINETHICK0;
M排名:HOD2(X,5,X[3]),LINETHICK0;
CF排名:HOD2(X,5,X[4]),LINETHICK0;
IF排名:HOD2(X,5,X[5]),LINETHICK0;
如上图,我们排序值都求出来了,接下来就简单了。
以CU为例,若CU排序为1,并且无持仓,我们就下单。
IF CU排名=1 and holding=0 thenbuy(1,1,market);
注:这个范例抛砖引玉,通过新的数组功能,以往很复杂的计算都能很简单的处理了。例如N个值中取最大、最小值。
其次HoD2是从大到小排,反过来从小到大排用Lod2函数。
最后HOD2 LOD2的函数说明读起来不太易理解,主要的参数问题,是在于我代码中用红色表示的部分。
概括的讲,以这次举例是例,5个值排序这个值就选5,是20个这个值就取20。具体说明待下个版本完善。
“排序”后台版:
汇总贴:
回复

使用道具 举报

发表于 2016-4-12 14:52:29 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|量化投资|对冲套利|高频|互联网接口|资产管理|宽客俱乐部 ( 沪ICP备16036585号   点击交谈

关注

GMT+8, 2019-5-21 05:26 , Processed in 0.112478 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表