当前位置:主页 >股票 >指标公式 >
一、VBS教程: 请参阅Vbs55.chm,里面已经论述得非常详细了,该文件在飞狐的主页提供了下载。 提示:在飞狐中使用VBS,大多涉及的是数值运算,先熟悉一些常用语句、基本概念就可以应用了,如循环语句、条件语句,赋值、数组、过程等概念。 VBS较飞狐的强大之处,在于循环,可以解决飞狐公式系统所无法处理的问题,但也有个致使的弱点,由于是VBS解释性语言,因此运行慢,利用VBS设计公式时,应注意使用高效率的算法。 二、VBS接口: VBS与飞狐公式系统之间,必须通过接口才能交换数据,也就是说,公式系统中的数据不能直接被VBS处理,同样VBS中运行的结果,也不能直接被公式系统使用。 VBS目前提供的接口有: 1、FFL.VarData("变量名"),传递常量、数组变量数据。 2、FFL.VarStartIndex("变量名"),传递数组变量有效数值起始位置,若脚本处理过程中不改变变量有效数值起始位,则无须调用。 3、FFL.MsgBox(strMsg),strMsg为字符串变量或常量。 4、FFL.Color("变量名"),用于指定指标输出变量的颜色;(可程序实现渐变色)。 5、FFL.LineThick("变量名"),用于指定指标输出变量的线宽;(可程序实现线宽)。 三、利用VBS设计公式: VBS脚本语句,必须使用“<%”和“%>”框起来,以便让公式系统能够识别,在一个指标公式中,可以多次调用VBS脚本,即可以有多组由“<%、%>”框起来的脚本。 在公式系统中无法实现而需要调用VBS的实例通常较复杂,为了学习VBS,所举的实例从简单开始,大多可以在原公式系统中实现。 以下通过具体实例,解剖一下VBS设计的公式。 例一:设计一个公式,计算收盘价对应的涨停价位(设涨停板为10%) 代码如下: spj:=close; <% vspj=ffl.vardata("spj") last=ubound(vspj) for i=0 to last vspj(i)=vspj(i)*1.1 next ffl.vardata("spj")=vspj %> vspj 以下详细解释公式代码: 1、spj:=close--定义一个序列变量spj,其值等于序列收盘价(对日K线而言,等于从上市首日直到最后一天的一系列收盘价,故名为序列变量)。 (阅读次数:)