当前位置:主页 >股票 >指标公式 >
接着是一段由“<%”、“%>”框起来的VBS程序代码。 2、vspj=ffl.vardata("spj")--将序列变量spj传递到VBS中,其数据放入数组vpj中。有关数组概念,可参阅Vbs55.chm。 这里对数组稍加解释,VBS中的数组,是由一系列元素构成的,本例中为Vspj(0)、vspj(1)......,这里括号中的0、1...... 等称为数组的下标,VBS数组下标是从0开始的。其中vbs(0)是数组的第一个元素,对应序列变量的第一个值(即首日收盘价),依此类推,直到最后一 个。那么,数组vspj的最后一个元素是哪个?股市马经 http://www.goomj.com收集整理这很重要,因为在涉及相关计算时必须知道。看下一行代码: 3、last=ubound(vspj)--ubound(vspj)是什么东东?查一下Vbs55.chm中的函数部分,原来是计算数组vspj最 大下标。本行语句,是把vspj的最大下标的值赋给变量last,也就是说last此后就等于vspj的最大下标值。 4、接着的三行语句是VBS的循环,此处的for...... nexe语句的VBS循环语句中的一种(其余几种循环语句,请自查Vbs55.chm文件中的解说)。循环是起什么作用的?我们来看看,要计算从第一天到 最后一天的涨停价位,如果逐条语句来写,大致如下: vspj(0)=vspj(0)*1.1--把第一天的收盘价vspj(0)乘以1.1,再赋回给vspj(0),运算后vspj(0)就不再等于收盘价,而是原价的涨停价位。 vspj(1)=vspj(1)*1.1--vspj(1)运算后等于第二天的涨停价位。 vspj(2)=vspj(2)*1.1 . . . vspj(last)=vspj(last)*1.1--最后一天的运算。 一共须写last+1条语句,显然效率太低了。这些语句用循环语句来写,只须3条就行了,即 for i=0 to last vspj(i)=vspj(i)*1.1 next 解释如下: for i=0 to last--循环首,让循环变量i从1开始,每次增加递增1循环执行“循环体”,直到i=last时跳出循环。 vspj(i)=vspj(i)*1.1--循环体,这里只有一条语句,可以有多条语句。当i=0时,执行的是vspj(0)=vspj(0) *1.1,随着i的递增,最后一次执行的是vspj(last)=vspj(last)*1.1,共执行last+1次。 next--循环尾,与for配套对应,执行到此处时,跳回到对应的循环首for重新执行。当for语句判断i=last+1时,for语句将会跳出循环,即跳过next,到next的下一条语句。 (阅读次数:)