发这段程序我考虑了好久,最终还是公之于众!
本程序为大智慧使用,塔与以往的排序完全不同,是在证券软件副图中排序历史上任意日期的股票。由于程序运算量非常大所以在编程时仅排列涨幅前30名的股票,如果你的电脑运算速度足够地快(不变换股票画面不影响开市时数据的变化。你也可收市后用),你可稍加修改参数选择更多的股票排列。受软件版面的限制,在此我只设定了九天的股票排序,但不影响你查如何一天的情况,做法有二种我下面会告诉您。在后续增加程序时,仅采用当天数据,这样速度会快得多。
编写该程序的目的是为后续编写出,能在第一时间和全局地,而且快速地发现可能涨停的股票。尽管我所使用的电脑换页面约需要3-5秒,但是这样也比预警迅速且不会像预警那样会漏报信号。关于之二,之三什么时间推出我自己不限定日期,看看大家欢迎的程度再定。大概编写的原则可以告诉大家:程序画面求简洁清晰易理解;二不写非常确定的指标,其实那样不利于使用者。这样点不好理解吧,比不如说在某一参数需要成交量放大的比例时,人们如果用5倍来定义,但是4.5倍或3.2倍时股票就直奔涨停了,往往是不出现或非常晚才出现这样的信号,这就是为什么经典指标均为股票的趋势而不是确定的数值,大家好想想你使用的指标情况为什么会漏掉差不多形态的股票呢?好了。。。。。。
查找历史排序方法:一是按ctrl+←键,一步一步地把您想查看的k线移入画面中;二是在看线中用鼠标选定你要看的范围。
数据排列为:横向第一组数值是股票的涨幅,空格后用括号括着的是该股票的代码;纵向按从上到下股票的涨幅逐渐升高。声明一点,表示股票名称的字符不好编写在此忽略了。
源码取名《涨停揽胜》,源码如下:
variable:S[400]=0;
variable:SS[400]=0;
REFLINE:-3,91;
IF BACKSET(DISPSTATUS=2,9) THEN BEGIN
{上海股票}
n:=1;
for j=600000 to 603500 do
IF STKINDI(str(j),'涨幅.')>4 and STKINDI(str(j),'gprq.a')=DAY THEN BEGIN
S[n]:=STKINDI('SH'+NUMTOSTRN(j,0),'涨幅.');
SS[n]:=j;
n:=n+1;
end;
{深圳股票,深圳中小版}
n:=101;
for j=1 to 2700 do
IF STKINDI('sz'+STRRIGHT(NUMTOSTRN(j+7000000,0),6),'涨幅.')>4 and STKINDI('sz'+STRRIGHT(NUMTOSTRN(j+7000000,0),6),'gprq.a')=day THEN BEGIN
S[n]:=STKINDI('sz'+STRRIGHT(NUMTOSTRN(j+7000000,0),6),'涨幅.');
SS[n]:=j+7000000;
n:=n+1;
end
{深圳创业版}
n:=301;
for j=300001 to 300400 do
IF STKINDI('sz'+str(j),'涨幅.')>4 and STKINDI('sz'+str(j),'gprq.a')=day THEN BEGIN
S[n]:=STKINDI('sz'+str(j),'涨幅.');
SS[n]:=j;
n:=n+1;
end;
A1:=0;
A2:=0;
for J=1 to 50 do
begin
for K=J to 399 do
begin
IF S[J]
begin
A1:=S[K+1];
S[K+1]:=S[J];
S[J]:=A1;
A2:=SS[K+1];
SS[K+1]:=SS[J];
SS[J]:=A2;
end
end
end;
DRAWTEXT(c>0,1,NUMTOSTRN(S[1],2)+' ('+STRRIGHT(str(ss[1]),6)+')'),Color80FFFF;
DRAWTEXT(c>0,4,NUMTOSTRN(S[2],2)+' ('+STRRIGHT(str(ss[2]),6)+')'),Color80FFFf;
DRAWTEXT(c>0,7,NUMTOSTRN(S[3],2)+' ('+STRRIGHT(str(ss[3]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,10,NUMTOSTRN(S[4],2)+' ('+STRRIGHT(str(ss[4]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,13,NUMTOSTRN(S[5],2)+' ('+STRRIGHT(str(ss[5]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,16,NUMTOSTRN(S[6],2)+' ('+STRRIGHT(str(ss[6]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,19,NUMTOSTRN(S[7],2)+' ('+STRRIGHT(str(ss[7]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,22,NUMTOSTRN(S[8],2)+' ('+STRRIGHT(str(ss[8]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,25,NUMTOSTRN(S[9],2)+' ('+STRRIGHT(str(ss[9]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,28,NUMTOSTRN(S[10],2)+' ('+STRRIGHT(str(ss[10]),6)+')'),Color80FFFF;
DRAWTEXT(c>0,31,NUMTOSTRN(S[11],2)+' ('+STRRIGHT(str(ss[11]),6)+')'),Color80FFFF;
DRAWTEXT(c>0,34,NUMTOSTRN(S[12],2)+' ('+STRRIGHT(str(ss[12]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,37,NUMTOSTRN(S[13],2)+' ('+STRRIGHT(str(ss[13]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,40,NUMTOSTRN(S[14],2)+' ('+STRRIGHT(str(ss[14]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,43,NUMTOSTRN(S[15],2)+' ('+STRRIGHT(str(ss[15]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,46,NUMTOSTRN(S[16],2)+' ('+STRRIGHT(str(ss[16]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,49,NUMTOSTRN(S[17],2)+' ('+STRRIGHT(str(ss[17]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,52,NUMTOSTRN(S[18],2)+' ('+STRRIGHT(str(ss[18]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,55,NUMTOSTRN(S[19],2)+' ('+STRRIGHT(str(ss[19]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,58,NUMTOSTRN(S[20],2)+' ('+STRRIGHT(str(ss[20]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,61,NUMTOSTRN(S[21],2)+' ('+STRRIGHT(str(ss[21]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,64,NUMTOSTRN(S[22],2)+' ('+STRRIGHT(str(ss[22]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,67,NUMTOSTRN(S[23],2)+' ('+STRRIGHT(str(ss[23]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,70,NUMTOSTRN(S[24],2)+' ('+STRRIGHT(str(ss[24]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,73,NUMTOSTRN(S[25],2)+' ('+STRRIGHT(str(ss[25]),6)+')'),Color80FFFF;
DRAWTEXT(c>0,76,NUMTOSTRN(S[26],2)+' ('+STRRIGHT(str(ss[26]),6)+')'),Color80FFFF;
DRAWTEXT(c>0,79,NUMTOSTRN(S[27],2)+' ('+STRRIGHT(str(ss[27]),6)+')'),Color80FFFF;
DRAWTEXT(c>0,82,NUMTOSTRN(S[28],2)+' ('+STRRIGHT(str(ss[28]),6)+')'),Color80FFFF;
DRAWTEXT(c>0,85,NUMTOSTRN(S[29],2)+' ('+STRRIGHT(str(ss[29]),6)+')'),Color80FFFF;
DRAWTEXT(c>0,88,NUMTOSTRN(S[30],2)+' ('+STRRIGHT(str(ss[30]),6)+')'),Color80FFFF;
DRAWTEXT(C>0,91,'涨幅·代 码'),Color00FF00;
end;
for j=1 to 400 do BEGIN
ss[j]:=0;
s[j]:=0;
END;
=================
引用公式:
{gprq} A:=day;
程序运行后的图: