- 金币:
-
- 奖励:
-
- 热心:
-
- 注册时间:
- 2014-4-27
|
|
飞狐公式系统--技术分析描述语言系统(三)
来自:MACD论坛(bbs.shudaoyoufang.com)
作者:XXM2014
浏览:6231
回复:0
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
四、绘图函数、线型描述:
上一讲,我们学习了条件表达式,这是公式设计中较难的部分,也是最为灵活多变的部分。今天轻松一下,学习绘图函数、线型描述符。
1、线型描述函数:查询可知,目前飞狐本类函数**有函数22个,其中描述指标线颜色的有11个,其余11个函数描述指标线的形状、宽度、偏移等,下面举例说明部分函数的常见用法。
例1:指定5日均价线显示为红色。
求解1:ma5:ma(c,5),colorred
求解2:ma5:ma(c,5),color0000ff
说明:
①colorXXXXXX 形式的颜色描述,XXXXXX是6位颜色代码,其中0000ff表示红色,其它颜色的代码,请查阅飞狐帮助文件中的附录部分。
②用colorXXXXXX形式来描述,可以表达更多的颜色。
例2:指定5日均价显示为红色,并加宽显示,10日均价显示为蓝色,线宽为默认,20日均线不显示指标线但显示数值。
求解:代码如下
ma5:ma(close,5),colorred,linethick2;
ma10:ma(c,10),colorblue;
ma20:ma(c,20),linethick0;
这里用到了描述符linethick,注释如下:
{ 改变指标线粗细
例如:ma1:ma(close,5),linethick3;
LINETHICK0 表示不画出指标线,不影响坐标,但可在顶部显示数值}
2、绘图函数:飞狐提供了丰富的绘图函数,巧妙应用绘图函数,可以使指标线色彩鲜艳,可以画出自己绘出K线等等。
例3:5日均价线走平或向右上倾斜时,显示为晶红色,否则显示为绿色。
求解:
ma5:ma(c,5),colormagenta;
partline(ma5<ref(ma5,1),ma5),colorgreen;
代码解释:
①ma5:ma(c,5),colorred,5日均价线显示为晶红色。
②partline(ma5<ref(ma5,1),ma5),colorgreen中,ref(ma5,1)为昨5日均价,ma5<ref(ma5,1)表示今5日均价线小于昨5日均价线,即5日均价线是下降的;因此本条代码语句意思是,5日均价线呈下降趋势时,5日均价线显示为绿色。本语句在第一条代码语句之后,所画的绿线将覆盖第一条语句所画的晶红色线。这样第一条语句所画的晶红色线,只剩下走平、向上倾斜部分保持晶红色。
例4:利用STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY)函数绘制K线。
分析:K线由上、下影线、实体部分组成,影响K线的股价有open、close、high、low,如果今上涨,K线为红色,否则为蓝色。代码如下:
stickline(isup,low,high,1,1),colorred;{今上涨,在最低价到最高价间画红色细线}
stickline(isup,open,close,7,1),colorred;{今上涨,在收盘价到开盘价间画红色空心柱线}
stickline(isdown,low,high,1,0),colorblue;{今下跌,在最低价至最高价间画蓝色细线}
stickline(isdown,open,close,7,0),colorblue;{今下跌,在开盘价至收盘价间画蓝色实心柱线}
五、引用其它公式、引用其它周期、引用其它个股数据:
1、摘录飞狐帮助文件中的相关内容如下,其中选股公式、交易公式将在后面陆续讲解:
㈠引用指标公式/交易系统/条件选股公式
1、引用指标公式,可以写成:
"公式名称.指标线名称"(参数表), 其中参数表中的参数个数应该与该公式的实际参数数量一致,若不写参数表,则表示使用缺省参数。
例如:"MACD.DIFF",表示引用根据缺省参数,引用MACD指标中DIFF指标线数值。
2、引用交易系统公式,可以写为:
"SYSTEM.公式名称.交易类型"(参数表), 交易类型可以为ENTERLONG、EXITLONG、ENTERSHORT或者 EXITSHORT,分别表示引用多头买入、多头卖出、空头买入、空头卖出。
例如:"SYSTEM.MACD.ENTERLONG",表示根据缺省参数,引用MACD交易系统的多头买入条件。
3、用条件选股公式,可以写为:
"EXPLORER.公式名称"(参数表)
例如:"EXPLORER.MACD",表示根据缺省参数,引用MACD条件选股条件。
㈡跨周期引用公式
下面举例说明跨周期引用的书写方法:
例1."MACD.DIFF#WEEK"(26,10,5)
表示引用MACD指标公式DIFF指标线的数值,在计算指标线值时,参数取(26,10,5),计算周期取周线。
例2."SYSTEM.MACD.ENTERLONG#MONTH"
表示引用MACD交易系统的多头买入信号,参数取缺省值,计算周期取月线。
注意:跨周期引用只能从较短周期引用较长周期,不允许反方向的引用。
可供引用的周期类型有:MIN1,MIN5,MIN15,MIN30,MIN60,DAY,WEEK,MONTH等八种,分别表示1、5、15、30、60分钟线,以及日线、周线、月线。
㈢引用任意股票的数据
在公式中可以引用其它任何股票的数据,方法为:
"股票代码$数据名称"
数据名称可以是OPEN、HIGH、LOW、CLOSE、VOL、AMOUNT,分别表示包括开盘价、最高价、最低价、收盘价、成交量、成交额。
例如,"000001$CLOSE",表示引用深发展A的收盘价。
2、举例说明:其实上面已经有例子了,这里再举一个综合性的例子:
例1:在分笔周期的主图,显示价位线(即PRICE主图),按下面要求设计主图指标,设为SL005:
⑴显示最新价;
⑵显示均价线;
⑶显示昨收盘,以红色线表示;
求解:(请回顾一下,什么是主图指标、主图叠加指标)
⑴显示最新价,就是最新的收盘价。公式代码很简单,即
最新价:close;
⑵所谓均价,就是今天的平均成交价,等于“当前”的总成交金额除以“当前”的总成交量。在分笔周期,显示的主图,仅显示当天的数据,它的有效起始周期,是当天的开盘时间,结束于当天收盘。
“当前”的总成交金额,等于从开盘到“当前”的成交金额总和,需用“引用函数”类中的求和函数即SUM(X,N),经查询,其注释为
{求总和。
用法: SUM(X,N),统计N周期中X的总和,N=0则从第一个有效值开始。
例如: SUM(VOL,0)表示统计从上市第一天以来的成交量总和}
成交金额的函数是amount,因此,“当前”的总成交金额为
sum(amount,0)
同理,“当前”的总成交量为
sum(vol,0)
这样,我们就得到均价的公式代码为
均价:sum(amount,0)/sum(vol,0);
⑶昨收盘,是日周期,现在我们是设计分笔周期的公式,这就是说,现在要从分笔周期引用日周期的昨收盘价。怎么办?当然要设计一个被引用的指标公式,设为yy001(意为“引用001”),只需一行代码
zsp:ref(c,1);
有了被引用的公式yy001,设计引用昨收盘的公式如下
昨收盘:"yy001.zsp#day",colorred;{意思是,引用公式yy001的变量(即指标线)zsp,被引用的周期是日线}
综合起来,本题的主公式代码如下(另有一个被引用公式yy001),
最新价:c;
均价:sum(amount,0)/sum(vol,0)/100;
昨收盘:"yy001.zsp#day",colorred;
最后公式编辑器中,设定公式的默认周期为分笔,其它周期全部禁用。
|
|
|