欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 简单排序功能

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有4981人关注过本帖树形打印复制链接

主题:简单排序功能

帅哥哟,离线,有人找我吗?
zxsd
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:293 积分:0 威望:0 精华:0 注册:2015/8/12 16:11:54
简单排序功能  发帖心情 Post By:2015/11/25 16:54:56    Post IP:111.203.152.106[显示全部帖子]

 逐K线模式下

本周期,5条MA(5)、MA(10)、MA(20)、MA(30)、MA(60)中,离1000这条线最近的是哪根线?

请指点

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:293 积分:0 威望:0 精华:0 注册:2015/8/12 16:11:54
  发帖心情 Post By:2015/11/25 17:22:06    Post IP:111.203.152.106[显示全部帖子]

 那么:
CU排名:HOD2(X,5,X[1]),LINETHICK0;
这里面的三个参数X,5,X[1]还可以在括号内做计算么?
比如X[1]+aaa或者5-2之类的
[此贴子已经被作者于2015/11/25 17:22:44编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:293 积分:0 威望:0 精华:0 注册:2015/8/12 16:11:54
  发帖心情 Post By:2015/11/26 10:40:33    Post IP:111.203.152.106[显示全部帖子]

 斑竹,昨天还想到一个问题

就是说这5根线怎么区分开1000以上的和1000以下的?(就是说,1000以上的离1000最近排序,以及以下的最近排序)想不到一个简单直观的办法

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:293 积分:0 威望:0 精华:0 注册:2015/8/12 16:11:54
  发帖心情 Post By:2015/11/26 12:35:55    Post IP:111.203.152.106[显示全部帖子]

以下是引用jinzhe在2015/11/26 10:45:17的发言:

这个没办法处理

有没有这种办法,比如,设置两个数组一个放大于1000的线一个放小于1000的线
线判断大于1000的还是小于1000后赋值给对应数组,不对应的赋DARWNULL,然后再分别给两个数组HOD2排序

那么这里有三个问题:
1。drawnull能否赋值给数组
2。drawnull能否参加比较,怎么个算法
3。如果不用drawnull而用零呢?能否赋值?算法是什么?

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:293 积分:0 威望:0 精华:0 注册:2015/8/12 16:11:54
  发帖心情 Post By:2015/11/26 17:07:04    Post IP:111.203.152.106[显示全部帖子]

 非常感谢
有一个不明白的就是:

d[1]:=ma5d-3500;
d[2]:=ma10d-3500;
d[3]:=ma20d-3500;

 

ma5排名:LOD2(d,3,d[1]),LINETHICK0;
ma10排名:LOD2(d,3,d[2]),LINETHICK0;
ma20排名:LOD2(d,3,d[3]),LINETHICK0;


这个里面,
LOD2(d,3,d[1]),LINETHICK0;

如果d[1]等于零,那么是排第一还是无效还是最后?如果排第一那么上面的方法里ma5d:if(ma5>3500,ma5,3500);只要不满足条件都会赋值3500,这些都是第一了



 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:293 积分:0 威望:0 精华:0 注册:2015/8/12 16:11:54
  发帖心情 Post By:2015/11/26 17:24:39    Post IP:111.203.152.106[显示全部帖子]

以下是引用fly在2015/11/26 17:13:58的发言:

8楼写的代码 ,可以直接在图上加载显示。你可以分析一下

 

从逻辑上看,d[X]为0,说明对应均线已经在3500以下了,是你7楼说的另一个数组的数据了

您说的没错,我的理解是,若ma5d大于3500那OK,若ma5d小于3500则d[1]是为0的,但是也同样会在数组d[3]中,所以是会参加比较的,如果LOD2比较的方法是数组中零以外的数排序,那么这个方法可以很好的分开大于或者小于3500的线,如果零也参与排序那么零应该是第一,造成不不满足ma5>3500这个条件的线在d[3]中排名第一,这样就没办法很好的区分开3500这个界限了

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:293 积分:0 威望:0 精华:0 注册:2015/8/12 16:11:54
  发帖心情 Post By:2015/11/26 17:25:44    Post IP:111.203.152.106[显示全部帖子]

我想问的就是:
d[1]=0,那么——LOD2(d,3,d[1])是多少

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:293 积分:0 威望:0 精华:0 注册:2015/8/12 16:11:54
  发帖心情 Post By:2015/11/26 17:43:10    Post IP:111.203.152.106[显示全部帖子]

我测试的是,d[1]=0,那么——LOD2(d,3,d[1])排第一
若数组中有两个零,测试结果是这两个零LOD2都是第一

问题:
1.是不是10个数的数组,不一定是1~10的排序名次,有可能只有1~9的排序名次结果(若有两个相等的值时)
2.回到8楼的例子中,

ma5排名:LOD2(d,3,d[1]),LINETHICK0;
ma10排名:LOD2(d,3,d[2]),LINETHICK0;
ma20排名:LOD2(d,3,d[3]),LINETHICK0;
是不是只要我指定 IF
ma5排名=2 就能得到“大于3500的线中最小的一根线”

 回到顶部