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


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

   

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


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

主题:简单排序功能

帅哥哟,离线,有人找我吗?
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这条线最近的是哪根线?

请指点

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2015/11/25 17:01:06    Post IP:58.246.57.26[只看该作者]

使用hod2函数

赋值的5个数组为

x[1]:=abs(ma5-1000);

.....

x[5]:=abs(ma60-1000);

 

然后按照hod2函数说明里面的范例做处理

[此贴子已经被作者于2015/11/25 17:01:12编辑过]


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | 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编辑过]

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2015/11/25 17:25:22    Post IP:58.246.57.26[只看该作者]

那要重新再赋值一个数组了

y[1]:=x[1]+aaa;

类似这样的



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | 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最近排序,以及以下的最近排序)想不到一个简单直观的办法

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2015/11/26 10:45:17    Post IP:58.246.57.26[只看该作者]

这个没办法处理



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | 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而用零呢?能否赋值?算法是什么?

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


加好友 发短信
等级:管理员 帖子:5082 积分:17642 威望:0 精华:6 注册:2010/7/15 9:05:58
  发帖心情 Post By:2015/11/26 13:39:59    Post IP:58.246.57.26[只看该作者]

2楼写的,就是求离1000最近的。

 

drawnull是无效数,不行

 

下面以IF为例写的,与3500比较的一个尝试例子,供您参考

runmode:0;
VARIABLE: d[3]=0,x[3]=0;

 

ma5:=ma(close,5);
ma10:=ma(close,10);
ma20:=ma(close,20);

 

ma5d:if(ma5>3500,ma5,3500);
ma5x:=if(ma5<3500,ma5,3500);
ma10d:if(ma10>3500,ma10,3500);
ma10x:=if(ma10<3500,ma10,3500);
ma20d:if(ma20>3500,ma20,3500);
ma20x:=if(ma20<3500,ma20,3500);


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;

[此贴子已经被作者于2015/11/26 14:15:07编辑过]


金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
zxsd
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | 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,这些都是第一了



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


加好友 发短信
等级:管理员 帖子:5082 积分:17642 威望:0 精华:6 注册:2010/7/15 9:05:58
  发帖心情 Post By:2015/11/26 17:13:58    Post IP:58.246.57.26[只看该作者]

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

 

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



金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
总数 14 1 2 下一页