查看完整版本: 飞狐排序函数的用法-南客

hx817 2004-1-17 14:14

飞狐排序函数的用法-南客

排序函数共有2个:
1、SORT(X,D,N1,N2):
①用法:对X序列或数组从序号N1到N2进行排序,D为0升序,D为1降序。返回N1到N2的数据数量
②示例(函数DATACOUNT,返回当前证券的K线数):
[code]
FC:=C; //序列变量FC赋值为收盘价序列
n1:=SORT(FC,0,1,DATACOUNT); //对FC序列排序,从第1个元素到最后一个元素,按降序排列
FC; //输出曲线
[/code]
上述代码可以简化为:
[code]FC:C; //序列变量FC赋值为收盘价序列,并输出(实际输出是按最后的结果进行的,即经下面排序后才输出)
n1:=SORT(FC,0,1,DATACOUNT); //对FC序列排序,从第1个元素到最后一个元素,按从小到大即升序排列[/code]

图示如下:可看出,FC已经不是原来顺序的收盘价序列了,而是按升序排列了,第1条K线位置对应的是收盘价最小值,最后一条K线对应的位置是收盘价的最大值,因此,你可以通过FC[1]、FC[2]得到最小值、次小值,FC[datacount]、FC[datacount-1]得到最大值、次大值,依此类推。

如果想按降序对收盘价排序,应怎么写公式代码?最大、最小值应该怎么写?有兴趣的话,请大家自行练习。
难一点的问题:2003年,收盘价的最大值是多少?写出公式代码。

hx817 2004-1-17 14:15

2、SORTPOS(X,D,N1,N2),别名: 排序位置
①用法:对序列或数组进行排序后的原本位置,对X序列或数组从序号N1到N2进行排序后X存放原数值对应的位置,D为0升序,D为1降序。返回N1到N2的数据数量
②示例(这个函数稍抽象,相当于是索引指针,保存排序的位置,而不是原来的数值):
[code]
FC:C; //收盘价序列,赋值给序列变量FC
pFC:=C; //定义一个序列变量,用于下一行语句,保存排序后的位置
n1:=SORTPOS(pFC,0,1,DATACOUNT);//对收盘价序列进行升序排序,排序后,pFC中保存的是排序后的位置

{经过上一行语句,pFC序列就保存了收盘价升序排序后的位置,因为是升序操作,pFC的第1号元素即pFC[1]就表示,最小的收盘价对应的位置,如果pFC[1]=20,那就表示最小的收盘价位于第20根K线,同理,pFC[2]为次小收盘价的位置,pFC[datacount]为最大收盘价的位置,有了位置,就可以知道最小、最大收盘价的数值,见下面的语句}

最大收盘价:FC[pFC[datacount]]; //这是数组下标的嵌套应用,会稍微抽象些,参见前例来理解
最小收盘价:FC[pFC[1]];
[/code]
图示如下:


函数练习:
  1、所给示例是升序操作,请按降序操作,写出公式代码。
  2、输出当前股票,上市以来的最大成交量、最小成交量,最大的前10名成交量平均值是多少?

hx817 2004-1-17 14:16

一个综合实例:
1、历史高点A——历史高点A之后的某波段次高点B 画线;红线
2、历史高点A——历史高点A之后的最低点C画线; 黄线

以下是我回复某论坛问题的公式代码,其中部分代码,可用本次介绍的排序函数来重写,有兴趣不妨动手试试:
[code]
input:n(5,5,30);
fh:=high; fl:=low;
///以下找历史最高点,hh1表示最高价,phh1表示最高点位置///
hh1:=fh[1]; phh1:=1;
for i=1 to datacount do //从第1条K线开始,循环执行下面3条复合语句,直到K线结束
if hh1<fh[i] then begin //判断
hh1:=fh[i]; phh1:=i; //用hh1单值变量记录历史最高价,phh1记录位置
end;

///以下找phh1之后的最低点,ll表示最低价,pll最低点位置
if phh1<datacount then begin
ll:=fl[phh1+1];
for i=phh1 to datacount do
if ll>fl[i] then begin
ll:=fl[i]; pll:=i;
end;
end;

///以下用zig转折模拟波段,通过参数n来调整波的分布///
///找历史最高后的波峰最高点,hh2次高价,phh2位置///
tj:=peakbars(high,n,1)=0;
nstart:=max(lbound(tj),phh1+1);
if nstart<=datacount then begin
hh2:=0;
for i=nstart to datacount do
if tj[i] then begin
if hh2<fh[i] then begin
hh2:=fh[i];
phh2:=i;
end;
end;
end;

//////以下画线///////////
drawline(barpos=phh1,high,barpos=phh2,high,1),colormagenta;
drawline(barpos=phh1,high,barpos=pll,low,1),coloryellow;
[/code]

龙之焰 2004-1-17 14:29

好复杂啊。不知道什么时候能学会呢!

zxl_51 2004-2-29 11:12

姚平 2004-2-29 21:43

谢谢!!!!!!

wlzw 2004-3-11 00:01

多谢

来这儿学习学习!

19989899 2004-3-24 17:20

好复杂啊。不知道什么时候能学会呢!

newbadboy 2004-3-27 22:02

谢谢

chenlinm 2004-3-28 18:20

谢谢!!!

量能1010 2004-4-29 15:45

来这儿学习学习!谢!

jgc65 2004-4-29 16:17

谢谢!!!!!!

谢谢!!!!!!

htsdx 2004-4-29 16:29

不错的功能,谢谢!

zsqsxq 2004-5-1 22:27

好复杂啊。不知道什么时候能学会呢!

股海淘金 2004-5-2 11:46

ok

阿原 2004-5-6 07:26

不错的功能,谢谢!

rka 2004-5-20 00:21

谢谢!!!!!!

白郎 2004-5-21 08:47

谢谢

能看的懂,但好像对我用处不大。不过这样的知识多学些是有好处的。

beifen008 2004-5-21 10:11

好复杂

jshmhys 2004-5-21 16:53

3q:cool:

lhl311 2004-5-22 06:47

谢谢!!!!!!

hps28 2004-6-20 13:06

好多人在线!hx817老师谢谢!

糊涂难道 2004-6-21 09:09

[quote][i]redrose[/i] 于 2004-5-22 10:46 AM 写道:
谢谢南客老师~~  要是能办个指标讲座就好了,哪怕带我们入入门也好啊~ [/quote]
:cool::cool::cool:

tomyu 2004-6-21 09:14

不错的功能,好复杂啊。不知道什么时候能学会呢! 谢谢!

zyh631226 2004-6-21 09:45

ok

lsy8888 2004-6-25 15:22

3q!!!

飞天大侠 2004-6-26 16:33

好复杂啊。不知道什么时候能学会呢!

wangzhaoyang1 2004-7-7 09:36

谢谢!

beifen008 2004-7-7 14:15

3Q

zyh631226 2004-7-7 16:32

谢谢!!!!!!

lih126 2004-7-8 13:26

谢谢!!!!!!

谢谢!!!!!!

yzf 2004-7-8 15:37

ddddddddddddddddddddddd

迪迪 2004-7-12 09:16

学习了

开心笑 2004-7-13 09:06

我为人人,人人为我

dxzcjkcq 2004-10-15 21:42

hao

wlg 2004-10-16 09:54

:cool::clap: 谢谢! 提供如此功能强大排序函数用法.

巴菲特羊 2004-10-19 11:25

谢谢,老师

海之韵 2004-10-19 14:22

遂波荡漾 2004-10-22 10:26

已经困惑老长时间了:thinking:,这下明白了:yes:,谢谢!谢谢!

pengyou 2004-10-25 16:03

能回就看
不能学会就套用

但是我知道 老师 是尽心的教大家

还能说什么
除了感激还是感激

谢谢了

股市骑兵00 2004-10-29 20:18

呵呵,不错啊。刚用飞狐还不知,有此功能的。谢谢。

myly1 2004-11-13 02:58

请教版主:
     飞狐能不能在动态显示牌上动态更新2个以上的自设指标(排序只能动态更新1个自设指标)。谢谢!

jshmhys 2004-11-13 22:14

:clap::clap::cool:

pengyou 2004-11-21 20:00

xuexi
谢谢
这里的气氛 是最好的

开心笑 2004-11-24 22:58

lihai

zycy 2004-12-9 22:53

不错的功能,谢谢!

realcolc 2004-12-15 17:47

映雪 2004-12-19 23:05

谢谢~不知道什么时候能学会呢! :thinking:
页: [1] 2
查看完整版本: 飞狐排序函数的用法-南客