大智慧软件自带选股公式源码

来源:百度文库 编辑:神马文学网 时间:2024/04/28 05:35:27

大智慧软件自带选股公式源码

上一篇 / 下一篇  2010-04-01 20:24:38

查看( 1452 ) / 评论( 1 ) / 评分( 0 / 0 )

智慧软件自带选股公式源码


 

001指标条件选股

★乖离率买入条件选股BIAS
{N 12 1 100 LL -6 -40 0}
(CLOSE-MA(CLOSE,N))/MA(CLOSE,N)*100 < LL;

乖离率卖出条件选股
{N 12 1 100 M 12 1 100}
100*(C-MA(C,N))/MA(C,N)>M;


★布林带买入条件选股BOLL
{P 26 5 100 T 2 0.1 10}
CROSS(CLOSE,"BOLL.LOWER"(P,T));

布林带卖出条件选股
{N 26 5 300 P 2 0.1 10}
CROSS("BOLL.UPPER"(N,P),C);


★随机指标买入条件选股
{N 9 1 100 N1 3 2 40 N2 3 2 40}
CROSS("KDJ.J"(N,M1,M2),0);

随机指标卖出条件选股
{N 9 1 100 N1 3 1 100 N2 3 1 100}
CROSS(0,"KDJ.J"(N,N2,N3));


★KD买入点条件选股
{N 9 1 100 N1 3 2 40 N2 3 2 40 N3 20 1 100 }
RSV:= (CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,M1,1);
D:=SMA(K,M2,1);
CROSS(K,D) AND D


KD卖出条件选股
{N 9 1 100 N1 3 1 100 N2 3 1 100 N3 80 1 100 }
RSV:= (CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,N1,1);
D:=SMA(K,N2,1);
CROSS(D,K) AND D>N3;


★均线买入条件选股
{SHORT 5 1 300  LONG 10 2 300}
CROSS(MA(CLOSE,SHORT),MA(CLOSE,LONG));

均线卖出条件选股
{N 10 1 100 M 30 1 100}
CROSS(MA(C,M),MA(C,N));

★MACD买入点条件选股
{LONG 26 20 100 SHORT 12 5 50 M 9 2 40}
DIFF := EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);
DEA  := EMA(DIFF,M);

MACD卖出条件选股
{LONG 12 1 100 SHORT 26 5 100 M 9 1 100}
DIFF := EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);
DEA  := EMA(DIFF,M);
CROSS(DIFF,DEA);


★MTM买入条件选股
{N 6 1 100 N1 6 1 100}
CROSS("MTM.MTMMA"(N,N1),0);


MTM卖出条件选股
{N 6 1 100 N1 6 1 100}
CROSS(0,"MTM.MTMMA"(N,N1));


★RSI买入条件选股
{N 6 2 100 LL 20 0 40}
CROSS("RSI.RSI1"(N,2,2),LL);

RSI卖出条件选股
{N 6 1 100 N1 80 0 100}
CROSS("RSI.RSI1"(N,2,2),N1);


★抛物转向买入条件选股
{N 4 1 50 STEP 2 1 5 MAXP 20 5 80}
SARTURN(N,STEP,MAXP)=1;

抛物转向卖出条件选股SAR
{N 10 1 100 S 2 1 100 M 20 1 100}
SAR(N,S,M)=-1;


★威廉指标买入条件选股W&R
{N 14 2 100 HH 80 0 100}
CROSS("W&R"(N),HH);

威廉指标卖出条件选股
{N 14 1 100 M 20 0 100}
CROSS("W&R"(N),M);



002基本面选股

 

★市盈率
{n 30 10 30}
dynainfo(39)<=N;

★业绩选股
{n 0.4  0  100}
FINANCE2(3)>n;


★小盘股
{n 3000  700  50000}
FINANCE2(37)<=N;

大盘
{n 20000  15000  300000}
FINANCE2(37)>=N;


★净资产收益率选股
{n 20  0  300}
FINANCE2(5)>(N/100);

★主营业务利润率选股
{n 30 1 100}
FINANCE2(28)/FINANCE2(27)>=(N/100);


★市净率选股
{n 5  1  50}
C/FINANCE2(4)



003即时盘中选股

 

★涨幅选股
{N 0.03 0.01 0.1}
DYNAINFO(14)>=N;

★阶段涨幅选股
{ d1 990504 900101 1331231 d2 990802 900101 1331231}
A:=HHV(IF(DATE=D1,C,0),0);
B:=HHV(IF(DATE=D2,C,0),0);
B/A>=(1+P/100);


★即时量比选股
{n 1 1 100}
DYNAINFO(17)>=N;


★大手笔成交选股(买)
{n 200 1 10000}
BUYVOL>=N;

大手笔成交选股(卖)
{n 200 1 10000}
SELLVOL>N;


★换手率选股
{n 5 0.01 100}
DYNAINFO(37)>=N/100;


★涨速选股
{n 1 0.01 100}
DYNAINFO(24)>=N/100;


★振幅选股
{n 5 0.1 100}
DYNAINFO(13)>=N/100;



004走势特征选股

 


★均线多头排列
{n 5 1 100  n1 10 1 1000 n2 20 1 1000 n3 30 1 1000}
A1:=ma(close,n);
A2:=ma(close,n1);
A3:=ma(close,n2);
A4:=ma(close,n3);
Count(a1>a2 and a2>a3 and a3>a4,3)=3 and isup;


★均线空头排列
{n 5 1 100  n1 10 1 1000 n2 20 1 1000 n3 30 1 1000}
A1:=ma(close,n);
A2:=ma(close,n1);
A3:=ma(close,n2);
A4:=ma(close,n3);
Count(a1


 

4 形态特征选股公式的编制

(1)、均线多头排列
a1:=ma(c,n1);
a2:=ma(c,n2);
a3:=ma(c,n3);
a4:=ma(c,n4);
count(a1>a2 and a2>a3 and a3>a4,3)=3 and isup;
注:n1、n2、n3、n4j日均线呈多头排列,isup也可以用close>open表示。

(2)、均线空头排列
a1:=ma(c,n1);
a2:=ma(c,n2);
a3:=ma(c,n3);
a4:=ma(c,n4);
count(a1注:n1、n2、n3、n4j日均线呈空头排列,isup也可以用close

(3)、早晨之星
ref(close,2)/ref(open,2<0.95 and ref(open,1)1.05 and close>ref(close,2);
注:早晨之星,这种形态和叫法自然是后市向好,为买进信号。早晨之星由三根K线组成,其顺序是:第一天在下跌过程中已形成一根阴线:
ref(close,2)/ref(open,2<0.95
第二天呈裂口下跌,K线实体较短,构成星的主体部分,阴线或阳线均可,有无上下影线均不重要。
ref(open,1)关键是第三根K线必须是阳线,且其长度至少要升至第一根阴线实体(如果能够“包容”第一根阴线则最好不过了)
close/open>1.05 and close>ref(close,2)

(4)、强势整理
a1:=abs(close-open)/open<0.015;
a2:=count(a,m)=m;
a3:=ref(o,m)1+n/100;
a2 and a3;
注:一根实体超过n的长阳,后面跟m个K线实体不超过1.5%的K线。

(5)、高开大阴线
open>close and open/ref(c,1)>=1+m/100 and close/open<=1-n/100;
注:跳空高开m%,当日股价较开盘价跌幅大于n。股价经过一段持续攀升之后,某一日突然跳高开盘:
open/ref(c,1)>=1+m/100
后股价一路下行,尾市以接近最低点收市:
close/open<=1-n/100
此信号出现,往往意味着股价已形成短期头部,应注意回避
风险

(6)、低开大阳线
open=1+n/100;
注:跳空低开m%,当日股价较开盘价涨幅大于n,其他描述请参见(5)。
(7)、黄昏之星
ref(close,2)/ref(open,2)>1.03 and ref(open,1)>ref(close,2) and abs(ref(open,1)-ref(close,1)/ref(close,1)<0.02 and close/open<0.97 and close注:黄昏之星表示股价回落,是卖出信号,应伺机抛货。幕星同样由三根K线组成,其形态和晨星正好相反:
第一天股价继续上升,拉出一根阳线:
ref(close,2)/ref(open,2)>1.03
第二天波动较小,形成一根小阳线或小阴线,构成星的主体部分:
ref(open,1)>ref(close,2) and abs(ref(open,1)-ref(close,1)/ref(close,1)<0.02
第三天形成一根包容第二天并延伸至第一天阳线实体:
close/open<0.97 and close

(8)、跳空缺口
highref(high,1);
注:从内容上看,分别是向下跳空缺口和向上跳空缺口。

(9)、均线金*
a;=ma(c,5);
b:=ma(c,10);
cross(a,b);
注:前二句是5、10日均线,cross是交*函数,cross(a,b)表示5日均线与10日均线金*。

(10)、均线死*
a;=ma(c,5);
b:=ma(c,10);
cross(b,a);
注:前二句是5、10日均线,cross是交*函数,cross(b,a)表示5日均线与10日均线死*。

(11)、均线粘合
ma1:=ma(c,5);
ma2:=ma(c,10),
ma3:=ma(c,20);
p1:=abs(ma1-ma2)+abs(ma2-ma3);
p1/cref(ma1,1) and ma2>ref(ma2,1);
注:前三句是三根均线,p1是第一根均线减第二根均线差的绝对值与第二根均线减第三根均线差的绝对值之和,最后一句是p1与收盘价的比值小于一定比率m%(一般该比率为2%以下,同时前二均线今日比昨日上翘。


 

5、走势特征选股公式的编制

(1)、n日内创新高
   hhv(high,n)=hhv(high,0) and barscount(c)>=n;
注:n为指标参数,可在参数设定范围内设定参数范围。Hhv(x,n),求n周期内x最高值,n=0则从第一个有效值开始;barscount(x),将当前位置到n周期前的数值设为1,若x非0,则将当前位置到n周期前的数值设为1。

(2)、n日内创新低
   llv(low,n)=llv(low,0) and barscount(close)>=n;
注n为指标参数,可在参数设定范围内设定参数范围。Llv(x,n),求n周期内x最低值,n=0则从第一个有效值开始;barscount(x)第一个有效
数据到当前的天数,例如,barscount(close)以于日线数据取得上市以来总交易日数。

(3)、n日内阴线多于阳线
   count(open>close,n)/n<0.5;
注:n为指标参数,可在参数设定范围内设定参数范围。同时可以自由编辑里面的数值(如0.5等 ,达到确定阴线占全部K线个数的比例)。

(4)、n日内阳线多于阴线
   count(open0.5;
注:n为指标参数,可在参数设定范围内设定参数范围。同时可以自由编辑里面的数值(如0.5等 ,达到确定阳线占全部K线个数的比例)。

(5)、n日内上涨多于下跌(第二天开盘高于前一天收盘)
count(c>ref(c,1),n)/n>0.5;
注:n为指标参数,可在参数设定范围内设定参数范围。同时可以自由编辑里面的数值(如0.5等 ,达到确定其中比例)。

(6)、n日内上涨少于下跌(第二天开盘低于前一天收盘)
   count(c>ref(c,1),n)/n<0.5;
注:n为指标参数,可在参数设定范围内设定参数范围。同时可以自由编辑里面的数值(如0.5等,达到确定其中比例)。

(7)、连续n日收阳线
  up:=close>open;
count(up,n)=n;
注:count(x,n),统计n周期中满足x条件的周期数,若n=0则从第一个有效值开始。n为指标参数,可在参数设定范围内设定参数范围。

(8)、连续n日内收阴线
  up:=closecount(up,n)=n;
注:count(x,n),统计n周期中满足x条件的周期数,若n=0则从第一个有效值开始。N为指标参数,可在参数设定范围内设定参数范围。

(9)、连续n天上涨
   count(close>ref(close,1),n)=n;
注:count(x,n),统计n周期中满足x条件的周期数,若n=0则从第一个有效值开始。N为指标参数,可在参数设定范围内设定参数范围。

(10)、连续n天下跌
  count(c注:count(x,n),统计n周期中满足x条件的周期数,若n=0则从第一个有效值开始。N为指标参数,可在参数设定范围内设定参数范围。

(11)、首次创新高
   barssince(c>hhv(if(barscount(c)=1,high,0),0))+1=1;
注:barscount(x),若x非0,则将当前位置到n周期前的数值设为1。

(12)、创历史新高
   hhv(close,0)=close;
注:hhv(x,n),求n周期内x最高值,n=0则从第一个有效值开始。

(13)、创历史新低
   llv(close,0)=close;
注:llv(x,n),求n周期内x最小值,n=0则从第一个有效值开始。

(14)、单日放量
  a:=ref(ma(vol,5),1);
vol/a>n and vol/capital*100>m;
注:n为指标参数,代表今日成交量和前一日的5日均量的比值,可在参数设定范围内设定参数范围。

(15)、阶段缩量
   sum(vol,n1)/capital<=n2;
注:n1为要统计的阶段时间,n2为缩量比例,可在参数设定范围内设定参数范围。

(16)、阶段放量
   sum(vol,n1)/capital>=n2;
注:n1为要统计的阶段时间,n2为y放量比例,可在参数设定范围内设定参数范围。

(17)、持续放量
  a:=vol>ref(vol,1);
count(a,n)=n;
注:其中条件a的含义为成交量较上一交易日放大,n为要统计的阶段时间,可在参数设定范围内设定参数范围。

(18)、持续缩量
  a:=volcount(a,n)=n;
注:其中条件a的含义为成交量较上一交易日缩小,n为要统计的阶段时间,可在参数设定范围内设定参数范围。

(19)、间隔放量
  a:=ma(vol,5);
barscount(c)>=n and hhv(a,n)n2*a,n)>n3;
注:a.barscount(x)第一个有效数据到当前的天数。Barscount(c)对于日线数据取得上市以来总交易日数。
b.完整含义:n日内五日均量的最大值小于最小值的n1倍,成交量大于等于五日均量的n2倍的情况发生的次数多于n3次。

(20)、放量上攻
a:=(c-ref(c,1))/ref(c,1)>=(n/100);
sum(vol,n1)/capital>=(n2/100) and count(vol>ref(vol,1),n3 )=n3 and count(a,n3)=n3;
完整含义:每日股价涨幅均大于n%,n1日内累计换手率大于n2%,并且成交量连续在n3日内放大。

(21)、温和放量上攻,股价小幅上扬
a1:=close/ref(close,1);
a2:=a1>1 and a1<1.03;

成交量小幅上扬
b1:=vol/ref(vol,1);
b2:=b1>1 and b1<2;
c1:=ma(vol,n)/capital<0.05;
count(a2 and b2,n)/n>0.6 and c1;

完整公式为:
a1:=close/ref(close,1);
a2:=a1>1 and a1<1.03;
b1:=vol/ref(vol,1);
b2:=b1>1 and b1<2;
c1:=ma(vol,n)/capital<0.05;
count(a2 and b2,n)/n>0.6 and c1;
注:公式分为股价小幅上扬和成交量小幅上扬两个部分,请在指标编写时注意其结构。

(22)、突然放量
vol>ref(hhv(vol,n),1*m;
注:当前成交量高于n个周期中最大成交量的m倍。

(23)、平台整理
count(close,0)>n and (hhv(close,n)-llv(close,n))/llv(close,n)<=(n1/100);
注:count(close,0)>n为平台整理n个周期的设定。(hhv(close,n)-llv(close,n))/llv(close,n)<=(n1/100)为平台整理幅度n1%的设定。

(24)、突破长期盘整
ref(((hhv(h,n)-llv(l,n))/llv(l,n))/llv(l,n)),1)<=(n1/100) and c>=ref(hhv(h,n),1) and barscount(c)>n;
注:前n日在上下n1%的幅度内整理:ref(((hhv(h,n)-llv(l,n))/llv(l,n))/llv(l,n)),1)<=(n1/100);
今日突破:c>=ref(hhv(h,n),1)。

(25)、阶段强势股
a:=sum(if(date-n=0,indexc,0),0);
b:=sum(if(date-n1=0,indexc,0)0);
e:=sum(if(date-n=0,c,0),0);
f:=sum(if(date-n1=0,c,0),0);
((f-e)/e)>((b-a)/a);
注:该公式求的是n日-n1日之间涨幅高于大盘的
股票。n、n1参数的表达格式为yymmdd,注意在2000年前的表达为年份的后两位,例如1999年为99,从2000年开始以100依次向后累加,例如2001年9月14日为1010914,indexc函数表示同期大盘的收盘价,该函数对分笔成交分析周期无效。

(26)、阶段弱势股
a:=sum(if(date=n,indexc,0),0);
b:=sum(if(date=n1,indexc,0)0);
e:=sum(if(date=n,c,0),0);
f:=sum(if(date=n1,c,0),0);
((f-e)/e)<((b-a)/a);
注:该公式求的是n日-n1日之间涨幅低于大盘的股票。n、n1参数的表达格式为yymmdd,注意在2000年前的表达为年份的后两位,例如1999年为99,从2000年开始以100依次向后累加,例如2001年9月14日为1010914,indexc函数表示同期大盘的收盘价,该函数对分笔成交分析周期无效。

(27)、大盘同步
count((c>o and indexc>indexo) or (cm/100;
注:含义为n周期中与大盘走势相同(同收阴线或同收阳线)的例超过m%。此处的o不是数字的零,而是开盘价open的首写字母o。

(28)、n日内强势股
a:=(c-ref(o,n))/ref(o,n);
b:=(indexc-ref(indexo,n))/ref(indexo,n);
a>b and a/b>=m;
注:n日内
个股涨幅大于等于大盘涨幅的m倍。