求教解释股票公式ABS(ma(c,20)-ma(c,90))/ma(c,60);

2024-05-13

1. 求教解释股票公式ABS(ma(c,20)-ma(c,90))/ma(c,60);

朋友,不是除以60,而是除以60天的均线。
其中:MA表示均价,ma(c,60)就是60天收盘的平均价格了。
          ABS表示绝对值。

求教解释股票公式ABS(ma(c,20)-ma(c,90))/ma(c,60);

2. ABS(MA(C,20)-MA(C,90))是怎样进行选股,是怎样在通信达软件里面自动选股?

源码的意义:收盘价的20日简单移动平均-收盘价的90日简单移动平均的绝对值。
收盘价的20日简单移动平均为短期慢线,收盘价的90日简单移动平均为中期慢线。短期慢线大于中期慢线,多头趋势;反之则空头趋势。单单用这一段源码选股,条件不充分。

3. 股票预警公式 5 10 20均线最小口径或是粘合 报警的公式 谢谢!!!!

X1:=ABS(MA(C,10)/MA(C,20)-1)<0.01;{取1%振幅内粘合}
X2:=ABS(MA(C,5)/MA(C,10)-1)<0.01;
X3:=ABS(MA(C,5)/MA(C,20)-1)<0.01;
 
AA:=MA(C,5)>REF(MA(C,5),1);BB:=MA(C,10)>REF(MA(C,10),1);CC:=MA(C,5)>MA(C,10);{均线勾头向上}
 
CDJZ:=ABS(MA(C,20)-MA(C,120))/MA(C,120)<0.4;{长短均线距离绝对值越小越好}
 
MA(C,5)>REF(MA(C,5),1) AND X1 AND X2 AND X3
AND CDJZ AND AA AND BB AND CC;

股票预警公式 5 10 20均线最小口径或是粘合 报警的公式 谢谢!!!!

4. 请老师编写通达信选股公式 (短线买点)

一.选股指标.

次日涨停
W1:=C=HHV(C,20);
W2:=BARSLAST(W1);
W3:=IF(W2>0,REF(C,W2),REF(C,W2));
W4:=CROSS(C,REF(W3,1));
W4 AND COUNT(W4,5)=1;
黄转紫选股
DIFF:=EMA(DCLOSE,12)-EMA(DCLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=(DIFF-DEA)*2;
紫柱:MACDREF(MACD,1) AND REF(MACD,1)<REF(MACD,2);

低位金叉选股
DIFF:=EMA(DCLOSE,12)-EMA(DCLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=(DIFF-DEA)*2;
低位金叉:CROSS(DIFF,DEA) AND DIFF<-0.1;

二次金叉选股
DIFF:=EMA(DCLOSE,12)-EMA(DCLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=(DIFF-DEA)*2;
JCCOUNT:=COUNT(CROSS(DIFF,DEA),BARSLAST(DEA>=0));
二次金叉:CROSS(DIFF,DEA) AND DEA<0 AND COUNT(JCCOUNT=2,21)=1;
绝地反弹
(1)
VAR1:=REF(LOW,1);
VAR2:=SMA(ABS(LOW-VAR1),13,1)/SMA(MAX(LOW-VAR1,0),13,1)*100;
VAR3:=EMA(IF(CLOSE*1.2,VAR2*13,VAR2/13),13);
VAR4:=LLV(LOW,34);
VAR5:=HHV(VAR3,34);
VAR6:=IF(LLV(LOW,55),1,0);
VAR7:=EMA(IF(LOW<=VAR4,(VAR3+VAR5*2)/2,0),3)/618*VAR6;
XL1:=MA(LOW,2)*0.96;
XL2:=MA(LOW,26)*0.85;
XL3:=REF(XL1,1)<XL2 AND REF(XL1,1)<XL1 AND REF(XL1,1)<REF(XL1,2);
启动:=IF(XL3,0,VAR7*3),COLORRED;
XG:启动>25;

(2)

BACKSET( (REF(CLOSE,1)<REF(OPEN,1) AND
CLOSE>OPEN AND ABS(CLOSE-REF(CLOSE,1))/CLOSE<0.002),2);
A2:=FILTER(A1<=V3,10);
ND CAPITAL<300000000
REF(V,1) = LLV(V,4) AND V >=REF(V,1)
HHV(V,3)=REF(V,1) AND HHV(V,5)=REF(V,1) AND HHV(V,21)=REF(V,1)
AND V >=REF(V,1)
01>0 AND T02>0;

1.三线粘合
M:=1;
M5:=MA(CLOSE,5);
M10:=MA(CLOSE,10);
M20:=MA(CLOSE,20);
K1:=MAX(MAX(M5,M10),MAX(M10,M20));
K2:=MIN(MIN(M5,M10),MIN(M10,M20));
A:=MAX(M5,MAX(M10,M20))/MIN(M5,MIN(M10,M20))<1+0.03*M;
A1:=(K1/K2-1)<0.005;
A2:=(K1/K2-1)<0.005;
A3:=V>REF(V,1)*1.5 AND V>MA(V,5);
XG:A AND A1 AND A2 AND A3 AND C>O AND V> REF(V,1) AND CAPITAL<=300000000;

2.三条线粘合
N1:=5;N2:=10;N3:=20;M:=1;
MA1:=MA(C,N1);MA2:=MA(C,N2);MA3:=MA(C,N3);
A3:=V>REF(V,1)*1.5 AND V>MA(V,5);
MAX(MA1,MAX(MA2,MA3))/MIN(MA1,MIN(MA2,MA3))<1+0.01*M
AND C>O AND V> REF(V,1) AND FINANCE(7)<=300000000
AND A3 AND CAPITAL<=300000000;

3.均线粘合
M:=1;
M5:=MA(CLOSE,5);
M10:=MA(CLOSE,10);
M20:=MA(CLOSE,20);
K1:=MAX(MAX(M5,M10),MAX(M10,M20));
K2:=MIN(MIN(M5,M10),MIN(M10,M20));
A:=MAX(M5,MAX(M10,M20))/MIN(M5,MIN(M10,M20))<1+0.01*M;
A1:=(K1/K2-1)<0.005;
A2:=(K1/K2-1)<0.005;
A3:=V>REF(V,1)*1.5 AND V>MA(V,5);
XG:A AND A1 AND A2 AND A3 ;
3. 金叉选股指标
快线:=EMA(EMA(EMA(EMA(CLOSE,2),2),2),2);
慢线:=EMA(REF(快线,1),2);
A3:=V>REF(V,1)*1.5 AND V>MA(V,5);
XG:CROSS(快线,慢线) AND C>O AND
V>=MA(V,21) AND V> REF(V,1) AND CAPITAL<=300000000 ;
4.角度
MA5:=MA(C,5);
MA10:=MA(C,10);
MA20:=MA(C,20);
V0:CROSS(MA5,MA10) AND CROSS(MA10,MA20) AND
CROSS(MA5,MA20) ;
IF(角度MA3>45 AND 角度MA5>40 AND 角度MA10>10
AND 角度MA20>20 AND MA(C,135)>REF(MA(C,135),1),
1,0),COLOR00FF00
1.聚宝盆

DIFF:=EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);
DEA:=EMA(DIFF,M);
MACD2:=2*(DIFF-DEA);
HHV(MACD2,4)REF(MACD2,1) AND REF(MACD2,1)<REF(MACD2,2) AND REF(MACD2,2)<REF
(MACD2,3);
2.强势股
{SJXXG四均线选股}
MA3:=MA(C,3);
MA5:=MA(C,5);
MA10:=MA(C,10);
MA20:=MA(C,20);
V0:=MA(C,3)>REF(MA(C,3),1) AND MA(C,5)>REF(MA(C,5),1) AND C>MA(C,3)
AND MA(C,3)>MA(C,5) ; {均线C,MA3,MA5多头排列并向上;}
角度MA3:=ATAN((MA3/REF(MA3,1)-1)*100)*180/3.1416;
角度MA5:=ATAN((MA5/REF(MA5,1)-1)*100)*180/3.1416;
角度MA10:=ATAN((MA10/REF(MA10,1)-1)*100)*180/3.1416;
角度MA20:=ATAN((MA20/REF(MA20,1)-1)*100)*180/3.1416;
选股MA20:IF(角度MA3>45 AND 角度MA5>45 AND 角度MA10>60 AND 角度MA20>45 AND MA(C,250)>REF(MA(C,250),1),
1,0),COLOR00FF00;
{设计思路:
1.3日均线角度大于45度;
2:5日均线角度大于45度;
3:10日均线角度大于60度;
4.20日均线角度大于45度;
5.MA250向上;};
3。紫色冲关
(1).
CROSS( CLOSE,MA(C,30))
AND CLOSE>MA(C,22) AND CLOSE>MA(C,30)AND
COUNT(MA(CLOSE,13)>REF(MA(CLOSE,13),1),1)
AND COUNT(MA(CLOSE,8)>REF(MA(CLOSE,8),1),1)
AND COUNT(MA(CLOSE,20)>REF(MA(CLOSE,20),1),1)
AND CLOSE/OPEN>1.015
AND DYNAINFO(37)>0.2% COLORLIBLUE;

(2).
QSXS:=MA(CLOSE,8)>REF(MA(CLOSE,8),1) AND MA(CLOSE,3)>REF(MA(CLOSE,3),1) AND MA(CLOSE,5)>REF(MA(CLOSE,5),1);
DXJC:=CROSS(CLOSE,MA(C,21)) AND CLOSE>MA(C,13) AND CLOSE/OPEN>1.015;
HSL:=VOL/CAPITAL*100;
选股:QSXS AND DXJC AND HSL>2;

(3).
{SJXXG四均线选股}
MA3:=MA(C,1);
MA5:=MA(C,3);
MA10:=MA(C,5);
MA20:=MA(C,10);
V0:=MA(C,1)>REF(MA(C,1),0.5) AND MA(C,3)>REF(MA(C,3),0.5) AND C>MA(C,1)
AND MA(C,1)>MA(C,1) ; {均线C,MA3,MA5,MA10,MA20多头排列并向上;}
角度MA3:=ATAN((MA3/REF(MA3,1)-1)*100)*180/3.1416;
角度MA5:=ATAN((MA5/REF(MA5,1)-1)*100)*180/3.1416;
角度MA10:=ATAN((MA10/REF(MA10,1)-1)*100)*180/3.1416;
角度MA20:=ATAN((MA20/REF(MA20,1)-1)*100)*180/3.1416;
选股MA20:IF(角度MA3>50 AND 角度MA5>40 AND 角度MA10>30
AND 角度MA20>20 AND MA(C,250)>REF(MA(C,250),1),
1,0),COLOR00FF00;
{设计思路:
1.1日均线角度大于40度;
2:3日均线角度大于40度;
3:5日均线角度大于50度;
4.10日均线角度大于40度;
5.MA135向上;};

(4).
{SJXXG四均线选股}
MA3:=MA(C,5);
MA5:=MA(C,10);
MA10:=MA(C,15);
MA20:=MA(C,20);
V0:=MA(C,5)>REF(MA(C,10),1) AND MA(C,10)>REF(MA(C,15),1)
AND MA(C,15)>MA(C,20) ; {均线C,MA3,MA5多头排列并向上;}
角度MA3:=ATAN((MA3/REF(MA3,1)-1)*100)*180/3.1416;
角度MA5:=ATAN((MA5/REF(MA5,1)-1)*100)*180/3.1416;
角度MA10:=ATAN((MA10/REF(MA3,1)-1)*100)*180/3.1416;
角度MA20:=ATAN((MA20/REF(MA5,1)-1)*100)*180/3.1416;
选股MA20:IF(角度MA3>42 AND 角度MA5>25 AND 角度MA10>15 AND 角度MA20>10
AND MA(C,135)>REF(MA(C,135),1),
1,0),COLOR00FF00;
{设计思路:
1.3日均线角度大于30度;
2:5日均线角度大于40度;
3:10日均线角度大于45度;
4.20日均线角度大于40度;
5.MA135向上;};

(5).5日最底

V5:=LLV(V,5);
QSXS:=MA(CLOSE,5)>REF(MA(CLOSE,5),1) AND MA(CLOSE,8)>REF(MA(CLOSE,8),1)
AND MA(CLOSE,21)>REF(MA(CLOSE,21),1);
DXJC:=CROSS(CLOSE,MA(C,21)) AND CLOSE>MA(C,21) AND CLOSE/OPEN>1.015;
HSL:=VOL/CAPITAL*100;
选股:V5 AND QSXS AND DXJC AND HSL>2;
1....{蓄势待发}
V0:=EMA(C,5);
EMA10:=EMA(C,10);
EMA20:=EMA(C,20);
EMA30:=EMA(C,30);
EMA60:=EMA(C,60);
M1:=1000*EMA10/EMA60=975;
M2:=1000*EMA20/EMA60=980;
M3:=1000*EMA30/EMA60=985;
M4:=M1 AND M2 AND M3 AND CROSS(V0,EMA10);
M5:=M1 AND M2 AND M3 AND CROSS(V0,EMA30);
T1:=1000*EMA10/EMA30=990;
T2:=1000*EMA20/EMA30=990;
T3:=T1 AND T2 AND CROSS(V0,EMA10);
T4:=T1 AND T2 AND CROSS(V0,EMA30);
M4 OR M5 OR T3 OR T4;

2.短线之王
VAR1:=(-100)*(HHV(HIGH,3)-CLOSE)/(HHV(HIGH,3)-LLV(LOW,3));
CROSS(VAR1,-87) AND OPEN=1.099*REF(CLOSE,1) AND INDEXC>0.98*REF(INDEXC,1) AND CLOSE<=1.47*LLV
(CLOSE,58);

3.枪挑小梁王
W1:=C=HHV(C,20);
W2:=BARSLAST(W1);
W3:=IF(W2>0,REF(C,W2),REF(C,W2));
W4:=CROSS(C,REF(W3,1));
枪挑小梁王:W4 AND COUNT(W4,5)=1;

4.短线之王
VAR1:=(-100)*(HHV(HIGH,3)-CLOSE)/(HHV(HIGH,3)-LLV(LOW,3));
CROSS(VAR1,-87) AND OPEN=1.099*REF(CLOSE,1) AND INDEXC>0.98*REF(INDEXC,1) AND CLOSE<=1.47*LLV
(CLOSE,58);
5.财务突破选股
{财务突破选股公式-理想闲云孤鹤-通信达专用}
年认同价:=MA(C,240);
价格中枢:=(SUM(年认同价,0)/(BARSSINCE(年认同价>0)+239));
箱顶:=价格中枢*1.2;
箱底:=价格中枢*0.8;
毛利润率:=FINANCE(21)/FINANCE(20);
成长价值:=年认同价*(1+毛利润率);
收益价值:=年认同价+FINANCE(33);
回调认同:=EMA(EXPMA(C,20),13);
多头:=(回调认同>REF(回调认同,1))AND(成长价值>REF(成长价值,1))AND(收益价值>REF(收益价值,1))AND(DYNAINFO(7)>0);
回调条件:=COUNT(C=3;
回调突破:=(REF(C,1)回调认同)AND(回调条件)AND 多头;
成长条件:=COUNT(C=3;
成长突破:=(REF(C,1)成长价值)AND(成长条件)AND 多头;
收益条件:=COUNT(C=3;
收益突破:=(REF(C,1)收益价值)AND(收益条件)AND 多头;
箱底条件:=COUNT(C=3;
箱底突破:=(REF(C,1)箱底)AND(箱底条件)AND 多头;
价格条件:=COUNT(C=3;
价格突破:=(REF(C,1)价格中枢)AND(价格条件)AND 多头;
箱顶条件:=COUNT(C=3;
箱顶突破:=(REF(C,1)箱顶)AND(箱顶条件)AND 多头;
突破买点:(回调突破+成长突破+收益突破+箱底突破+价格突破+箱顶突破);

6.横盘是银

VAR1:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
VAR2:=SMA(VAR1,3,1);
VAR3:=SMA(VAR2,3,1);
VAR4:=EMA(CLOSE,12)-EMA(CLOSE,26);
VAR5:=EMA(VAR4,9);
VAR6:=2*(VAR4-VAR5);
COUNT(CROSS(VAR2,VAR3),2)>=1 AND COUNT(CROSS(VAR6,0),5)>=1 AND MA(CLOSE,5)>MA(CLOSE,10) AND MA(CLOSE,10)>MA(CLOSE,20) AND
CLOSE>MA(CLOSE,5);
{“短线是银”的使用说明:
此组合选择比较简单,初学者易于掌握,短线有一定可操作性与准确性。但只适合于3天内的短线炒作,不能确定长期趋势。
选股设置:
2日内KD金叉,5日内MACD金叉,均线5日,10日,20日多头排列,收盘价涨过5日均线。};
7.黑马起步选股1
VAR5:=EMA(SMA((CLOSE-LLV(LOW,100))/(HHV(HIGH,100)-LLV(LOW,100))*100,8,1),3);
选股:CROSS(VAR5,15) OR CROSS(VAR5,20) OR CROSS(VAR5,25);

8.起攀选股
{起攀选股}
VAR6:=(2*C+H+L)/4;
VAR7:=LLV(L,27);
VAR8:=HHV(H,27);
攀登:=EMA((VAR6-VAR7)/(VAR8-VAR7)*100,13)-50;
金山:=EMA(0.618*REF(攀登,1)+0.382*攀登,3);
起攀:CROSS(攀登,金山) AND C/REF(C,1)>1.02;
{根据起攀图指标改编,这是精简后的指标};
9.中短波选股
{中短波选股}
HZ:=EMA(CLOSE,13);
短波:=EMA(HZ,1);
中波:=EMA(HZ,26);
均线148天:=EMA(C,148);
成本:=SUM(AMOUNT,0)/SUM(VOL,0)/100;
HZ2:=EMA(HZ,8);
CROSS(短波,HZ2);
{结合中短波主图使用};
10.黑马摇篮之大
{黑马摇篮之大黑马}
SS1:=(LOW+HIGH+CLOSE*2)/4;
SS2:= MA(SS1,4);
SS3:=HHV(SS2,10);
SS4:=MA(SS3,3);
SS5:=1.25*SS4-0.25*SS3;
XKKJ:=IF(SS5>SS3,SS3,SS5);
FF1:=LLV(SS2,10);
FF2:=MA(FF1,3);
FF3:=1.25*FF2-0.25*FF1;
DKKJ:=IF(FF3<FF1,FF1,FF3);
MA13:=MA(C,13);
ZDHM:=CROSS(C,DKKJ) AND CROSS(C,MA13) AND CROSS(C,XKKJ);
ZHM:=CROSS(C,MA13) AND CROSS(C,XKKJ);
大黑马:ZDHM OR ZHM;
11.黑马摇篮之小
{黑马摇篮之小黑马}
A:=(3*CLOSE+LOW+OPEN+HIGH)/6;
D1:=(20*A+19*REF(A,1)+18*REF(A,2)+17*REF(A,3)+16*REF(A,4)+15*REF(A,5)+14*REF(A,6)
+13*REF(A,7)+12*REF(A,8)+11*REF(A,9)+10*REF(A,10)+9*REF(A,11)+8*REF(A,12)
+7*REF(A,13)+6*REF(A,14)+5*REF(A,15)+4*REF(A,16)+3*REF(A,17)+2*REF(A,18)+
REF(A,20))/211;
D2:=EMA(D1,2);
D3:=EMA(D2,2);
K1:=EMA(D3,2);
小黑马:CROSS(D1,K1);
12.蓄势待发
{蓄势待发}
V0:=EMA(C,5);
EMA10:=EMA(C,10);
EMA20:=EMA(C,20);
EMA30:=EMA(C,30);
EMA60:=EMA(C,60);
M1:=1000*EMA10/EMA60=975;
M2:=1000*EMA20/EMA60=980;
M3:=1000*EMA30/EMA60=985;
M4:=M1 AND M2 AND M3 AND CROSS(V0,EMA10);
M5:=M1 AND M2 AND M3 AND CROSS(V0,EMA30);
T1:=1000*EMA10/EMA30=990;
T2:=1000*EMA20/EMA30=990;
T3:=T1 AND T2 AND CROSS(V0,EMA10);
T4:=T1 AND T2 AND CROSS(V0,EMA30);

5. 知道通达信这个指标源码,怎样编出这个指标的选股公式?

DIFF:=EMA(CLOSE,12) - EMA(CLOSE,26); 
DEA:=EMA(DIFF,9); 
MACD:=2*(DIFF-DEA); 
A:=IF(CROSS(0,DEA),1,0); 
A1:=IF(DIFF<0 AND CROSS(DIFF,DEA),1,0); 
SS:=IF(A,SUM(A1,0),0); 
SSB:=HHV(SS,0); 
SSS:=SUM(A1,0); 
W底选股:SSS-SSB=2 AND SSS>REF(SSS,1);
N:=20;

MID:=MA(C,N);
VART1:=POW((C-MID),2);
VART2:=MA(VART1,N);
VART3:=SQRT(VART2);
UPPER:=MID+2*VART3;
LOWER:=MID-2*VART3;
BOLL:=REF(MID,1);
UB:=REF(UPPER,1);
LB:=REF(LOWER,1);
LOWER1:=MID-VART3;
LB1:=REF(LOWER1,1);
股价线:=(C-LB1)/(UB-LB)*100;
趋势线:=MA(股价线,6);
VARC:=SMA(ABS(L-REF(L,1)),3,1)/SMA(MAX(L-REF(L,1),0),3,1); 
准备建仓:EMA(IF(L<= LLV(L,30),VARC,0),3);
VARO5:=LLV(LOW,27);
VARO6:=HHV(HIGH,34);
VARO7:=EMA((CLOSE-VARO5)/(VARO6-VARO5)*4,4)*25;
建仓区:VARO7<10;
下单:CROSS(3*SMA((CLOSE-LLV(LOW,21))/(HHV(HIGH,21)-LLV(LOW,21))*100,5,1)-2*SMA(SMA((CLOSE-LLV(LOW,21))/(HHV(HIGH,21)-LLV(LOW,21))*100,5,1),3,1),10);

BIAS1:=(C-MA(C,6))/MA(C,6)*100;
BIAS2:=(C-MA(C,12))/MA(C,12)*100;
BIAS3:=(C-MA(C,24))/MA(C,24)*100;
BIAS:=(BIAS1+2*BIAS2+3*BIAS3)/6;
乖离1:=MA(BIAS,3);
低买:CROSS(BIAS,乖离1) AND 乖离1<-9;
TTR:=SUM(MAX(MAX((HIGH - LOW),ABS((HIGH - REF(CLOSE,1)))),ABS((LOW - REF(CLOSE,1)))),5);

HD:=(HIGH - REF(HIGH,1));
LD:=(REF(LOW,1) - LOW);
DMP:=(SUM(IF(((HD > 0) AND (HD > LD)),HD,0),5) );
DMM:=SUM(IF(((LD > 0) AND (LD > HD)),LD,0),5);
神偷线:=(((DMP ) * 100) /TTR);
辅助线:=((DMM * 100) /TTR);
动向趋势线:=(MA(((ABS((辅助线 - 神偷线)) / (辅助线 + 神偷线)) * 100),3));
ADXR:=((动向趋势线 + REF(动向趋势线,3)) / 2);
VAR3:=MA(CLOSE,2);
VAR7:=REF(VAR3,1);
【强弱】:=((SMA(MAX((VAR3 - VAR7),0),5,1) / SMA(ABS((VAR3 - VAR7)),5,1)) * 100);
TYP:=(HIGH + LOW + CLOSE)/3;

CCI:=(TYP-MA(TYP,14))/(0.015*AVEDEV(TYP,14));
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*500-250;
K:=SMA(RSV,3,1);
LC:= REF(CLOSE,1);
RSI1:=SMA(MAX(CLOSE-LC,0),6,1)/SMA(ABS(CLOSE-LC),6,1)*500-250;
X:CROSS(CCI,-100) AND K<-100 ;
X改成:=CROSS(CCI,-100) AND K<-100 AND CROSS(RSI1,-90);
MA2:=EMA(C,2);MA5:=EMA(C,5);
MA13:=EMA(C,13);
MA34:=EMA(C,34);
MA55:=EMA(C,55);
YCX:=MA5>=REF(MA5,1);
H1:=MAX(MAX(MA5,MA13),MA34);
L1:=MIN(MIN(MA5,MA13),MA34);
一阳穿三线:= H1REF(MA2,1);
满仓选股:一阳穿三线;
准备:=动向趋势线 > 88 AND (神偷线 < 5.8);
VAR2:=0.0001*AMOUNT,;

MA1:=0.0001*MA(AMOUNT,5);
M2:=0.0001*MA(AMOUNT,10);
百日地量:=(VAR2,100)=VAR2;
VAR1:=(CLOSE*2+HIGH+LOW)/4;

SK:= EMA(VAR1,13)-EMA(VAR1,73);
SD:= EMA(SK,2);
买点选股:(CROSS(SK,SD) AND SK=0.03)
OR (CROSS(SK,SD) AND SK<=-0.14 ) OR (CROSS(SK,SD) AND SK<=0.05 
AND (V/MA(V,5)>2 OR C/REF(C,1)>0.035));
AA05:=MA(C,5);

五日乖离率:=(C-AA05)/AA05*100;
BB05:=ATAN((AA05/REF(AA05,1)-1)*100)*180/3.1416;
速度5:=SMA(EMA((AA05-REF(AA05,1))/REF(AA05,1),3)*100,3,1);
加速度5:=EMA((速度5-REF(速度5,1)),3);
AA10:=MA(C,10);AA20:=MA(C,20);
BB10:=ATAN((AA10/REF(AA10,1)-1)*100)*180/3.1416;
AA30:=MA(C,30);
三拾日乖离率:=(C-AA30)/AA30*100;
(AA20-AA30)>REF((AA20-AA30),1) AND AA20>REF(AA20,1) AND AA30>REF(AA30,1); 
(AA30-AA20)<REF((AA30-AA20),1) AND AA20<REF(AA20,1) AND AA30<REF(AA30,1); 
BB30:=ATAN((AA30/REF(AA30,1)-1)*100)*180/3.1416;
强势狙击选股:=FILTER(BB30>30 AND BB10>45 AND CROSS(BB05,60),10);
加仓:=FILTER(COUNT(CROSS(BB05,30),5)>=1 AND AA05>REF(AA05,1) AND 三拾日乖离率>REF(三拾日乖离率,1) AND AA10>REF(AA10,1)
AND 加速度5>REF(加速度5,1) AND 速度5>REF(速度5,1) ,10) ;
MR:=COUNT(CROSS(五日乖离率,0),3)>=1 AND 三拾日乖离率>REF(三拾日乖离率,1) AND AA05>REF(AA05,1) AND (C/REF(C,1)-1)*100>5 AND REF(C,1)<AA30;
青云直上选股:=FILTER(MR,10);
QUANCLOSE:=(DMA(CLOSE,VOL/SUM(VOL,13)))/DMA(CLOSE,VOL/SUM(VOL,13))*100<=-28 AND (CLOSE-DMA(CLOSE,VOL/SUM(VOL,34)))/DMA(CLOSE,VOL/SUM(VOL,34))*100<=-19 

AND C/REF(C,25) (LOW * 1.051)) AND (COUNT((HIGH > (LOW * 1.051)),5) > 1)) AND ((((CLOSE / MA(CLOSE,40)) * 100) < 78) OR 
(((CLOSE / MA(CLOSE,60)) * 100) < 74))),2,0) AND
(SMA(MAX(C-REF(C,2),0),7,1)/SMA(ABS(C-REF(C,2)),7,1)*100)REF(SMA((CLOSE-LLV(LOW,8))/(HHV(HIGH,8)-LLV(LOW,8))*100,2,1),1)
AND REF(SMA((CLOSE-LLV(LOW,8))/
(HHV(HIGH,8)-LLV(LOW,8))*100,2,1),1)<REF(SMA((CLOSE-LLV(LOW,8))/(HHV(HIGH,8)-LLV(LOW,8))*100,2,1),2)
AND SMA((CLOSE-LLV(LOW,8))/(HHV(HIGH,8)-LLV(LOW,8))*100,2,1)<23 ,1.5,0) AND FILTER((C/MA(C,48))<0.75 AND (C/MA(C,70))<0.70 AND 
((C-L)/C>0.02 OR C>REF(C,1)*1.01) AND V1.1,5)>3),3) ; 
AA:=1;

BB:=(C-LLV(L,9))/(HHV(H,9)-LLV(L,9))*100;
CC:=IF(AMOUNT/C/HHV(AMOUNT,9)/HHV(C,9)*100>100,100,AMOUNT/C/HHV(AMOUNT,9)/HHV(C,9)*100);
DD:=CC/BB;
量异动:=IF(AA,DD/REF(DD,1),0);
选股:=DD/REF(DD,1);

RSI:=SMA(MAX(CLOSE-LC,0),6,1)/SMA(ABS(CLOSE-LC),6,1)*100;
逃顶:CROSS(80,RSI);

{很高兴回答你的问题,希望帮到你}

知道通达信这个指标源码,怎样编出这个指标的选股公式?

6. 均线拐点公式 MA(C,20)>REF(MA(C,20),1); 改成选股公式

:=5;
N2:=10;
VAR1:=C-REF(C,1);
VAR2:=100*EMA(EMA(VAR1,6),6)/EMA(EMA(ABS(VAR1),6),6);
MA5:=EMA(C,5);
MA13:=EMA(C,13);
UP:=DRAWLINE(L=LLV(L,BARSLAST(CROSS(MA13,MA5))+1),LLV(L,BARSLAST(CROSS
(MA13,MA5))+1),H=HHV(H,BARSLAST(CROSS(MA5,MA13))+1),HHV(H,BARSLAST(CROSS
(MA5,MA13))+1),0) ;
DOWN:=DRAWLINE(H=HHV(H,BARSLAST(CROSS(MA5,MA13))+1),HHV(H,BARSLAST(CROSS
(MA5,MA13))+1),L=LLV(L,BARSLAST(CROSS(MA13,MA5))+1),LLV(L,BARSLAST(CROSS
(MA13,MA5))+1),0) ;
短牛买:(LLV(VAR2,2)=LLV(VAR2,7) AND COUNT(VAR2<0,2) AND CROSS(VAR2,MA(VAR2,2))) AND
REF(DOWN,1)<REF(DOWN,2) AND UP>REF(DOWN,1);
------------------------------------------------------------------------------------------------------------

N1:=5;
N2:=10;
VAR1:=C-REF(C,1);
VAR2:=100*EMA(EMA(VAR1,6),6)/EMA(EMA(ABS(VAR1),6),6);
MA5:=EMA(C,5);
MA13:=EMA(C,13);
UP:=DRAWLINE(L=LLV(L,BARSLAST(CROSS(MA13,MA5))+1),LLV(L,BARSLAST(CROSS
(MA13,MA5))+1),H=HHV(H,BARSLAST(CROSS(MA5,MA13))+1),HHV(H,BARSLAST(CROSS
(MA5,MA13))+1),0) ;
DOWN:=DRAWLINE(H=HHV(H,BARSLAST(CROSS(MA5,MA13))+1),HHV(H,BARSLAST(CROSS
(MA5,MA13))+1),L=LLV(L,BARSLAST(CROSS(MA13,MA5))+1),LLV(L,BARSLAST(CROSS
(MA13,MA5))+1),0) ;
中牛买:REF(DOWN,1)<REF(DOWN,2) AND UP>REF(DOWN,1) AND C<HHV(H,21)*0.82; 
-----------------------------------------------------------------------------------------------------------


MA5:=EMA(C,5);
MA13:=EMA(C,13);
UP:=DRAWLINE(L=LLV(L,BARSLAST(CROSS(MA13,MA5))+1),LLV(L,BARSLAST(CROSS
(MA13,MA5))+1),H=HHV(H,BARSLAST(CROSS(MA5,MA13))+1),HHV(H,BARSLAST(CROSS
(MA5,MA13))+1),0) ;
DOWN:=DRAWLINE(H=HHV(H,BARSLAST(CROSS(MA5,MA13))+1),HHV(H,BARSLAST(CROSS
(MA5,MA13))+1),L=LLV(L,BARSLAST(CROSS(MA13,MA5))+1),LLV(L,BARSLAST(CROSS
(MA13,MA5))+1),0) ;
HR:=HHV(HIGH,55);    
HRY:=LLV(LOW,55);    
HRY11:=HR*HRY;    
HRY33:=SQRT(HRY11);    
大牛买:REF(DOWN,1)<REF(DOWN,2) AND UP>REF(DOWN,1) AND C<HRY33;

7. REF(C,1)<REF(C,2)AND REF(C,1)<REF(O,1)REF(L,1)<REF(C,1)AND REF(C,1)>MA(C,10)AND O>REF(C,1);

少了个AND
 
REF(C,1)MA(C,10)AND O>REF(C,1);

REF(C,1)<REF(C,2)AND REF(C,1)<REF(O,1)REF(L,1)<REF(C,1)AND REF(C,1)>MA(C,10)AND O>REF(C,1);

8. C语言中如何用rand()函数产生20-90的随机整数

rand和srand的用法
首先我们要对rand&srand有个总体的看法:srand初始化随机种子,rand产生随机数,下面将详细说明。

rand(产生随机数)
表头文件: #include

定义函数 :int rand(void)

函数说明 :
因为rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的,rand()会返回一随机数值,范围在0至RAND_MAX 间。在调用此函数产生随机数前,必须先利用srand()设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1。rand ()产生的是假随机数字,每次执行时是相同的。若要不同,以不同的值来初始化它.初始化的函数就是srand()。

返回值:
返回0至RAND_MAX之间的随机整数值,RAND_MAX的范围最少是在32767之间(int),即双字节(16位数)。若用unsigned int 双字节是65535,四字节是4294967295的整数范围。
0~RAND_MAX每个数字被选中的机率是相同的。

范例:
/* 产生介于1 到10 间的随机数值,此范例未设随机数种子,完整的随机数产生请参考
srand()*/
#include
main()
{
int i,j;
for(i=0;i<10;i++)
{
j=1+(int)(10.0*rand()/(RAND_MAX+1.0));
printf("%d ",j);
}
}
   执行:

9 4 8 8 10 2 4 8 3 6
9 4 8 8 10 2 4 8 3 6 //再次执行仍然产生相同的随机数


srand(设置随机数种子)
表头文件:#include

定义函数:void srand (unsigned int seed);

函数说明:
srand()用来设置rand()产生随机数时的随机数种子。参数seed必须是个整数,通常可以利用geypid()或time(0)的返回值来当做seed。如果每次seed都设相同值,rand()所产生的随机数值每次就会一样。

范例
/* 产生介于1 到10 间的随机数值,此范例与执行结果可与rand()参照*/
#include
#include
main()
{
int i,j;
srand((int)time(0));
for(i=0;i<10;i++)
{
j=1+(int)(10.0*rand()/(RAND_MAX+1.0));
printf(" %d ",j);
}
}
     执行:与rand范例比较
5 8 8 8 10 2 10 8 9 9
2 9 7 4 10 3 2 10 8 7
又或:
用"int x = rand() % 100;"来生成 0 到 100 之间的随机数这种方法是不或取的,比较好的做法是: j=(int)(n*rand()/(RAND_MAX+1.0))产生一个0到n之间的随机数
int main(void)
{
   int i;
   time_t t;
   srand((unsigned) time(&t));
   printf("Ten random numbers from 0 to 99\n\n");
   for(i=0; i<10; i++)
       printf("%d\n", rand() % 100);
   return 0;
}
除以上所说的之外,补充一点就是srand这个函数一定要放在循环外面或者是循环调用的外面,否则的话得到的是相同的数字。

MSDN中的例子。
// crt_rand.c
// This program seeds the random-number generator
// with the time, then displays 10 random integers.
//
#include 
#include 
#include 
int main( void )
{
   int i;
  
   // Seed the random-number generator with current time so that
   // the numbers will be different every time we run.
   //
   srand( (unsigned)time( NULL ) );
   // Display 10 numbers.
   for( i = 0;   i < 10;i++ )
      printf( "  %6d\n", rand() );
  printf("\n");
  // Usually, you will want to generate a number in a specific range,
  // such as 0 to 100, like this:
  {
     int RANGE_MIN = 0;
     int RANGE_MAX = 100;
     for (i = 0;    i < 10; i++ )
      {
         int rand100 = (((double) rand() /
                        (double) RAND_MAX) * RANGE_MAX + RANGE_MIN);
         printf( "  %6d\n", rand100);
      }
  }
总结:
我们知道rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种了,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子的值,C提供了 srand()函数,它的原形是void srand( int a) 功能是
初始化随机产生器既rand()函数的初始值,即使把种子的值改成a; 从这你可以看到通过sand()函数,我们是可以产生可以预见的随机序列,
那我们如何才能产生不可预见的随机序列呢?我们可能常常需要这样的随机序列,是吧。利用srand((unsign)(time(NULL))是一种方法,因为每一次运行程序的时间是不同的,对了,你知道time() 函数的功能是返回从1970/01/01到现在的秒数的吧,可能这个起始时间不正确,你查一下对不对吧,C还提供了另一个更方便的函数, randomize()
原形是void randomize(),功能是用来始初rand() 的种子的初始值,而且该值是不确定的,它相当于srand((unsign)(time(NULL)) 不过应注意的是randomize()的功能要通过time来实现所以在调用它时头文件要包含time.h罢了
最新文章
热门文章
推荐阅读