三国最终的结局是什么:《飞狐公式编写基础》和《通达信公式教程》(五)_风景的博客

来源:百度文库 编辑:中财网 时间:2024/04/29 23:54:36
《飞狐公式编写基础》和《通达信公式教程》(五)
2008-12-20 10:22:36

飞狐基本函数简介之大盘函数和常数函数

大盘函数,就是公式应用于个股中时,可以引用相应大盘的相应数据。

常数函数用于取得一些常数数据。

一、

函数: INDEXO

参数: 无

返回: 数组

说明: 表示对应大盘同期的开盘价。(该函数对分笔成交分析周期无效)

函数: INDEXH

参数: 无

返回: 数组

说明: 表示对应大盘同期的最高价。(该函数对分笔成交分析周期无效)

函数: INDEXL

参数: 无

返回: 数组

说明: 表示对应大盘同期的最低价。(该函数对分笔成交分析周期无效)

函数: INDEXC

参数: 无

返回: 数组

说明: 表示对应大盘同期的收盘价。(该函数对分笔成交分析周期无效)

函数: INDEXV

参数: 无

返回: 数组

说明: 表示对应大盘同期的成交量。(该函数对分笔成交分析周期无效)

函数: INDEXA

参数: 无

返回: 数组

说明: 表示对应大盘同期的成交额。(该函数对分笔成交分析周期无效)

当主图显示的是沪个股时,取INDEXC就是上证指数的收盘价,其它类推。

当主图显示的是深个股时,取INDEXC等就是深成指的收盘价,其它类推。

这对引用大盘相应数据是很方便的。

如果你想引用0号指数的相应数据,就要先建立0号指数(自定义指数),比如0号指数的代码是“ 宋体'>BI01”,引用时就用

"BI01$CLOSE";

"BI01$VOL";

等。

二、

函数: INDEXADV

参数: 无

返回: 数组

说明: 表示对应大盘同期的上涨家数。(该函数对分笔成交分析周期无效)

函数: INDEXDEC

参数: 无

返回: 数组

说明: 表示对应大盘同期的下跌家数。(该函数对分笔成交分析周期无效)

当主图显示的是沪个股时,取INDEXADV就是沪A股中的上涨家数。

当主图显示的是深个股时,取INDEXADV就是深A股中的上涨家数。

INDEXDEC的用法一样。

这与以前在行情函数中介绍的ADVANCE和DECLINE有点类似,不过ADVANCE、DECLINE只能用于大盘,在主图为个股时不会有输出。

三、

函数: CAPITAL

参数: 无

返回: 返回常数

说明: 返回流通盘大小,单位为手。对于A股得到流通A股,B股得到B股总股本,指数为0

前面已经用过很多次了。

流通盘万股:CAPITAL/100,LINETHICK0;

换手率:100*V/CAPITAL,LINETHICK0;

四、

函数: VOLUNIT

参数: 无

返回: 返回常数

说明: 返回每手股数,对于股票值为100,债券为1000

这样也可据此识别股票和债券了。

五、

函数: FINANCE(N)

返回: 返回常数

说明: 取得参数对应的基本财务数据 N 含义  单位  N 含义  单位  
1 总股本 万股 29 税后利润 千元
2 国家股 万股 30 净利润 千元
3 发起人法人股 万股 31 未分配利润 千元
4 法人股 万股 32 每股未分配 元
5 B股 万股 33 每股收益 元
6 H股 万股 34 每股净资 元
7 流通A股 万股 35 调整每股净资 元
8 职工股 万股 36 股东权益比率 %
9 A2转配股 万股 37 净资收益率 %
10 总资产 千元 38 经营现金流入 千元
11 流动资产 千元 39 经营现金流出 千元
12 固定资产 千元 40 经营现金流量 千元
13 无形资产 千元 41 投资现金流入 千元
14 长期投资 千元 42 投资现金流出 千元
15 流动负债 千元 43 投资现金流量 千元
16 长期负债 千元 44 筹资现金流入 千元
17 资本公积金 千元 45 筹资现金流出 千元
18 每股公积金 千元 46 筹资现金流量 千元
19 股东权益 千元 47 现金及等价物 千元
20 主营收入 千元 48 应收帐款周转率 %
21 主营利润 千元 49 存货周转率 %
22 其他利润 千元 50 总资产周转率 %
23 营业利润 千元 51 流动比率 %
24 投资收益 千元 52 速动比率 %
25 补贴收入 千元 53 主营业务增长率 %
26 营业外收支 千元 54 税后利润增长率 %
27 上年损益调整 千元 55 净资产增长率 %
28 利润总额 千元 56 总资产增长率 %


六、

函数: DYNAINFO(N)

返回: 返回常数

说明: 取得参数对应的动态行情数据

N 含义  N 含义  
3 前收 31 卖一量
4 今开 32 卖二量
5 最高 33 卖三量
6 最低 34 卖一价
7 最新 35 卖二价
8 总手 36 卖三价
9 现手 37 换手率
10 总额(持仓) 38 5日均量
11 均价 39 市盈率
12 涨跌 40 成交方向
13 振幅 41 总市值
14 涨幅 42 流通市值
15 委比 43 买四量
16 委差 44 买五量
17 量比 45 买四价
18 委买 46 买五价
19 委卖 47 卖四量
20 委买价 48 卖五量
21 委卖价 49 卖四价
22 内盘 50 卖五价
23 外盘 51 成交笔数
24 涨速 52 每笔均量
25 买一量     
26 买二量     
27 买三量     
28 买一价     
29 买二价     
30 买三价     

七、

函数: SPLITDATA(N)

返回: 返回常数

说明: 除权数据函数

示例: SPLITDATA(N) 取得对应除权数据

N参数表示取那种分红数据

N=0 有除权时为1,否则为0

N=1 红股,得到当时每十股送几股

N=2 配股,得到当时每十股配几股

N=3 配股价,得到当时配股价格

N=4 红利,得到当时每十股派息几元

这些常数函数,完全没有必要记忆,在公式编辑器中,点一下插入函数,马上可以查到相关的说明。 

飞狐基本函数简介之解盘函数

函数: EXPLAIN(COND,TEXT)

参数:        

用法: EXPLAIN(COND,TEXT),在COND条件满足时在[解]中输出解盘文字

说明: 在[解]中输出解盘文字

示例: EXPLAIN(HIGH>=HHV(HIGH,20), '创20天新高');表示在创20天新高时在[解]中输出解说。  


以下是的说明:

一、①新增解盘函数 EXPLAIN(COND,TEXT);(随十字游标对应位置对应COND是否成立在[解]中显示TEXT)

{在[解]中输出解盘文字。

用法:EXPLAIN(COND,TEXT),在COND条件满足时在[解]中输出解盘文字。

例如:EXPLAIN(HIGH>=HHV(HIGH,20), '创20天新高')表示在创20天新高时在[解]中输出解说。}

②新增可输出带数值的解盘函数 EXPLAINEX(COND,TEXT,NUMBER,PRECISION,TYPE);

{在[解]中输出带数值的解盘。

用法:EXPLAINEX(COND,TEXT,NUMBER,PRECISION,TYPE),在COND条件满足时在[解]中输出数值解说。PRECISION为小数显示位数,TYPE为0不换行,1则换行显示下一个解盘

例如:EXPLAINEX(HIGH>=HHV(HIGH,20), '20天新高价:',HIGH,2,1)表示在创20天新高时在[解]中输出数值解说。}


EXPLAIN,解释、说明。单输出解盘文字的,用EXPLAIN;要输出带数值的解盘要用EXPLAINEX。

一个公式中可以输出多个解盘函数。交易信息中的“解”中,可以输出多个公式的解盘函数。

解盘函数的输出文字或数值,颜色均可设置,在函数中目前都可以设置。

以一个主图叠加公式和一个副图公式,同时运行,应该能说明问题了。

MA5:MA(C,5);

MA10:MA(C,10);

MA20:MA(C,20);

EXPLAIN(MA5>MA10 AND MA10>MA20, 'MA5:'),COLORRED;

EXPLAINEX(MA5>MA10 AND MA10>MA20, 'MA10:',MA10,2,1),COLORGREEN;

EXPLAINEX(MA5>MA10 AND MA10>MA20, 'MA20:',MA20,2,1),COLORYELLOW;{主图叠加}


副图公式:

MA5:MA(C,5);

MA10:MA(C,10);

MA20:MA(C,20);

EXPLAINEX(MA5>MA10 AND MA10>MA20, 'MA5:',MA5,3,1);

EXPLAINEX(MA5>MA10 AND MA10>MA20, 'MA10:',MA10,3,0);

EXPLAINEX(MA5>MA10 AND MA10>MA20, 'MA20:',MA20,3,1);


函数: EXPLAINICON(COND,ICON)

参数: ICON为数字时4种图标编码为1-4(阴雨、初彩、中彩、彩虹)。为字符串表示自制图标      

用法: EXPLAIN(COND,TEXT),在COND条件满足时在[解]中输出解盘文字

说明: 在[解]中绘制解盘图标。

示例: EXPLAINICON(HIGH>=HHV(HIGH,20), 2)
表示在创20天新高时在[解]中画2号图标(雨后初彩虹)。
EXPLAINICON(HIGH>=HHV(HIGH,20), 'MyBMP')
表示在创20天新高时在[解]中画FmlDLL子目录下的自制图标MyBMP.BMP。
可用ALIGN0中对齐,ALIGN1左对齐,ALIGN2右对齐

图例:

EXPLAINICON(c>0,1);
EXPLAINICON(c>0,2);
EXPLAINICON(c>0,3);
EXPLAINICON(c>0,4);  飞狐基本函数简介之扩展数据函数一、横向统计函数

函数: ESTDATA(N)

参数: 1-13

用法: ESTDATA(N)
在[横向统计管理]中定义并计算数据。
(本函数仅在日线分析周期有效)。

说明:取得横向统计日线数据(1-N)。

用法举例:
例:设计一个公式,统计当日A股板块涨停板的股票数。

建立方法如下:
①设计一个公式,判断个股是否涨停,代码如下,设公式名称是“涨停判断”:

bl:=if(STKINBLOCK('ST板块'),1.05,1.1);{如果为ST涨停为5%,否则为10%}
ztb:(c>=intpart(ref(c,1)*bl*100+0.5)/100);{如果涨停返回1,否则返回0}
{注:对新股的涨停未做判断,另外个股因历史的原因,是否被ST或PT处理无法判断,因此对历史数据的判断并不准确}

②建立横向统计数据项:鼠标点菜单“管理/横向统计管理”,在“横向统计管理”对话框中,点“新增”,找到刚才设计的公式“涨停判断”,如下图所示进行设置。

图中,不选除权处理更加合理。应去掉该项选择。

至此,我们就设计了一个横向统计数据项“涨停板”,在图中序号是3,则引用时是estdata(3)。

二、扩展数据库

函数: EXTDATA(N)

参数: 1-13

用法: EXTDATA(N),N取1--13
在[扩展数据管理]中定义并计算数据。
(本函数仅在日线分析周期有效)

说明:取得日线扩展数据(1-13)

飞狐扩展数据简介及示例

飞狐扩展数据库:
  一、 扩展数据库的功效:
  1、 在公式设计时,由于系统的限制,无法在公式中直接实现横向排名的功能,例如,在公式中无法知道某股票的涨幅的排名,这时可将涨幅数据放入扩展数据库中,让飞狐自动对涨幅数据进行排序,从而获得股票的涨幅排名数据。
  2、 由于考虑到磁盘空间及系统的效率,飞狐收盘时,保存的数据并未包含实时接收的全部数据,出于研究股票的需要,您可能需要其中的某些数据,这时可以把这些数据存入扩展数据库,以供调用。
  3、 由于系统及磁盘空间的限制,一般保存的短周期的数据有时段的限制,例如设置了只保存10天的分笔数据,超过10天的分笔数据将被自动删除,此时若想对分笔数据进行统计研究,将无法进行,这时可将分笔统计数据存入扩展数据库。
  4、 由于系统的限制,公式中无法从长周期引用短周期的指标数据,这时可将短周期的指标数据存入扩展数据库。

  二、扩展数据库的调用:
  飞狐的扩展数据库,最多可以保存13组数据,保存在扩展数据库中的数据,使用函数EXTDATA(n)来调用,其中n表示第n组数据。

  三、 使用扩展数据库示例:
例:如何知道股票在A股板块中的涨幅排名:

  1、设计一个公式,设公式名称为“涨幅”,公式代码如下:
zf::(c/ref(c,1)-1)*100;

  2、鼠标点菜单“管理/管理扩展数据”,弹出如图1所示扩展数据管理框,

  由于是新增的一组数据,双击其中某组尚未设置的数据名称,如图2所示,步骤如下:
  ① 选择我们刚才设计的“涨幅”公式
  ② 修改数据名称为“涨幅排名”
  ③ 选择“生成排名数据(从大到小排)”
  ④ 去掉“使用除权后的数据”选项(避免涨幅失真)
  ⑤ “排序方法”选“0-n自然排序”
  ⑥ “设置范围”选A股板块。
  ⑦ 图中,“涨幅排名”的扩展数据,是第2组数据,因此调用的函数为EXTDATA(2)
  3、设计一个调用涨幅排名数据的公式,调公式名称为“调用涨幅排名”,参考代码如下:
zfpm:extdata(2);
  在K线图中,调用“调用涨幅排名”公式,即可获知该股票的当日在A股板块中排列第几名。

  说明:在第1步设计的公式中,由于本例中仅需要计算排序的结果,因此公式可以简化(优化),以便减少运算量。
zf::c/ref(c,1);  

飞狐基本函数简介之其他函数

一、

函数: FFT(X,N)

参数: N为常数,X为数组.

返回: 返回数组

说明: 傅立叶变换,对序列X进行傅立叶变换或变换处理后反变换

示例: 当N=0时对序列X进行傅立叶变换

当N=1时对序列X进行傅立叶变换并反变换回来,与原X一致

当N>1时对序列X进行傅立叶变换并略去周期小于N的成分再反变换回来

FFT(CLOSE,30)

傅立叶变换是最常用的积分变换。原理和对数变换等差不多,无非是变换复杂为简单,广泛应用于工程技术领域。可傅立叶变换的算法,涉及高等数学的微积分知识,非三言两语说得清楚,也超过了本人的能力范围,这里只能从略了。

傅立叶变换的应用方面,见过的有二:

1、比如把FFT(CLOSE,30),在主图中上移下移之后,可以构成非常光滑的通道。

2、用在周期分析上。语见<期货市场技术分析>P407。

aa:=FFT(c,30);
   aa*1.05;
   aa*0.95

二、

函数: CHECKUSER(n)

参数: N为常数1或0

返回: 返回数组

说明: 限制公式使用。

示例: check:=CHECKUSER(0)

注册用户返回1,否则返回0

check:=CHECKUSER(1)

对非注册用户不可用该公式


三、

函数: COLORRGB(R,G,B)

参数: N为常数,X为数组.

返回: 返回RGB颜色值(常数)  

示例: DRAWGBK(C>O, COLORRGB(255,0,0), COLORRGB(255,255,0),0);
表示图形上最后一组C>O时从左到右从红色到黄色渐变填充子图。效果如下图:

四、

函数: LINEVALUE(COND1,PRICE1,COND2,PRICE2,EXPAND,LOG)

参数:COND为数组,PRICE为数组或常数,LOG为1表示按对数计算,EXPAND为1表示向左延长.

返回: 返回数组

说明: LINEVALUE(COND1,PRICE1,COND2,PRICE2,EXPAND,LOG)
计算(COND1,PRICE1)和(COND2,PRICE2)2点决定的直线的数值
COND为数组,PRICE为数组或常数,LOG为1表示按对数计算,EXPAND为1表示向左延长.可用于趋势线预警、选股等
计算方式:先得到COND2条件满足的后点,再向左求COND1条件满足的前点,仅根据此2点计算

示例: LINEVALUE(DATE=1020129,LOW,DATE=1020606,LOW,0,1);{表示计算连接2002年1月29日低点和2002年6月6日低点的以对数方式计算的趋势线}

五、

函数: USERNAME

参数: N为常数,X为数组.

返回: 返回数组

说明: 取用户注册名。

示例: check:=STRCMP(USERNAME, 'userid')
为0表示用户注册名为userid,可用于公式只给指定用户使用。

六、

函数: USERNAME

参数: 无

返回: 返回值范围为0-11

说明: 当前证券类型。

示例: STKTYPE
返回值范围为0-11,
分别表示指数、A股、B股、基金、债券、其它、外汇、期货、其它股票、商品现货、期权、权证

七、

函数: DATAPERIOD

参数: 无

返回: 返回值范围为0-11

说明: 当前数据周期类型。

示例:DATAPERIOD
返回值范围为0-11,分别表示
分笔成交、1分钟、5分钟、15分钟、30分钟、60分钟、日、周、月、年、多日、多分钟  238种常用颜色代码速查表 

2004-12-23 00:08