分享

公式求助1000例(21)

 黄楚涵 2010-12-19
1001.问:
显示的节气字符不能随光标的移动变化
请教各位,如何才能正确显示(输出方式不能变)


jqfc:=if(date>=LSOLARTERMDATE(1) and dateif(date>=LSOLARTERMDATE(2) and dateif(date>=LSOLARTERMDATE(3) and dateif(date>=LSOLARTERMDATE(4) and dateif(date>=LSOLARTERMDATE(5) and dateif(date>=LSOLARTERMDATE(6) and dateif(date>=LSOLARTERMDATE(7) and dateif(date>=LSOLARTERMDATE(8) and dateif(date>=LSOLARTERMDATE(9) and dateif(date>=LSOLARTERMDATE(10) and dateif(date>=LSOLARTERMDATE(11) and dateif(date>=LSOLARTERMDATE(12) and dateif(date>=LSOLARTERMDATE(13) and dateif(date>=LSOLARTERMDATE(14) and dateif(date>=LSOLARTERMDATE(15) and dateif(date>=LSOLARTERMDATE(16) and dateif(date>=LSOLARTERMDATE(17) and dateif(date>=LSOLARTERMDATE(18) and dateif(date>=LSOLARTERMDATE(19) and dateif(date>=LSOLARTERMDATE(20) and dateif(date>=LSOLARTERMDATE(21) and dateif(date>=LSOLARTERMDATE(22) and dateif(date>=LSOLARTERMDATE(23) and dateif(date>=LSOLARTERMDATE(24) and dateyuri:=LSOLARTERMDAY(date);
EXPLAIN(SYSPARAM(1)=BARPOS,'今日●'+jqfc + '节后第 '+NUMTOSTR(yuri[SYSPARAM(1)],0)+'天'),COLORGREEN ;

    答(林汉明):
非常简单

N:=SYSPARAM(1);
DAT:=DATE;
jqfc:=if(LSOLARTERMDATE(1)if(LSOLARTERMDATE(2)if(LSOLARTERMDATE(3)if(LSOLARTERMDATE(4)if(LSOLARTERMDATE(5)if(LSOLARTERMDATE(6)if(LSOLARTERMDATE(7)if(LSOLARTERMDATE(8)if(LSOLARTERMDATE(9)if(LSOLARTERMDATE(10)if(LSOLARTERMDATE(11)if(LSOLARTERMDATE(12)if(LSOLARTERMDATE(13)if(LSOLARTERMDATE(14)if(LSOLARTERMDATE(15)if(LSOLARTERMDATE(16)if(LSOLARTERMDATE(17)if(LSOLARTERMDATE(18)if(LSOLARTERMDATE(19)if(LSOLARTERMDATE(20)if(LSOLARTERMDATE(21)if(LSOLARTERMDATE(22)if(LSOLARTERMDATE(23)if(LSOLARTERMDATE(24)yuri:=LSOLARTERMDAY(date);
YURI2:=yuri[N];
EXPLAIN(SYSPARAM(1)=BARPOS,'今日●'+jqfc+ '节后第 '+NUMTOSTR(YURI2,0)+'天'),COLORGREEN;



引用:
1002.问:
如何画一个十字把没有任何指标的主图画面分成相等的四个长方形
      答(goldhill1965):
b1:=sysparam(1);
b2:=sysparam(2);
b3:=sysparam(3);
b4:=sysparam(4);
b5:=sysparam(5);
a1:=b3-b2+1;//可視畫面k線總數
a2:=round(a1/3);//可視畫面分成三份
a3:=b3-a2;//右區塊
a4:=a3-a2;//中區塊
a5:=a4-a2;//左區塊=b2
a6:=a4+a2;//左區塊=b2
VERTLINE(BARPOS=a3 or BARPOS=a4 or BARPOS=a5 or BARPOS=a6);
三分线:(b4+b5)/3;
中线:(b4+b5)/2;
六六线:2*(b4+b5)/3;

画面放大缩小后,需要按动箭头键



引用:
1003.问:
1.光标移动时,日k线和5,10,20,30,60,120,250均线跟随光标移动显示出来。
附图周k线  5 10  20 30周均线跟随光标移动显示出来。光标所在位置及其左边
的都显示,光标右边的都部显示
2.能把k线也做成这样的吗
      答(bajatje):
1.举例
uu:=barpos<=SYSPARAM(1);//显示条件
m:ma(c,5),linethick,COLORWHITE;//只显示数值
PARTLINE(uu,m),COLORWHITE;//画线。注意颜色与M配对;

2. 当然!
f:=c>o or (c=o and c>ref(c,1));//原有条件
STICKLINE(f and uu,c,o,6,1);



引用:
1004.问:
1:因畫面是30分鐘週期 而引用60分鐘KD時(60KD) 其60KD線會產生階梯狀
2:希望  產生階梯狀部份用曲線幾乎直線將其連線 使成為一條很平順的線條

      答(peter109):
範例
K:"KDJ.K#MIN60";
D:"KDJ.D#MIN60";
J:"KDJ.J#MIN60";
EMA(K,2);



引用:
1005.问:
五天内有一天的成交量是三十日内最小成交量应怎么写,
      答(欣儿):
llv(v,5)=llv(v,30);



引用:
1006.问:
求教,怎样找出某一时段内高低点值的公式方法,例如:想找出某一股票2002年至今的时段内,
高点和低点的值,
      答(bajatje):
w:=barslast(date<=1020101)+1;
hh:hhv(h,w)
LL:LLV(L,w);



1007.问:
如何使用字符型数组?非VBS语句,最好有实例

VARIABLE:varname1=initvalue1,varname2=initvalue2...;
例如:
VARIABLE:x=1,y=CLOSE,ARR[10]=0,SARR[5]='str';
表示定义常数变量x并初始化为1,
申明序列变量y并初始化为收盘价,
申明含10个浮点数的数组并全部初始化为0
申明含5个字符串的数组并都初始化为'str'
     答(bajatje):
F10TEXT(F10FIND('{想输出的资料起始字符组。如:发 行 价}',{开始查找的位置。如:1-从F10的第一个字符开始}),{输出的字符数。为0则只输出起始字符组的第一个字符所在行});

F10TEXT(F10FIND('发 行 价',1),0);
注意:空格也算字符。中文一个字为两个字符
别名: F10资料查找
所属类别: 字符串函数  参数数量: 2

当前证券的F10资料中查找字符串
用法:
F10FIND(S,N),将从当前股票的F10资料的第N个字符开始查找字符串S,返回找到的位置,返回-1表示未找到
例如:
F10FIND('发行价',1),将从F10资料的第1个字符开始查找字符串'发行价',返回找到的位置。


别名: F10资料子字符串
所属类别: 字符串函数  参数数量: 2

取得当前证券的F10资料中指定范围的子字符串
用法:
F10TEXT(N,M),将得到当前股票的F10资料中从第N个字符开使的M个字节长的字符串,M=0表示一直取到行尾
例如:
EXPLAIN(1,F10TEXT(F10FIND('发行价',1),0));
输出F10资料中'发行价'所在行  



1008.问:
想选出与指定股票同行业的所有股票!
     答(股市骑兵00):
//◇鹏搏资讯F10资料◇
INPUT:n(1,1,100);
VARIABLE:hytr[100]='',ptr='';
hytr[1]:='港口';//把选股行业都写好,按1,2,3......数组方式写完
hytr[2]:='银行';
hytr[3]:='汽车';
str:=F10TEXT(F10FIND('行业类别',1)+16,0);//F10公式提出行业字符串
for i=1 to 100 do if hytr[i]<>'' then ptr:=ptr+NUMTOSTR(i,0)+hytr[i]+'\n';
行业选股:STRFIND(str,hytr[n],1);
EXPLAIN(1,'该股行业:'+str+'\n'+'选股行业:'+hytr[n]);
EXPLAIN(1,ptr);//查看解盘中"数字"所对应的行业,来调 N 参数选股  



引用:
1009.问:
如何求某一具体日期后100天的日期?谢谢!
如求1050908后100天的日期。这个日期是还未到的日期
      答(hx817):
d1:=1050908;
d2:D1970TODATE(DATETOD1970(d1)+100);



引用:
1010.问:
去年今天的 期货持仓量 怎么写?

      答(cwy):
a:=date-10000;
a1:=a[datacount];
b:=date-20000;
b1:=b[datacount];
d:=date-30000;
d1:=d[datacount];
去年:ref((date=a1)*v,BARSLAST(date=a1));
⒉年前:ref((date=b1)*v,BARSLAST(date=b1));
⒊年前:ref((date=d1)*v,BARSLAST(date=d1));
引用:
1011.问:
相对总是一年的时间差 行吗?

      答(peter109):
台當月:STKINDI('FITX1','OI.未平倉量',0,6),colorRED;//自行變更代碼
a:=date-10000;
a1:=a[datacount];
b:=date-20000;
b1:=b[datacount];
d:=date-30000;
d1:=d[datacount];
去年:ref((date=a1)*台當月,BARSLAST(date=a1));
一年前:ref((date=b1)*台當月,BARSLAST(date=b1));
二年前:ref((date=d1)*台當月,BARSLAST(date=d1));

這樣出來的是固定的水平衡線 如何顯示成曲線
也就是顯示所有對對應值所構成的曲線
     答(南客):
问题的关键是,1年前的同一天,距“今”的周期数等于多少?
可参考如下代码:
ts1:=sumbars(date-ref(date,1),10000);
ts:if(date-ref(date,ts1)>10000,ts1-1,ts1); //1年前的同一天距今周期数

说明:如果1年前的同一天停牌没有交易,则计算向后顺延到恢复交易的那天。
如果要计算N年前的情况,把10000改为10000*N即可。



引用:
1012.问:
线是ZIG(4,16)函数,当光标在3后面时,计算2和3之间的K线天数,当光标在2后面3前面时,
计算1和2之间的K线天数,并且将这个数乘以1.618,然后在图上显示出来
      答(股市骑兵00):
w:=FLATZIG(4,16);gb:=SYSPARAM(1);
p1:=ref(sumbars(w=1 or w=0,1),1);
p2:=ref(sumbars(w=1 or w=0,2),1);
周期:p2-p1,LINETHICK0;
VERTLINE(barpos=gb-p1[gb]+ROUND(周期[gb]*1.618));



引用:
1013.问:
我用的是之字转向(zig(4,5))。A,B,C,D是高位向下的拐点,1.2.3.4则是向上的拐点,
请帮忙在C点和D点画一条线,如果E点出现了,那就在D点和E点之间画线了,依次类推。
当然1.2.3.4点也是一样的,5点出现就在4点和5点之间画线,同时3点与4点之间的线自然消失
      答(股市骑兵00):
w:=FLATZIG(4,10);
g1:=BACKSET(ISLASTBAR,ref(sumbars(w=1,1),1)+1);
g2:=BACKSET(ISLASTBAR,ref(sumbars(w=1,2),1)+1);
d1:=BACKSET(ISLASTBAR,ref(sumbars(w=0,1),1)+1);
d2:=BACKSET(ISLASTBAR,ref(sumbars(w=0,2),1)+1);
DRAWLINE(g2>ref(g2,1),h,g1>ref(g1,1),h,1);
DRAWLINE(d2>ref(d2,1),l,d1>ref(d1,1),l,1);
(注:调下参数就行了,自己看下涵数定义吧。)
w:=FLATZIG(4,5);



1014.问:
因每只股票的流通股数据因增发或送配等原因变化。
我们编写公式时换手率用到流通股数据。
为了确保每一根k线之前时间换手率用到流通股数据是正确的
我们如何保留每只股票的历史流通股变化数据?并在编写公式时正确引用每只股票的历史流通股变化数据?
比如今天流通股数据变了,历史k线换手率于昨天不一样。

     答(股市骑兵00):
南客老师的历史流通盘代码:
var1:=splitdata(1)+splitdata(2);
cap:=c;
cap[datacount]:=1;
for i=datacount downto 2 do cap[i-1]:=cap[i]/(1+var1[i]/10);
capi:=cap*capital/100;
历史流通盘∥万股:capi;
drawnumber(cap>ref(cap,1) or barscount(c)=1,capi,capi,0);



1015.问:
1.如何编写求出上市首日的开盘价,收盘价,最高价,最低价?
2.上市当天的值=上市当天的成交均价;
第二天的值=昨天的值×(1-换手率)+今日的成交均价×换手率
以后类推

     答(bajatje):
cc:=c;
hh:=h;
LL:=L;
oo:=o;
o1:oo[1];
c1:cc[1];
h1:hh[1];
L1:LL[1];


cc:=c;
a:=amount/v/100;
hs:=v/capital;
for i=20 to datacount do BEGIN
cc[1]:=a[1];
cc[i]:=a[i-1]*(1-hs[i])+a[i]*hs[i];end;
cc;



引用:
1016.问:
分别是从历史最高点画出的水平线和从历史最低点画出的垂直线,
在此两线交汇之处,我想绘制一条45度斜线,方向朝向右下,
      答(kjyhao):
qq:=hhvbars(h,0);
zq:=llvbars(l,0);
hh:=ref(hhv(h,qq-zq+1),zq);
ll:=ref(llv(l,qq-zq+1),zq);
gg:=BARSLAST(h=hh[datacount]);
dd:=BARSLAST(l=ll[datacount]);
kk:=(hh[datacount]-ll[datacount])/(gg[datacount]-dd[datacount]);
DRAWSL(gg=0,hh[datacount],0,gg[datacount]-dd[datacount],0),COLORGREEN;
STICKLINE(dd=0,hh[datacount],ll[datacount],1,0),COLORGREEN;
kk:=(sysparam(4)-sysparam(5))/(qq[sysparam(3)]-zq[sysparam(3)]);
tj:=barpos=sysparam(3)-zq[sysparam(3)];
DRAWSL(tj,sysparam(4),-kk,0,3),COLORMAGENTA;



引用:
1017.问:
分笔周期中,如果卖一有“n手大单压盘”(如图有1508手),结果用了m笔成交,把它吃完,
我现在想用公式统计:吃掉这“n手大单压盘”共用了多少笔?
      答(bajatje):
a:=ASKPRICE(1),LINETHICK;
w:=barslast(a<>ref(a,1))+1;
s:=ASKVOL(1)>1000,LINETHICK;
ss:=sum(s,w);
b:=refx(cross(ss,0.5),1);
u:=barslast(b);
if(cross(a>ref(a,1),0.5),ref(w,1),0);//a上涨所用成交笔数
if(cross(a>ref(a,1),0.5) and ref(u<=w,1),ref(u,1),0);//a出现大单后到A上涨的成交笔数



引用:
1018.问:
3分种内主动买单-主动卖单的净量的排序指标,最好根据换手率排序

      答(股市骑兵00):
w:=sumbars(MINUTE<>ref(MINUTE,1),30);
(sum(BUYVOL,w)-sum(SELLVOL,w))/FINANCE(7);



引用:
1019.问:
《趋势线预警选股》

在公式中输入两个参数:1、趋势线起点的时间;B、趋势线的角度;
请各位老师编一个程序:
在股价未来达到这条以固定角度上升或下降的趋势线时(上穿或下穿),发出预警信号。
如果可以用llvbars自动画线更加好。
好象是要用atan判断两低点连线间的角度的,可惜太复杂了,我弄不出来,请各位高手帮忙。
我昨晚想出的思路是:
1、两低点间的时间周期,两低点间形成的趋势线的长度;这两个数据可以通过算法得到;
2、长度除以时间,得出每个时间单位内的趋势上升价格。
3、单位上升价格乘以第一个低点至最后一根K线的周期,再加上第一个低点的价格,得出最后一根K线时的趋势线价格。
4、以后,每过一个时间单位,趋势线就在原有的基础上加一个单位上升价格。
5、直至股价与该趋势线相交。
这样一个思路应该可以编出程式来,不用角度了。我想,角度就是单位上升价格。
我只要手动输入两个数据:A、第一个低点时间;B、第二个低点时间。

      答(vkuie):
e:LINEVALUE(date=a,l,date=b,LOW,1,0);
drawicon(cross(c,e),l,1);



1020.问:
以下为从F10资料提取十大流通股东(鹏搏资讯F10资料)公式。
能否将十大流通股东名称输入Excel?公式如何编?

{F10十大流通股东}
VARIABLE:GDW[10]=0,GDT[10]='STR';
GDW0:=F10FIND('【十大流通股东】',30000);
IF GDW0<0 THEN EXIT;
GDW[1]:=F10FIND('1',GDW0+100),LINETHICK;
GDT[1]:='1.'+F10TEXT(GDW[1]+3,26);
FOR j=2 TO 10 DO BEGIN
   XH:=RTRIM(LTRIM(NUMTOSTR(j,0)));//将j转换为字符的序号
   GDW[j]:=F10FIND(' '+XH+'│',GDW[1]+75);//取字符串所在位置
   IF j<10 THEN GDT[j]:=XH+'.'+F10TEXT(GDW[j]+4,26);//取字符串
END;
//补未取全的字符串
FOR i=1 TO 9 DO BEGIN
   WT:=GDW[i+1]-GDW[i];//计算前后股东位置的差
   IF WT>120 THEN BEGIN//当差超过一定标准时执行下面语句
      TW:=F10FIND('│',GDW[i]+75),LINETHICK;//确定所差字符的起点位置
      T:=F10TEXT(TW+2,26);//截取所差字符
      GDT[i]:=RTRIM(GDT[i])+LTRIM(T);//前后字符合并
   END;
END;
GDT[10]:='10.'+F10TEXT(GDW[10]+5,26);
DRAWTEXT(SYSPARAM(2)=BARPOS AND GDW[1]>1,10,GDT[1]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+2=BARPOS AND GDW[2]>1,8,GDT[2]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+2=BARPOS AND GDW[3]>1,6,GDT[3]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+2=BARPOS AND GDW[4]>1,4,GDT[4]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+2=BARPOS AND GDW[5]>1,2,GDT[5]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+700=BARPOS AND GDW[6]>1,10,GDT[6]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+600=BARPOS AND GDW[7]>1,8,GDT[7]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+60=BARPOS AND GDW[8]>1,6,GDT[8]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+60=BARPOS AND GDW[9]>1,4,GDT[9]),COLOR74AFFF;
DRAWTEXT(SYSPARAM(2)+60=BARPOS AND GDW[10]>1,2,GDT[10]),COLOR74AFFF;
0,COLORBLACK;
EXPLAIN(GDW[1]>1,GDT[1]),COLOR74AFFF;
EXPLAIN(GDW[1]>1,GDT[2]),COLOR74AFFF;
     答(kjyhao):
这是南客老师写的一段示范代码,你参考一下;
输出数据到Excel示例代码
fc:c;
fy:=year; fm:=month; fd:=day;
gpname:=stkname;


/////////
(注:上述公式中的如下代码,其文件路径要改成自己的实际情况,否则会因路径不存在而出错:
oSheet.SaveAs "e:\foxtrader_v3user股票数据.xls" )
1021.问:
这是分析家的一个交易指标:

{交易法则:买入条件A=K金叉20。条件B加仓=D金叉50。
条件C止损=K死叉20。条件D卖出=K死叉80。(引自分析家版主铁手)。

具体请参考。以现金存量的50%买进和加码;止损和卖出是100%。
交易法则和铁手的是一样的。}

VARIABLE:positionCount=1;{头寸计数变量}
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
IF PositionCount=1 THEN BEGIN{第一头寸}
IF CROSS(K,20) THEN BEGIN{条件A=K金叉20}
BUY(50%,MARKET);
PositionCount:=PositionCount+1;{头寸计数}
END
END
IF PositionCount=2 THEN BEGIN{第二加码头寸}
IF CROSS(D,50)  THEN BEGIN{条件B加仓=D金叉50}
BUY(50%,MARKET);
PositionCount:=PositionCount+1;
END
END
IF CROSS(20,K)  THEN BEGIN{条件C止损=K死叉20}
SELL(100%,MARKET);
PositionCount:=1; {头寸计算复原}
END
IF CROSS(80,K)  THEN BEGIN{条件D卖出=K死叉80}
SELL(100%,MARKET);
PositionCount:=1;
END;

     答(股市骑兵00):
INPUT:n1(10000,10000,1000000),n2(50,20,100);//n1=初始资金,n2=买入比例%
初始资金:=n1,LINETHICK;
买入比例%:=n2,LINETHICK;
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);D:=SMA(K,3,1);
mtj1:=cross(k,20);mtj2:=cross(d,50);
wtj1:=cross(20,k);wtj2:=cross(80,k);
p1:=初始资金;p2:=初始资金;
zs:=INTPART(100/买入比例%);
cs:=0;fc:=c;
for i=3 to datacount do begin
  if cs    if mtj1[i] then begin//买入条件A
      m[i]:=1;
      cs:=cs+1;
      mfc[cs]:=fc[i];
      p1:=p2-p2*(买入比例%/100)*cs;
      u:=1;
    end;
    if mtj2[i] and u then begin//条件B加仓
      m[i]:=1;
      cs:=cs+1;
      mfc[cs]:=fc[i];
      p1:=p2-p2*(买入比例%/100)*cs;
    end;
  end;
     if (wtj1[i] or wtj2[i]) and cs then begin//止损和卖出是100%
       for j=1 to cs do x:=x+fc[i]/mfc[j];
       盈亏%[i]:(x/cs-1)*100,LINETHICK;
       p2:=p2*x/cs;
       w[i]:=1;
       x:=0;
       cs:=0;
       p1:=0;
       u:=0;
     end;
    总资金[i]:p2,LINETHICK;
    剩余资金[i]:p1,LINETHICK;
end;
总利润%:(总资金/初始资金-1)*100,LINETHICK;
DRAWICON(m,l*0.99,4);
DRAWICON(w,h*1.01,5);



引用:
1022.问:
試圖畫出最後的一條線(最重要的一條),始終沒能成功
N:=1;
a:zig(4,N);
g:=PEAK(4,N,1);
d:=TROUGH(4,N,1);
g1:=g[datacount];
d1:=d[datacount];
gd:(g1+d1)/2;

g2:=PEAK(4,N,2);
d2:=TROUGH(4,N,2);
g22:=g2[datacount];
d22:=d2[datacount];
gd2:(g1+d22)/2;

ts1:=BARSLAST(a>refx(a,1) and a>ref(a,1));
ts2:=BARSLAST(ats:=BARSSINCE(BACKSET(ISLASTBAR,max(ts1,ts2)));
tj:cross(a>=gd,0.5) or cross(a<=gd,0.5);

vertline(tj AND ts);
vertline(cross(a,gd2)),colorRED;

xa:=SUM(ts1,0);
xb:=SUM(ts2,0);
DRAWSL(ts1 AND xa>xa[datacount]-1,g1,0,ts1,1),COLORMAGENTA;
DRAWSL(ts2 AND xb>xb[datacount]-1,d1,0,ts2,1),COLORred;

LINEVALUE(1,d22,tj AND ts,ref(gd,barslast(tj AND ts)),0,0);//問題點

       答(cwy):
便于看清,N改为10。
N:=10;
a:zig(4,N);
g:=PEAK(4,N,1);
d:=TROUGH(4,N,1);
g1:=g[datacount];
d1:=d[datacount];
gd:(g1+d1)/2;

g2:=PEAK(4,N,2);
d2:=TROUGH(4,N,2);
g22:=g2[datacount];
d22:=d2[datacount];
gd2:(g1+d22)/2;

ts1:=BARSLAST(a>refx(a,1) and a>ref(a,1));
ts2:=BARSLAST(ats:=BARSSINCE(BACKSET(ISLASTBAR,max(ts1,ts2)));
tj:=cross(a>=gd,0.5) or cross(a<=gd,0.5);
x:=cross(BACKSET(ISLASTBAR,TROUGHBARS(4,N,2)+1),0.5)*date;//
vertline(tj AND ts);
vertline(cross(a,gd2)),colorRED;

xa:=SUM(ts1,0);
xb:=SUM(ts2,0);
DRAWSL(ts1 AND xa>xa[datacount]-1,g1,0,ts1,1),COLORMAGENTA;
DRAWSL(ts2 AND xb>xb[datacount]-1,d1,0,ts2,1),COLORred;
//LINEVALUE(x,d22,tj AND ts,ref(gd,barslast(tj AND ts)),0,0);//問題點
DRAWLINE(x,a,tj and ts>0,gd,1);//



引用:
1023.问:
    回调上攻没信号
INPUT:涨幅(29,8,94);
a:=(c-ref(c,1))/ref(c,1)*100;
a1:=BARSLAST( a>涨幅);
a2:=if(a1>0,1,0);
TT:=MA((CLOSE-REF(CLOSE,14))/REF(CLOSE,14),7);
HZ:=EMA(TT,14);
m47:=ma(c,47);
m48:=Ema(m47,3);
m49:=ema(m48,3);
m50:=Ema(m49,3);
HZ>=-0.028 and a2=0 and m47>m48 and m47>m49 and m47>m50 and h/c<1.008

     答(lixkchch):
      INPUT:涨幅(29,8,94);
a:=(c-ref(c,1))/ref(c,1)*1000;
a1:=BARSLAST( a>涨幅);
a2:=if(a1>0,1,0);
TT:=MA((CLOSE-REF(CLOSE,14))/REF(CLOSE,14),7);
HZ:=EMA(TT,14);
m47:=ma(c,47);
m48:=Ema(m47,3);
m49:=ema(m48,3);
m50:=Ema(m49,3);
HZ>=-0.028 and a2=0 and m47>m48 and m47>m49 and m47>m50 and h/c<1.008 ;



1024.问:
     股票箱中间线,请用数值表示出来?谢!
或修改公式,变为向右延长线,并表示出数值?

fh:=high;
fl:=low;
sell:=0*fh;
buy:=sell;
signal:=sell;
boxh:=sell,linethick0;
boxl:=sell,linethick0;
variable:hc=0,lc=0,bt=fh[1],bb=fh[1];
for i=1 to datacount do begin
if hc>1 then begin
if lc>2 and bt<=fh[i] then begin
buy[i]:=1;
for j=i-1 downto i-hc do begin
boxh[j]:=fh[i-hc];
boxl[j]:=fl[i-lc];
end;
hc:=0;lc:=0;
end;
if bt>fh[i] then begin
if lc>2 then begin
if bb>=fl[i] then begin
sell[i]:=1;
for j=i-1 downto i-hc do begin
boxh[j]:=fh[i-hc];
boxl[j]:=fl[i-lc];
end;
hc:=-1;lc:=0;
end else begin
boxh[i]:=fh[i-hc];
boxl[i]:=fl[i-lc];
end;
end;
hc:=hc+1;
if lc>1 then begin
if bblc:=lc+1;
if lc=3 then begin
signal[i-hc+1]:=1;
for j=i downto i-hc+1 do begin
boxh[j]:=fh[i-hc+1];
boxl[j]:=fl[i-lc+1];
end;
end;
end else lc:=0;
end else
if lc=1 then begin
if bblc:=lc+1;
end else lc:=0;
end;
if lc=0 and hc>1 then begin
bb:=fl[i];
lc:=lc+1;
end;
end else begin hc:=0; lc:=0; end;
end else
if hc=1 then begin
if bt>fh[i] then
hc:=hc+1
else begin hc:=0;lc:=0; end;
end;
if hc=0 then begin
bt:=fh[i];
hc:=hc+1;
end;
end;
中间线:partline(boxh and boxh=ref(boxh,1),(boxh-boxl)/2+boxl),colorff9900;  

   答(懒汉):
fh:=high;
fl:=low;
sell:=0*fh;
buy:=sell;
signal:=sell;
boxh:=sell,linethick0;
boxl:=sell,linethick0;
variable:hc=0,lc=0,bt=fh[1],bb=fh[1];
for i=1 to datacount do begin
if hc>1 then begin
if lc>2 and bt<=fh[i] then begin
buy[i]:=1;
for j=i-1 downto i-hc do begin
boxh[j]:=fh[i-hc];
boxl[j]:=fl[i-lc];
end;
hc:=0;lc:=0;
end;
if bt>fh[i] then begin
if lc>2 then begin
if bb>=fl[i] then begin
sell[i]:=1;
for j=i-1 downto i-hc do begin
boxh[j]:=fh[i-hc];
boxl[j]:=fl[i-lc];
end;
hc:=-1;lc:=0;
end else begin
boxh[i]:=fh[i-hc];
boxl[i]:=fl[i-lc];
end;
end;
hc:=hc+1;
if lc>1 then begin
if bblc:=lc+1;
if lc=3 then begin
signal[i-hc+1]:=1;
for j=i downto i-hc+1 do begin
boxh[j]:=fh[i-hc+1];
boxl[j]:=fl[i-lc+1];
end;
end;
end else lc:=0;
end else
if lc=1 then begin
if bblc:=lc+1;
end else lc:=0;
end;
if lc=0 and hc>1 then begin
bb:=fl[i];
lc:=lc+1;
end;
end else begin hc:=0; lc:=0; end;
end else
if hc=1 then begin
if bt>fh[i] then
hc:=hc+1
else begin hc:=0;lc:=0; end;
end;
if hc=0 then begin
bt:=fh[i];
hc:=hc+1;
end;
end;
u:=(boxh-boxl)/2+boxl;
w:=barslast(u>0);
中间线:ref(u,ref(w,1)+1)LINETHICK,colorff9900;
rz:=中间线;
zr:=if(rz<>ref(rz,1),ref(rz,1),rz);
partline(rz=ref(rz,1),rz),colorff9900;
partline(zr=ref(zr,1),zr),colorff9900;
STICKLINE(rz<>ref(rz,1),rz,zr,0.01,0),colorff9900;

   答(阿远):
     请在公式最后加上:
     DRAWNUMBER(cross(boxh and boxh=ref(boxh,1),0.5),
      (boxh-boxl)/2+boxl,(boxh-boxl)/2+boxl,2);  



引用:
1025.问:
飞狐主图改大智慧行吗
主图FZ辟邪
{N  2  1  100  N1  7  1  100  N2  79  1   100}

筹码短期: DMA((3*HIGH+LOW+OPEN+2*CLOSE)/7,VOL/(SUM(AMOUNT,3)/(AMOUNT/VOL/100)/100));
筹码中期: DMA((3*HIGH+LOW+OPEN+2*CLOSE)/7,VOL/(SUM(AMOUNT,5)/(AMOUNT/VOL/100)/100));
筹码长期: DMA((3*HIGH+LOW+OPEN+2*CLOSE)/7,VOL/(SUM(AMOUNT,13)/(AMOUNT/VOL/100)/100));
筹码★期: DMA((3*HIGH+LOW+OPEN+2*CLOSE)/7,VOL/(SUM(AMOUNT,89)/(AMOUNT/VOL/100)/100));
Var32:=100*(MA(CLOSE,13)-REF(MA(CLOSE,13),1))/REF(MA(CLOSE,13),1)>0 OR 100*(筹码中期-REF(筹码中期,1))/REF(筹码中期,1)>0 OR SMA(SMA((CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100,5,1),10,1)>80 OR SMA((CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100,5,1)>80 OR 3*SMA((CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100,3,1)-2*SMA(SMA((CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100,3,1),3,1)>0 OR CROSS(SMA(SMA((CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100,5,1),10,1),SMA((CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100,5,1));
Var33:=100*(MA(CLOSE,13)-REF(MA(CLOSE,13),1))/REF(MA(CLOSE,13),1)<0 AND 100*(筹码中期-REF(筹码中期,1))/REF(筹码中期,1)<0 AND 100*(CLOSE-筹码中期)/筹码中期<0;
STICKLINE(Var32 AND OPEN>=CLOSE,OPEN,CLOSE,7,0), ,Color00FF00;
STICKLINE(Var32 AND OPENSTICKLINE(Var32 AND OPEN>CLOSE,HIGH,OPEN,0.8,0), ,Color00FF00;
STICKLINE(Var32 AND OPEN>CLOSE,LOW,CLOSE,0.8,0), ,Color00FF00;
STICKLINE(Var32 AND OPEN<=CLOSE,HIGH,CLOSE,0.8,0), ,colorred;
STICKLINE(Var32 AND OPEN<=CLOSE,LOW,OPEN,0.8,0), ,colorred;
STICKLINE(Var33,OPEN,CLOSE,7,0), ,colorcyan;
STICKLINE(Var33 AND OPEN>CLOSE,OPEN,CLOSE,7,0), ,colorcyan;
STICKLINE(Var33 AND OPENSTICKLINE(Var33 AND OPEN<=CLOSE,HIGH,LOW,0.8,0), ,colorcyan;
STICKLINE(Var33 AND OPEN>CLOSE,OPEN,HIGH,0.8,1), ,colorcyan;
STICKLINE(Var33 AND OPEN>CLOSE,LOW,CLOSE,0.8,0), ,colorcyan;


JJ:=(CLOSE+HIGH+LOW)/3;
A:=EMA(JJ,10);
B:=REF(A,1);            
终极黄金:STICKLINE(A>B,A,B,5,0),COLORYELLOW;
一卸千里:STICKLINE(A
Var1:=EMA(EMA(CLOSE,3),55);

Var2:=(REF(HIGH,1)+REF(LOW,1))/2;
Var3:=MA(CLOSE,N)+2*STD(CLOSE,N);
DRAWICON(CROSS(Var2,Var3),HIGH*1.035,5);
DRAWTEXT(CROSS(Var2,Var3),HIGH*1.02,'卖出1'), ,COLORgreen;
Var4:=REF(CLOSE,1);
Var5:=SMA(MAX(CLOSE-Var4,0),N1,1)/SMA(ABS(CLOSE-Var4),N1,1)*100;
Var6:=CROSS(N2,Var5);
Var7:=FILTER(Var6,4);
DRAWICON(Var7,HIGH*1.035,5);
DRAWTEXT(Var7,HIGH*1.02,'卖出2'), , COLORgreen;
A7:=(2*C+H+L)/4;
Var10:=LLV(LOW,34);
Var11:=HHV(HIGH,34);
SK:=EMA((A7-Var1)/(Var2-Var1)*100,7);
SD:=EMA(0.667*REF(SK,1)+0.333*SK,5);
DRAWTEXT(IF(count(close6/10 and vol>=1.5*ma(vol,5) and
count(sk>=sd,3) and ref(low,1)=LLV(Low,120),1,0),LOW,'●买进1') COLOR0099ff;
DRAWTEXT(IF(count(close6/10 and
count(sk>sd,6) and ref(low,5)=LLV(Low,120) and ref(close>=open,4) and
ref(close>open,3) and REF(CLOSE>OPEN,2) AND  ref(open>close,1) and
open>ref(close,1),1,0),LOW,'●买进2') COLOryellow;
D:=MA(CLOSE,80)-MA(CLOSE,10)/3;
DRAWTEXT(if(CLOSEMA(VOL,5)/240 AND CLOSE>REF(CLOSE,1)*1.08
AND CLOSE
     答(广州宝贝):
DZH的
{N  2  1  100  N1  7  1  100  N2  79  1   100}

筹码短期: DMA((3*HIGH+LOW+OPEN+2*CLOSE)/7,VOL/(SUM(AMOUNT,3)/(AMOUNT/VOL/100)/100));
筹码中期: DMA((3*HIGH+LOW+OPEN+2*CLOSE)/7,VOL/(SUM(AMOUNT,5)/(AMOUNT/VOL/100)/100));
筹码长期: DMA((3*HIGH+LOW+OPEN+2*CLOSE)/7,VOL/(SUM(AMOUNT,13)/(AMOUNT/VOL/100)/100));
筹码★期: DMA((3*HIGH+LOW+OPEN+2*CLOSE)/7,VOL/(SUM(AMOUNT,89)/(AMOUNT/VOL/100)/100));
Var32:=100*(MA(CLOSE,13)-REF(MA(CLOSE,13),1))/REF(MA(CLOSE,13),1)>0 OR 100*(筹码中期-REF(筹码中期,1))/REF(筹码中期,1)>0 OR SMA(SMA((CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100,5,1),10,1)>80 OR SMA((CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100,5,1)>80 OR 3*SMA((CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100,3,1)-2*SMA(SMA((CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100,3,1),3,1)>0 OR CROSS(SMA(SMA((CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100,5,1),10,1),SMA((CLOSE-LLV(LOW,60))/(HHV(HIGH,60)-LLV(LOW,60))*100,5,1));
Var33:=100*(MA(CLOSE,13)-REF(MA(CLOSE,13),1))/REF(MA(CLOSE,13),1)<0 AND 100*(筹码中期-REF(筹码中期,1))/REF(筹码中期,1)<0 AND 100*(CLOSE-筹码中期)/筹码中期<0;
STICKLINE(Var32 AND OPEN>=CLOSE,OPEN,CLOSE,7,0), ,Color00FF00;
STICKLINE(Var32 AND OPENSTICKLINE(Var32 AND OPEN>CLOSE,HIGH,OPEN,0.8,0), ,Color00FF00;
STICKLINE(Var32 AND OPEN>CLOSE,LOW,CLOSE,0.8,0), ,Color00FF00;
STICKLINE(Var32 AND OPEN<=CLOSE,HIGH,CLOSE,0.8,0), ,colorred;
STICKLINE(Var32 AND OPEN<=CLOSE,LOW,OPEN,0.8,0), ,colorred;
STICKLINE(Var33,OPEN,CLOSE,7,0), ,colorffaaff;
STICKLINE(Var33 AND OPEN>CLOSE,OPEN,CLOSE,7,0), ,colorffaaff;
STICKLINE(Var33 AND OPENSTICKLINE(Var33 AND OPEN<=CLOSE,HIGH,LOW,0.8,0), ,colorffaaff;
STICKLINE(Var33 AND OPEN>CLOSE,OPEN,HIGH,0.8,1), ,colorffaaff;
STICKLINE(Var33 AND OPEN>CLOSE,LOW,CLOSE,0.8,0), ,colorffaaff;


JJ:=(CLOSE+HIGH+LOW)/3;
A:=EMA(JJ,10);
B:=REF(A,1);            
终极黄金:STICKLINE(A>B,A,B,5,0),COLORYELLOW;
一卸千里:STICKLINE(A
Var1:=EMA(EMA(CLOSE,3),55);

Var2:=(REF(HIGH,1)+REF(LOW,1))/2;
Var3:=MA(CLOSE,N)+2*STD(CLOSE,N);
DRAWICON(CROSS(Var2,Var3),HIGH*1.035,2);
Var4:=REF(CLOSE,1);
Var5:=SMA(MAX(CLOSE-Var4,0),N1,1)/SMA(ABS(CLOSE-Var4),N1,1)*100;
Var6:=CROSS(N2,Var5);
Var7:=FILTER(Var6,4);
DRAWTEXT(Var7,HIGH*1.02,'卖出2'), , COLORlime;
A7:=(2*C+H+L)/4;
Var10:=LLV(LOW,34);
Var11:=HHV(HIGH,34);
SK:=EMA((A7-Var1)/(Var2-Var1)*100,7);
SD:=EMA(0.667*REF(SK,1)+0.333*SK,5);
DRAWTEXT(IF(count(close6/10 and vol>=1.5*ma(vol,5) and
count(sk>=sd,3) and ref(low,1)=LLV(Low,120),1,0),LOW,'●买进1'), COLOR0099ff;
DRAWTEXT(IF(count(close6/10 and
count(sk>sd,6) and ref(low,5)=LLV(Low,120) and ref(close>=open,4) and
ref(close>open,3) and REF(CLOSE>OPEN,2) AND  ref(open>close,1) and
open>ref(close,1),1,0),LOW,'●买进2'), COLOryellow;
D:=MA(CLOSE,80)-MA(CLOSE,10)/3;
DRAWTEXT(if(CLOSEMA(VOL,5)/240 AND CLOSE>REF(CLOSE,1)*1.08
AND CLOSE



引用:
1026.问:
为了方便对上市公司各季度、半年及年度业绩预告的了解和分类;
请编写一个简单的指标:《业绩预告选股》。用这个指标可以方便地选出:
预增、预盈、预亏、预警、预降的各类上市公司。可以在自选分类中建立相应的板块;
如:自选-预增,然后将其保在对应的板块中,以便随时查用,省去了不少麻烦。

     答(一笑生):
业绩预告选股  
A:=BARSCOUNT(C);
A1:=A=SYSPARAM(2);
A2:=A=SYSPARAM(1);
A3:=IF(0=0,A1,A2);
WW3:='业绩预告:'+F10TEXT(F10FIND('【预',1),0);
DRAWTEXT(A3,0.6,WW3),COLORWHITE;
增:=F10FIND('【预增】',1);
预增:IF(增>0 AND ISLASTBAR,1,0),COLORRED;
盈:=F10FIND('【预盈】',1);
预盈:IF(盈>0 AND ISLASTBAR,1,0),COLORMAGENTA;
亏:=F10FIND('【预亏】',1);
预亏:IF(亏>0 AND ISLASTBAR,1,0),COLORCYAN;
警:=F10FIND('【预警】',1);
预警:IF(警>0 AND ISLASTBAR,1,0),COLORBLUE;
降:=F10FIND('【预降】',1);
预降:IF(降>0 AND ISLASTBAR,1,0),COLORGREEN;
未预告:预增=0 AND 预盈=0 AND 预亏=0 AND 预警=0 AND 预降=0,COLORWHITE;



引用:
1027.问:
把下列未来函数修改为上证大盘的!
ggkp:=if(zig(3,6)ref(zig(3,6),2),C,0);
dzkp:=if(ggkp>0 ,C,0);
tt:=BARSLAST(dzkp);
转:(C-ref(dzkp,tt))/ref(dzkp,tt)*100;
我的本意是在个股里指标副图下表示上述大盘的条件而且只能是上证指数条件成立为目的.
我在观察各股的时候也能同时在个股里指标副图下知道上证大盘情况.   
我的软件是分析家的.

     答(zmr666):
想起来了,新结构波浪指标的设计方法可以代替zig函数,只是语句变复杂多了;
先分解一下你的语句中的含义:
ggkp:=if(zig(3,6)ref(zig(3,6),2),1,0);{见顶}
dzkp:=if(ggkp>0 ,c,0);{见顶日的收盘价}
tt:=BARSLAST(ggkp);{已经见顶多少天}
转:=(c-ref(dzkp,tt))/ref(c,tt)*100;{大盘累积下跌幅度}

    然后用下面的方法描述这段内容,其中c换成上证指数的收盘价:

A1:=REF("sh000001$close",3)=HHV("sh000001$close",2*3+14);
B1:=FILTER(A1,3); C1:=BACKSET(B1,3+1);
D1:=FILTER(C1,3);{高点}
A2:=REF("sh000001$close",3)=LLV("sh000001$close",2*3+14);
B2:=FILTER(A2,3); C2:=BACKSET(B2,3+1);
D2:=FILTER(C2,3);{低点}
E1:=(REF(LLV("sh000001$low",2*3),1)+REF(HHV("sh000001$high",2*3),1))/2;
E2:=("sh000001$HIGH"+"sh000001$LOW")/2;{高低点出现在同一K线上时可作取舍}
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR BARSTATUS=2 OR BARSCOUNT("sh000001$close")=1;
L1:=(D2 AND NOT(D1 AND E1=E2);
X1:=REF(BARSLAST(H1),1)+1; F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,"sh000001$LOW",10000),X1));
G1:=F1>REF(F1,1); I1:=BACKSET(G1,2);
LD:=I1>REF(I1,1);{过滤后低点}
L2:=LD OR BARSTATUS=2 OR BARSCOUNT("sh000001$close")=1;
X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,"sh000001$high",0),X2));
G2:=F2>REF(F2,1); I2:=BACKSET(G2,2);

HD:=I2>REF(I2,1);{过滤后高点代替ggkp}
dzkp:=if(hd>0 ,"sh000001$close",0);
tt:=BARSLAST(dzkp);{已经见顶多少天}
转:("sh000001$close"-ref(dzkp,tt))/ref(dzkp,tt)*100;{大盘累积下跌幅度}
DRAWICON(tt=0,hhv(转,5) ,5 );{标注见顶日}



引用:
1028.问:
请问改变周期时,本公式周期不跟随改变,始终按自设周期显示怎么写?

     答(股市浪子):
另外写一个公式调用数据,用STKINDI('','XXXX.YYY',0,N),其中的XXXX为所调用的公式名,
YYY为调用该公式的指标,N为调用该指标的周期(与调出K线的数字相同)。



引用:
1029.问:
     请教着段公式的含义。
ls:=c/ref(c,1)>1.03  and between(forcast(V,4),0.2*forcast(v,12),2.1*forcast(v,12));
拉升:filter(ls,42)*100,colorred;
还想加上一句股价在20线上  着句怎么写
     答(一鸣):
(股价在20线上已加上)

ls:=c/ref(c,1)>1.03  and between(forcast(V,4),0.2*forcast(v,12),2.1*forcast(v,12)) and c>ma(c,20);
//今日涨幅大于3%,且成交量的12周期线性回归预测值*0.2<成交量的4周期线性回归预测值<成交量的12周期线性回归预测值*2.1
拉升:filter(ls,42)*100,colorred; //若ls条件符合,则当日拉升值设为100,且其后42天内不再出现信号



引用:
1030.问:
上一次上涨走势"最后那根"K线的成交量大于上一次下跌走势"第一根"K线成交量。
k2:=cross(ma(c,2)+0.0001,c);
bk21:=sumbars(k2,1);
v2:=ref(v,bk21-1);
ref(v,bk21)>ref(v2,bk21);
我想把它调换一下改编为:上一次上涨走势"第一根"K线的成交量大于上一次下跌走势"
最后那根"K线的成交量。(注:其实就是原来公式的"最后那根"和"第一根"位置前后调换)
     答(一鸣):
{先下跌后上涨为一波
上一次‘上涨走势’第一根K线成交量大于上一次‘下跌走势’最后一根K线成交量。
不包括正在上涨或正在下跌的走势 by 一鸣}
k1:=cross(c,ma(c,2)+0.0001);
k2:=cross(ma(c,2)+0.0001,c);
bk11:=sumbars(k1,1);
bk21:=sumbars(k2,1);
v1:=ref(ref(v,bk11-1),bk21-1);
v2:=ref(ref(v,bk11),bk21-1);
v1>v2;
引用:
1031.问:
7DAYS-永胜的原码能提供吗
     答(tdj888):
源码如下:
W1:=DMA(EMA(CLOSE,12),((SUM(VOL,5) / 3) / CAPITAL));
W2:=(((((CLOSE - W1) / W1) * 100) + 30) - (((REF(HIGH,13) / CLOSE) - 1.35) * 100));
W3:=((((CLOSE - REF(CLOSE,5)) / CLOSE) * 100) < (0 - 9));
HL:=WINNER(CLOSE);
ZT:=(EMA((((INDEXC - MA(INDEXC,10)) / INDEXC) * 100),14) < (0 - 4.9));
HR:=((((MA(VOL,5) - VOL) / CAPITAL) * 100) < 0.8);
LB:=(((VOL - MA(VOL,21)) / VOL) * 100);
MR:=((((ZT AND W3) AND (HL < 0.12)) AND HR) AND (LB > 18));
CCRR:=MA(OPEN,1);
CCRRD:=(((((((CCRR / 22.41) = 1) OR ((CCRR / 1.46) = 1)) OR ((CCRR / 1.9) = 1)) OR ((CCRR / 10.74) = 1)) OR ((CCRR / 2.29) = 1)) OR ((CCRR / 1.09) = 1));
CDBB:=(FILTER(((W2 < (0 - 8.1)) AND (MR = 1)),21) AND (CCRRD = 0));
RSV:=(((CLOSE - LLV(LOW,9)) / (HHV(HIGH,9) - LLV(LOW,9))) * 100);
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
J:=((3 * K) - (2 * D));
KK:=INTPART(SMA(RSV,3,1));
DD:=INTPART(SMA(K,3,1));
JJ:=INTPART(((3 * K) - (2 * D)));
XJYY:=(((CLOSE - MA(CLOSE,42)) / MA(CLOSE,42)) * 100);
无敌:=CROSS(XJYY,(0 - 28));
十九:=CROSS((0 - 28),XJYY);
小天:=(无敌 OR 十九);
N:=(KK + DD);
OO:=(N < 80);
OO1:=(N < 70);
OO2:=(N < 60);
XTT:=MA(OPEN,1);
XTT1:=(((((((((XTT / 6.75) = 1) OR ((XTT / 2.16) = 1)) OR ((XTT / 4.2) = 1)) OR ((XTT / 3.55) = 1)) OR ((XTT / 1.66) = 1)) OR ((XTT / 4.75) = 1)) OR ((XTT / 2.7) = 1)) OR ((XTT / 1.09) = 1));
KX:=((REF(OO2,1) AND REF(OO2,13)) AND (((REF(OO1,126) OR REF(OO1,180)) OR REF(OO1,225)) OR REF(OO1,456)));
KX1:=(((REF(OO2,153) AND REF(OO2,43)) OR (REF(OO,46) AND REF(OO,341))) OR ((REF(OO,3) AND REF(OO,76)) AND REF(OO2,28)));
KKDDJ:=((KX OR KX1) AND (((REF(OO,28) OR REF(OO,51)) OR REF(OO,126)) OR REF(OO,136)));
F1:=((CLOSE / REF(CLOSE,1)) > 1.09);
F2:=(VOL < MA(VOL,2));
F3:=((CLOSE / REF(CLOSE,44)) < 0.8);
F4:=((CLOSE / REF(CLOSE,60)) < 0.7);
KX2:=(F1 AND ((F2 OR F3) OR F4));
XTCBB:=((小天 AND KKDDJ) AND KX2);
XTCBB1:=(XTCBB AND (XTT1 = 0));
YJ1:=MA(OPEN,1);
YJ11:=(((((YJ1 / 1.99) = 1) OR ((YJ1 / 31.88) = 1)) OR ((YJ1 / 6.5) = 1)) OR ((YJ1 / 1.09) = 1));
VAR1YJ:=(((CLOSE - MA(CLOSE,6)) / MA(CLOSE,6)) * 100);
VAR2YJ:=(((CLOSE - MA(CLOSE,12)) / MA(CLOSE,12)) * 100);
VAR3YJ:=(((CLOSE - MA(CLOSE,24)) / MA(CLOSE,24)) * 100);
VAR4YJ:=REF(CLOSE,1);
VAR5YJ:=((SMA(MAX((CLOSE - VAR4YJ),0),5,1) / SMA(ABS((CLOSE - VAR4YJ)),5,1)) * 100);
VAR6YJ:=(((HIGH + LOW) + CLOSE) / 3);
VAR22YJ:=((VAR6YJ - MA(VAR6YJ,14)) / (0.015 * AVEDEV(VAR6YJ,14)));
VAR7YJ:=(((((((VAR1YJ >= (0 - 15.8)) AND (VAR1YJ <= (0 - 12.2))) AND (VAR2YJ <= (0 - 20.8))) AND (VAR3YJ <= (0 - 27.5))) AND (VAR5YJ <= 11.7)) AND (VAR22YJ <= (0 - 145))) * 100);
YJGSYJ:=(IF((VAR7YJ > 0),1,0) AND (YJ11 = 0));
FT:=MA(OPEN,1);
FT1:=(((((((((FT / 5.15) = 1) OR ((FT / 2.08) = 1)) OR ((FT / 5.56) = 1)) OR ((FT / 1.77) = 1)) OR ((FT / 14.5) = 1)) OR ((FT / 8.15) = 1)) OR ((FT / 9.93) = 1)) OR ((FT / 1.09) = 1));
DBFT1:=((((((((((CLOSE > OPEN) AND (OPEN = LOW)) AND (OPEN < REF(CLOSE,1))) AND (CLOSE < MA(CLOSE,5))) AND (CLOSE < MA(CLOSE,60))) AND (REF(CLOSE,1) > REF(CLOSE,2))) AND (REF(CLOSE,2) < REF(CLOSE,3))) AND ((REF(CLOSE,3) / REF(CLOSE,2)) > 1.038)) AND ((REF(CLOSE,1) / REF(CLOSE,2)) > 1.038)) AND (VOL < (2 * REF(VOL,1))));
DBFT:=(DBFT1 AND (FT = 0));
FT530:=MA(OPEN,1);
FT1530:=(((((((((FT530 / 8.48) = 1) OR ((FT530 / 8.65) = 1)) OR ((FT530 / 2.25) = 1)) OR ((FT530 / 2.38) = 1)) OR ((FT530 / 18.6) = 1)) OR ((FT530 / 16.5) = 1)) OR ((FT530 / 16) = 1)) OR ((FT530 / 16.8) = 1));
VAR1530:=INDEXC;
VAR2530:=MA(VAR1530,6);
VAR3530:=MA(VAR1530,24);
VAR4530:=MA(VAR1530,32);
VAR5530:=MA(VAR1530,62);
VAR6530:=MA(VAR1530,105);
VAR7530:=(((VAR5530 < REF(VAR5530,1)) AND (VAR6530 < REF(VAR6530,1))) AND (VAR5530 < (VAR6530 * 0.98)));
VAR8530:=((VAR4530 > (VAR2530 * 1.11)) AND (VAR3530 > (VAR2530 * 1.095)));
VAR9530:=(VAR2530 > (VAR1530 * 0.95));
VAR8530:=(((((VAR7530 AND VAR8530) AND VAR9530) AND ((CLOSE / COST(8)) <= 0.8)) AND ((CLOSE > OPEN) OR (CLOSE < OPEN))) AND ((REF(CLOSE,1) > REF(OPEN,1)) OR (REF(CLOSE,1) < REF(OPEN,1))));
VAR9530:=(VAR8530 AND (FT1530 = 0));
VAR9530:=(STRCMP(STKLABEL,'600711') = 0);
J1NL:=(STRCMP(STKLABEL,'600867') = 0);
J2NL:=(STRCMP(STKLABEL,'600067') = 0);
J3NL:=(STRCMP(STKLABEL,'000767') = 0);
J4NL:=(STRCMP(STKLABEL,'000782') = 0);
J5NL:=(STRCMP(STKLABEL,'600365') = 0);
J6NL:=(STRCMP(STKLABEL,'600550') = 0);
J7NL:=(STRCMP(STKLABEL,'600540') = 0);
J8NL:=(STRCMP(STKLABEL,'000060') = 0);
J9NL:=((((((((VAR9530 OR J1NL) OR J2NL) OR J3NL) OR J4NL) OR J5NL) OR J6NL) OR J7NL) OR J8NL);
JJNL:=(88 * (J9NL = 1));
RSV:=(((CLOSE - LLV(LOW,26)) / (HHV(HIGH,26) - LLV(LOW,26))) * 100);
JJJNL:=SMA(RSV,13,8);
K:=SMA(JJJNL,9,8);
D:=SMA(K,10,8);
FASTK:=MA(VOL,3);
VAR3666:=REF(FASTK,1);
VAR4666:=((((((((((((REF(CLOSE,2) / REF(OPEN,2)) < 0.95) AND (REF(OPEN,1) < REF(CLOSE,2))) AND (REF(OPEN,1) < REF(CLOSE,1))) AND ((CLOSE / OPEN) > 1.05)) AND (CLOSE > REF(HIGH,2))) AND CROSS(K,D)) AND (K < 40)) AND (D < 30)) AND (VOL >= (MA(VOL,5) * 2))) OR ((((((CLOSE / OPEN) > 1.06) AND ((HIGH / LOW) < ((CLOSE / OPEN) + 0.018))) AND CROSS(K,D)) AND (K < 20)) AND (D < 30))) OR (((((VOL / VAR3666) > 0.5) AND (((VOL / CAPITAL) * 100) > 2)) AND ((CLOSE / OPEN) > 1.08)) AND ((HIGH / LOW) < ((CLOSE / OPEN) + 0.01))));
VAR5666:=(VAR4666 AND JJNL);
VAR6666:=(STRCMP(STKLABEL,'600093') = 0);
J1LS:=(STRCMP(STKLABEL,'600169') = 0);
J2LS:=(STRCMP(STKLABEL,'600278') = 0);
J3LS:=(STRCMP(STKLABEL,'000339') = 0);
J4LS:=(STRCMP(STKLABEL,'600371') = 0);
J5LS:=(STRCMP(STKLABEL,'600576') = 0);
J6LS:=(STRCMP(STKLABEL,'600753') = 0);
J7LS:=(STRCMP(STKLABEL,'600805') = 0);
J8LS:=(STRCMP(STKLABEL,'600634') = 0);
J9LS:=(STRCMP(STKLABEL,'000635') = 0);
J10LS:=(((((((((VAR6666 OR J1LS) OR J2LS) OR J3LS) OR J4LS) OR J5LS) OR J6LS) OR J7LS) OR J8LS) OR J9LS);
JJLS:=(88 * (J10LS = 1));
JJJLS:=(AMOUNT / VOL);
AA11:=(LOW < (JJJLS * 0.9));
BB11:=((((CLOSE - REF(CLOSE,1)) / REF(CLOSE,1)) * 100) > 1.2);
CC11:=(LOW < (MA(CLOSE,5) * 0.921));
DD11:=(VOL < (MA(VOL,5) * 6.5));
EE11:=((((AA11 AND BB11) AND CC11) AND DD11) AND JJLS);
LSCX:=(STRCMP(STKLABEL,'600148') = 0);
J111:=(STRCMP(STKLABEL,'600262') = 0);
J211:=(STRCMP(STKLABEL,'600604') = 0);
J311:=(STRCMP(STKLABEL,'600400') = 0);
J411:=(STRCMP(STKLABEL,'600627') = 0);
J511:=(STRCMP(STKLABEL,'600685') = 0);
J611:=(STRCMP(STKLABEL,'600804') = 0);
J711:=(STRCMP(STKLABEL,'600708') = 0);
J811:=(STRCMP(STKLABEL,'600840') = 0);
J911:=(STRCMP(STKLABEL,'600876') = 0);
J1011:=(STRCMP(STKLABEL,'000007') = 0);
J1012:=(STRCMP(STKLABEL,'000023') = 0);
J1013:=(STRCMP(STKLABEL,'000029') = 0);
J1014:=(STRCMP(STKLABEL,'000038') = 0);
J1015:=(STRCMP(STKLABEL,'000056') = 0);
J1016:=(STRCMP(STKLABEL,'000503') = 0);
J1017:=(STRCMP(STKLABEL,'000532') = 0);
J1018:=(STRCMP(STKLABEL,'000586') = 0);
J1019:=(STRCMP(STKLABEL,'000605') = 0);
J1020:=(STRCMP(STKLABEL,'000728') = 0);
J1021:=(STRCMP(STKLABEL,'000531') = 0);
J1022:=(STRCMP(STKLABEL,'600073') = 0);
J1023:=(((((((((((((((((((((LSCX OR J111) OR J211) OR J311) OR J411) OR J511) OR J611) OR J711) OR J811) OR J911) OR J1011) OR J1012) OR J1013) OR J1014) OR J1015) OR J1016) OR J1017) OR J1018) OR J1019) OR J1020) OR J1021) OR J1022);
JJL11:=(88 * (J1023 = 1));
JJJL11:=(CLOSE <= OPEN);
VAR1FT:=(CLOSE > OPEN);
VAR2FT:=DMA(EMA(CLOSE,12),((SUM(VOL,5) / 3) / CAPITAL));
VAR3FT:=(((CLOSE - VAR2FT) / VAR2FT) * 100);
VAR4FT:=(((((REF(VAR3FT,1) < (0 - 32)) AND (VAR3FT > REF(VAR3FT,1))) AND (REF(VAR3FT,1) < REF(VAR3FT,2))) AND ((VAR3FT - REF(VAR3FT,1)) > 2.5)) AND ((REF(VAR3FT,2) - REF(VAR3FT,1)) > 1));
VAR5FT:=((((((((((((((((VAR1FT AND REF(JJJL11,1)) AND REF(JJJL11,2)) AND REF(JJJL11,3)) AND REF(JJJL11,4)) AND REF(JJJL11,5)) AND REF(VAR1FT,6)) AND (HIGH < REF(HIGH,60))) AND (HIGH < REF(HIGH,120))) AND (HIGH < REF(CLOSE,200))) AND ((REF(SUM(VOL,5),1) / FINANCE(7)) < 2.5)) AND ((VAR3FT - REF(VAR3FT,1)) > 2)) AND (((REF(HIGH,1) - REF(CLOSE,2)) / REF(CLOSE,2)) < 0.05)) AND (((REF(HIGH,4) - REF(CLOSE,5)) / REF(CLOSE,5)) < 0.05)) AND (((REF(HIGH,2) - REF(CLOSE,3)) / REF(CLOSE,3)) < 0.05)) AND (((REF(HIGH,3) - REF(CLOSE,4)) / REF(CLOSE,4)) < 0.05)) AND (COUNT((INDEXC > INDEXO),6) > 1));
VAR6FT:=(VAR4FT OR VAR5FT);
VAR7FT:=(VAR6FT AND JJL11);
VAR8FT:=((((((OPEN <= EMA(CLOSE,5)) AND (CLOSE = HIGH)) AND ((CLOSE / OPEN) >= (1.1 + ((7.16 * 7.16) / 1000)))) AND ((VOL / CAPITAL) >= 0.02)) AND ((VOL / CAPITAL) <= 0.2)) AND (CLOSE >= (HHV(HIGH,100) * 0.98)));
W40T20%100%:=(((HHV(HIGH,36) - CLOSE) / (HHV(HIGH,36) - LLV(LOW,36))) * 100);
VAR1ZZ:=SMA(W40T20%100%,5,1);
VAR2ZZ:=(((CLOSE - LLV(LOW,8)) / (HHV(HIGH,8) - LLV(LOW,8))) * 100);
VAR3ZZ:=SMA(VAR2ZZ,2,1);
VAR4ZZ:=(((MA((VOL / CAPITAL),30) * MA(VOL,60)) / 10000) + (MA(CLOSE,30) * 8));
VAR5ZZ:=(((MA((VOL / CAPITAL),30) * MA(VOL,60)) / 10000) + MA(CLOSE,30));
VAR6ZZ:=((((((REF(CLOSE,2) / REF(OPEN,2)) < 0.88) AND (REF(OPEN,1) < REF(CLOSE,2))) AND ((ABS((REF(OPEN,1) - REF(CLOSE,1))) / REF(CLOSE,1)) < 0.04)) AND ((CLOSE / OPEN) > 1.07)) AND (CLOSE > REF(CLOSE,2)));
VAR7ZZ:=(CLOSE > REF(CLOSE,1));
VAR1YS:=(VOL < MA(VOL,5));
VAR2YS:=(VOL < REF(VOL,1));
VAR3YS:=(((CLOSE - OPEN) / REF(CLOSE,1)) > 0.1);
VAR4YS:=(COUNT((((SMA(MAX((CLOSE - REF(CLOSE,1)),0),6,1) / SMA(ABS((CLOSE - REF(CLOSE,1))),6,1)) * 100) < 10),20) >= 1);
VAR5YS:=((((VAR7ZZ AND VAR1YS) AND VAR2YS) AND VAR3YS) AND VAR4YS);
VAR6YS:=MA(OPEN,1);
FGD:=(((((VAR6YS / 12.5) = 1) OR ((VAR6YS / 6.86) = 1)) OR ((VAR6YS / 2.95) = 1)) OR ((VAR6YS / 5.96) = 1));
FGD1:=STKINDI('1A0001','kdj.k',0,7);
AAGD:=STKINDI('1A0001','kdj.d',0,7);
BBGD:=STKINDI('','EXPMA.ma4',0,7);
CCGD:=IF(((CROSS(FGD1,AAGD) AND (FGD1 < 50)) AND (BBGD < CLOSE)),50,0);
MMCGD:=(((CCGD AND ((VOL / CAPITAL) <= 0.01)) AND ((CLOSE / OPEN) > 1.05)) AND (FGD = 0));
永胜:(((((((((((CDBB OR XTCBB1) OR YJGSYJ) OR DBFT) OR VAR9530) OR VAR5666) OR EE11) OR VAR7FT) OR VAR8FT) OR VAR6ZZ) OR VAR5YS) OR MMCGD);

这个公式明显有作弊的行为,请看以下代码:
J1LS:=(STRCMP(STKLABEL,'600169') = 0);
J2LS:=(STRCMP(STKLABEL,'600278') = 0);
J3LS:=(STRCMP(STKLABEL,'000339') = 0);
J4LS:=(STRCMP(STKLABEL,'600371') = 0);
J5LS:=(STRCMP(STKLABEL,'600576') = 0);
J6LS:=(STRCMP(STKLABEL,'600753') = 0);
J7LS:=(STRCMP(STKLABEL,'600805') = 0);
J8LS:=(STRCMP(STKLABEL,'600634') = 0);
J9LS:=(STRCMP(STKLABEL,'000635') = 0);

LSCX:=(STRCMP(STKLABEL,'600148') = 0);
J111:=(STRCMP(STKLABEL,'600262') = 0);
J211:=(STRCMP(STKLABEL,'600604') = 0);
J311:=(STRCMP(STKLABEL,'600400') = 0);
J411:=(STRCMP(STKLABEL,'600627') = 0);
J511:=(STRCMP(STKLABEL,'600685') = 0);
J611:=(STRCMP(STKLABEL,'600804') = 0);
J711:=(STRCMP(STKLABEL,'600708') = 0);
J811:=(STRCMP(STKLABEL,'600840') = 0);
J911:=(STRCMP(STKLABEL,'600876') = 0);
J1011:=(STRCMP(STKLABEL,'000007') = 0);
J1012:=(STRCMP(STKLABEL,'000023') = 0);
J1013:=(STRCMP(STKLABEL,'000029') = 0);
J1014:=(STRCMP(STKLABEL,'000038') = 0);
J1015:=(STRCMP(STKLABEL,'000056') = 0);
J1016:=(STRCMP(STKLABEL,'000503') = 0);
J1017:=(STRCMP(STKLABEL,'000532') = 0);
J1018:=(STRCMP(STKLABEL,'000586') = 0);
J1019:=(STRCMP(STKLABEL,'000605') = 0);
J1020:=(STRCMP(STKLABEL,'000728') = 0);
J1021:=(STRCMP(STKLABEL,'000531') = 0);
J1022:=(STRCMP(STKLABEL,'600073') = 0);



引用:
1032.问:
请问N天的涨幅在解盘显示,怎写
      答(kjyhao):
试试:
input:n(5);
涨幅:=(c-ref(c,n))/ref(c,n)*100;
EXPLAIN(c, 'N天的涨幅'+numtostr(涨幅,3));
    答(一鸣):
{N天内的跌幅解盘  飞狐 }
input:n(5);
跌幅:=(ref(c,n)/c-1)*100;
EXPLAINEX(c<',跌幅,2,1); font="" <="">



引用:
1033.问:
在1分钟周期内显示5分钟周期的k线如何表达(于付图中),

      答(znz2002):
1.建一个引用指标
   HQSJ
CC:CLOSE;HH:HIGH;LL:LOW;OO:OPEN;
量:VOL;额:AMOUNT;
DD:DATE;


OO:=引用指标('','HQSJ.OO',0,N);
CC:=引用指标('','HQSJ.CC',0,N);
HH:=引用指标('','HQSJ.HH',0,N);
LL:=引用指标('','HQSJ.LL',0,N);

2.原码
INPUT:N(2,2,5);
M:=IF(N=2,5,IF(N=3,15,IF(N=4,30,60)));
WAR00:=OPENMINUTES(TIME);
WAR01:=MOD(WAR00,M);
WAR02:=BARSLAST(WAR01=1)+1;
WAR03:=CEILING(M/2);
OO:=STKINDI('','HQSJ.OO',0,N);
CC:=STKINDI('','HQSJ.CC',0,N);
HH:=STKINDI('','HQSJ.HH',0,N);
LL:=STKINDI('','HQSJ.LL',0,N);
STICKLINE(CC>=OO AND WAR02=WAR03,HH,LL,N,0),COLORRED;
STICKLINE(CCSTICKLINE(CC>=OO,OO,CC,10,0),COLORRED;
STICKLINE(CCMA1:MA(STKINDI('','MA.MA1',0,N),5),COLORWHITE;
MA2:MA(STKINDI('','MA.MA2',0,N),5),COLORYELLOW;
MA3:MA(STKINDI('','MA.MA3',0,N),5),COLORRED;
MA4:MA(STKINDI('','MA.MA4',0,N),5),COLORGREEN;
DRAWTEXT(N=2 AND BARPOS=SYSPARAM(2),H,'5分钟K线'),ALIGN4,COLORYELLOW;
DRAWTEXT(N=3 AND BARPOS=SYSPARAM(2),H,'15分钟K线'),ALIGN4,COLORYELLOW;
DRAWTEXT(N=4 AND BARPOS=SYSPARAM(2),H,'30分钟K线'),ALIGN4,COLORYELLOW;
DRAWTEXT(N=5 AND BARPOS=SYSPARAM(2),H,'60分钟K线'),ALIGN4,COLORYELLOW;



1034.问:
我参照量化思路一书源码想在主图上加条线造个大盘线(主图叠加),
但源码写上了飞狐却通不过,请问如何解决?

INPUT:N(100,2,1000);
ZJ:=BACKSET(ISLASTPERIOD,M);
ZX:=ZJ.REF(ZJ,1);
常数:=REF(INDEXC,BARSLAST(ZX))/REF(C,BARSLAST(ZX));
大盘线:INDEXC//常数,COLORBLUE;

      答(懒汉):
可见区域叠加
pc:=INDEXC;
s2:=SYSPARAM(2);
cc:=c;
b:=cc[s2]/pc[s2];
pc*b;

最后N个周期叠加
INPUT:N(100,2,1000);

s3:=SYSPARAM(3)-N;
w:=barslast(barpos=s3)*0;
pc:=INDEXC+w;
cc:=c+w;
bN:=cc[s3]/pc[s3];
bn*pc;



1035.问:
怎样将RSI指标放在主图上
     答(xyqzhx):
LC := REF(CLOSE,1);
RSI:=SMA(MAX(CLOSE-LC,0),10,1)/SMA(ABS(CLOSE-LC),10,1),linethick0;
q:=SYSPARAM(3)-SYSPARAM(2);
p:=SYSPARAM(3);
kh:=hhv(h,q);
kL:=LLv(L,q);
rh:=hhv(rsi,q);
rL:=LLv(rsi,q);
br:=(kh-kL)/(rh-rL);
wr:=(kh+kL-(rh+rL)*br)/2;
PARTLINE(1,rsi*br[p]+wr[p]),COLORMAGENTA,LINETHICK2;
    答(xyqzhx):
INPUT:N(5,1,100),N1(10,2,100),N2(20,2,200),P(40,2,200);
A:=EMA(C,20);
LC :=REF(C,1);
RSI1:=SMA(MAX(C-LC,0),N,1)/SMA(ABS(C-LC),N,1);
RSI2:=(RSI1-0.5)/3.8*A;
RSI3:RSI2+A,,COLORMAGENTA;
RSI1a:=SMA(MAX(C-LC,0),N1,1)/SMA(ABS(C-LC),N1,1);
RSI2a:=(RSI1a-0.5)/3.8*A;
RSI3a:RSI2a+A,,COLORYELLOW;
RSI1b:=SMA(MAX(C-LC,0),N2,1)/SMA(ABS(C-LC),N2,1);
RSI2b:=(RSI1b-0.5)/3.8*A;
RSI3b:RSI2b+A,;
UPPER:RSI3b+P*STD(RSI3b,10)/10,,COLORFF8918;
LOWER:RSI3b-P*STD(RSI3b,10)/10,,COLOR5290FF;
    答(xyqzhx):
RSI箱体
Var12:=REF(CLOSE,1);
Var22:=MA(CLOSE,5);
Var3:=SMA(MAX(CLOSE-Var12,0),12,1)/SMA(ABS(CLOSE-Var12),12,1)*100;{12日RSI指标}
var33:=((3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1)-2*SMA(SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1),3,1)-50)*1.032+50),COLORRED;
var333:=(var3+var33)/2;

RSI12日:CLOSE+(var333/50-1)*(MA(CLOSE,30)/20)*3,coloryellow,linethick1;{转换为主图}

{箱型区间操作指标}
hh:=h;ll:=l;
top:=h;
bot:=l;
xx[1]:=1;
kk:=1;
for i=1 to datacount do begin
  if xx[i]=1 then begin
    top[i]:=hh[i];
  end;
  if xx[i-1]=1 then begin
    if hh[i]>top[i-1] then begin
      top[i]:=hh[i];
      xx[i]:=1;
    end;else begin
      top[i]:=top[i-1];
      xx[i]:=2;
      end;
  end;
  if xx[i-1]=2 then begin
    if hh[i]>top[i-1] then begin
      top[i]:=hh[i];
      xx[i]:=1;
    end;else begin
      top[i]:=top[i-1];
      bot[i]:=ll[i];
      xx[i]:=3;
    end;
  end;
  if xx[i-1]=3 then begin
    top[i]:=top[i-1];
    if ll[i]< bot [i-1] then begin
      bot[i]:=ll[i];
      xx[i]:=3;
    end;else begin
      bot[i]:=bot[i-1];
      xx[i]:=4;
    end;
  end;
  if xx[i-1]=4 then begin
    top[i]:=top[i-1];
    if ll[i]      bot[i]:=ll[i];
      xx[i]:=3;
    end;else begin
      bot[i]:=bot[i-1];
      xx[i]:=5;
    end;
  end;
  if xx[i-1]=5 then begin
      if ll[i] top[i-1] then begin
      top[i]:=hh[i];
      bot[i]:=hh[i];
      xx[i]:=1;
      end;else begin
      bot[i]:=bot[i-1];
      top[i]:=top[i-1];
      xx[i]:=5;
    end;
  end;  
end;
for j=1 to datacount do begin
  if xx[j]=5 and xx[j-1]=4 then begin
    for k=j-1 downto j-kk do begin
      top[k]:=top[j];
      bot[k]:=bot[j];
    end;
  end;
  if xx[j-1]=5 and xx[j]=1 then kk:=0;
  kk:=kk+1;
end;

jj:=BARSLAST(top<>ref(top,1));
STICKLINE(top,top,top,10,1),colorcyan;
drawnumber(top<>ref(top,1),ref(top,jj)*1.015 ,(top-bot)*100/bot,2) colorff9900;
STICKLINE(bot,bot,bot,10,1),colorcyan;
drawnumber(top<>ref(top,1),ref(bot,jj)*0.99,top-bot ,2) colorgreen  ;

DRAWICON(cross(h,ref(top,1)) and xx=1 and ref(xx,1)=5,h*1.05,5);
DRAWICON(cross(ref(bot,1),l) and xx=1 and ref(xx,1)=5,l*0.985,4);



引用:
1036.问:
怎样写分析家和飞狐的主图的左上角显示提示性的文字
      答(乘风333 ):
分析家的主图的左上角显示提示性的文字

  分析家的.
解:='总股本='+NUMTOSTRN(FINANCE(1) ,0 )+'万股'+' 流通A股='
+ NUMTOSTRN(FINANCE(7),0)+'万股'+' 净资产='+NUMTOSTRN(FINANCE(34),2 ) +
' 收益='+ NUMTOSTRN(FINANCE(33),2)+' 公积金='+
NUMTOSTRN(FINANCE(18),2)+'  市盈率='+NUMTOSTRN(DYNAINFO(39),2)+
' 振幅='+ NUMTOSTRN((h/l-1)*100,2)+'%'+' 换手率='+
NUMTOSTRN(100*VOL/CAPITAL,2)+'%';
if DISPSTATUS=2 then af:=BARPOS;
if DISPSTATUS=1 then b:=BARPOS;
d:=af-b;
e:=hhv(h,d);
DRAWTEXT(1, e*1,解),ColorBCFF8B,ALIGN2;
    答(乘风333 ):
飞狐的.

DRAWTEXT(BARPOS=SYSPARAM(2),HIGH,{STKNAME+'\n'+STKLABEL+'\n'+}BLKNAME)align4,COLORGREEN;
DRAWTEXT(sysparam(2)=BARPOS,c,'总股本='+NUMTOSTR(FINANCE(1) ,0 )+'万股'+' 流通A股='
+ NUMTOSTR(FINANCE(7),0)+'万股'+' 净资产='+NUMTOSTR(FINANCE(34),2 ) +
' 收益='+ NUMTOSTR(FINANCE(33),2)+' 公积金='+
NUMTOSTR(FINANCE(18),2)+'  市盈率='+NUMTOSTR(DYNAINFO(39),2)+
' 振幅='+ NUMTOSTR((h/l-1)*100,2)+'%'+' 换手率='+
NUMTOSTR(100*VOL/CAPITAL,2)+'%'),COLORccffcc,ALIGN5;



引用:
1037.问:
如何能把五彩K线的曙光初现和早晨之星加入K线图显示文字?
曙光初现:
BACKSET(
REF(CLOSE,1)/REF(OPEN,1)<0.97 AND
CLOSE/OPEN>1.03 AND
OPENCLOSE>REF(CLOSE,1),
2)
早晨之星:
BACKSET(
REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND
REF(OPEN,1) < REF(CLOSE,2) AND
ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.03 AND
CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2),3)

     答(馨芸):
试试
ff:=BACKSET(REF(CLOSE,1)/REF(OPEN,1)<0.97 AND  CLOSE/OPEN>1.03
AND OPENREF(CLOSE,1),2);
drawtext(ff=1 and ref(ff,1)=1,L*0.975,'曙光初?'),colorred;
gg:=BACKSET(REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND REF(OPEN,1) < REF(CLOSE,2)
AND ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.03 AND CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2),3);
drawtext(gg=1 and ref(gg,1)=1,L*0.975,'早晨之星'),coloryellow;



引用:
1038.问:
能否把下面这段改为分析家,谢谢!

partline(鼠变异>ref(鼠变异,1) and 鼠变异=招财猫,鼠变异),Linethick2,colorff66ff;
partline(鼠变异>ref(鼠变异,1) and 鼠变异=招财猫 and pdu=1,鼠变异),Linethick2;
partline(鼠变异>ref(鼠变异,1) and 鼠变异<>招财猫,鼠变异);
explain(c>zx and c>=life,'老鼠出洞了,逮住它!'),colorff;
explain(c>zx and c>snook and c explain(c>zx and c<=snook,'老鼠露尾巴,动作快!'),colorff00;
explain(c<=zx,'老鼠没有了,打个盹!'),color808080;
explain(鼠变异>ref(鼠变异,1) and 鼠变异<>招财猫,'发现鼠迹!'),colorff00;
explain(鼠变异>ref(鼠变异,1) and 鼠变异=招财猫 and pdu<>1,'瞬间鼠影!'),colorff66ff;
explain(鼠变异>ref(鼠变异,1) and 鼠变异=招财猫 and pdu=1,'恶鼠难遁!'),colorff;
explain(c>zx and ma20=0,'老鼠去哪里,思考哦!'),colorffff;

     答(无名山人):
partline(鼠变异,鼠变异>ref(鼠变异,1) and 鼠变异=招财猫),Linethick2,colorff66ff;
partline(鼠变异,鼠变异>ref(鼠变异,1) and 鼠变异=招财猫 and pdu=1),Linethick2;
partline(鼠变异,鼠变异>ref(鼠变异,1) and 鼠变异<>招财猫);
TIPTEXT(c>zx and c>=life,0,'老鼠出洞了,逮住它!');
TIPTEXT(c>zx and c>snook and c TIPTEXT(c>zx and c<=snook,0,'老鼠露尾巴,动作快!');
TIPTEXT(c<=zx,0,'老鼠没有了,打个盹!');
TIPTEXT(鼠变异>ref(鼠变异,1) and 鼠变异<>招财猫,0,'发现鼠迹!');
TIPTEXT(鼠变异>ref(鼠变异,1) and 鼠变异=招财猫 and pdu<>1,0,'瞬间鼠影!');
TIPTEXT(鼠变异>ref(鼠变异,1) and 鼠变异=招财猫 and pdu=1,0,'恶鼠难遁!');
TIPTEXT(c>zx and ma20=0,0,'老鼠去哪里,思考哦!');



引用:
1039.问:
10日线已经上升了6天怎么写啊
      答(xiaotian):
COUNT(ma(c,10)>ref(ma(c,10),1),6)=6;



引用:
1040.问:
公式1   
CCI顺势指标源码 :
   参数:N     14
   TYP := (HIGH + LOW + CLOSE)/3;
   (TYP-MA(TYP,N))/(0.015*AVEDEV(TYP,N));
   请教老师如何选出CCI值在-150以下的个股?
公式2
(一 )5日均线上穿10日均线。(二  )5日,10日均线是上升的。请老师编 个一. 二. 同时成立分析家选股公式。
        答(懒汉):
一.
TYP := (HIGH + LOW + CLOSE)/3;
(TYP-MA(TYP,N))/(0.015*AVEDEV(TYP,N))<-150;

二.
m:=ma(c,5);
m1:=ma(c,10);
cross(m,m1) and m>ref(m,1) and m1>ref(m1,1);

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约