卡丁车配重:大智慧公式技巧集锦

来源:百度文库 编辑:偶看新闻 时间:2024/04/30 01:49:25
  0001 主图显示代码及板块 0026 上影线 0051 基本配色:灰色峰 0076 横向统计
0002 主图显示成交量 0027 本周期的涨跌幅 0052 基本配色:绿蓝峰  0077 扩展数据
0003 预测全天成交量、换手率 0028 振幅 0053 K线最高最低向右平行线 0078 峰点公式
0004 收盘线(主图) 0029 均线金叉 0054 显示无数条线 0079 窄幅整理
0005 时间周期线(主图叠加) 0030 均线死叉 0055 底背离 0080 N天前到M天前之间最高价
0006 BACKSET()函数高级用法 0031 均线多头排列 0056 顶背离 0081 某时间段最高价
0007 MACD金死叉间最大最小值 0032 均线空头排列 0057 N次金叉、死叉 0082 二十日内是否有过涨停
0008 曲线在N天内平均变化率 0033 N日均线向下 0058 5分副图显示15分K线 0083 放量创新高
0009 变动角 0034 N日均线向上 0059 移动成本 0084 突破长期平台整理
0010 曲线上两点的连线的斜率 0035 N日均线走平 0060 妙用SUMBARS()函数 0085 尾盘大单拉升或打压
0011 倾角 0036 前N日至M日出过死叉 0061 取得K线的序号  0086 MACD柱状体变宽语法  
0012 交叉点 0037 今成交量大于N日均量 0062 变量宣告  0087 傅立叶变换  
0013 下拐点(由下向上转) 0038 低位密集 0063 跨周期引用数据  0088 周期切换  
0014 上拐点(由上向下转) 0039 换手率  0064 未来数据、未知数据  0089 公历农历
0015 位置(交叉点到当前周期) 0040 N日盈亏 0065 主图KD  0090 添加特色指针子选单  
0016 曲线A叠加曲线B 0041 曲线叠加 0066 描绘K线  0091 5日均线转折价
0017 两条指标线两次金叉通式 0042 均线变色 0067 分时K线当天K线序号  0092 平均真实波幅ATRBANDS
0018 今收对N日内低收盘涨幅 0043 基本配色:白红峰  0068 系统参数函数  0093 SYSPARAM(1)函数的说明
0019 今收对N日内高收盘跌幅 0044 基本配色:白晶峰 0069 概率统计 0094 真实波幅平均真实波幅
0020 股价N日内运行相对位置  0045 基本配色:白蓝峰 0070 五彩K线常用颜色 0095 向后到水平线跌破
0021 股价上方筹码(%) 0046 基本配色:白绿峰  0071 公式设定注意事项 0096 分析周期切换(1)
0022 股价下方筹码(%) 0047 基本配色:淡紫峰  0072 交易系统公式交易类型 0097 分析周期切换(2)  
0023 收盘价N%处的套牢盘  0048 基本配色:黄褐峰 0073 可供引用的周期类型 0098 调用某公式内时间数列线
0024 收盘价N%处的获利盘  0049 基本配色:黄红峰 0074 引用表达式 0099 三角函数AND角度线
0025 下影线  0050 基本配色:黄绿峰  0075 符号一览表 0100 个股和大盘联动K线
  
公式技巧(0001)
【 发布:于瑶  2004-10-03 22:08  股市脉望   浏览/回复:970/99】  
  0001--主图显示代码及板块
  
  一、显示板块
  
  例一:
  
  DRAWTEXT(BARPOS=SYSPARAM(2),H,'\N所属板块:'+BLKNAME),ALIGN4,COLORYELLOW;
  
  例二:
  
  DRAWTEXT(SYSPARAM(2)=BARPOS,C,'所属板块:'+BLKNAME),ALIGN4,COLORYELLOW;
  
  例三:
  
  DRAWTEXT(SYSPARAM(2)=BARSCOUNT(C),H,'[所属版块]:'+BLKNAME),ALIGN4,COLORYELLOW;
  
  二、显示代码及板块
  
  S:=STKLABEL;
  DRAWTEXT(SYSPARAM(2)=BARPOS,C,S),ALIGN4,COLORYELLOW;
  DRAWTEXT(BARPOS=SYSPARAM(2),H,'\N 所属板块:'+BLKNAME),ALIGN4,COLORYELLOW;{N与所属板块之间空六格,以显示代码}
工具箱  

【 · 发布:于瑶  2004-10-05 22:34 】    
  0031--均线多头排列
  
  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);
  
工具箱  

【 · 发布:于瑶  2004-10-05 22:34 】    
  0032--均线空头排列
  
  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);
工具箱  

【 · 发布:于瑶  2004-10-05 22:35 】    
  0033--N日均线向下
  
  AA:=MA(C,N);
  BB:=REF(AA,1);
  AA< BB
工具箱  

【 · 发布:于瑶  2004-10-05 22:35 】    
  0034--N日均线向上
  
  AA:=MA(C,N);
  BB:=REF(AA,1);
  AA>BB
工具箱  

【 · 发布:于瑶  2004-10-05 22:38 】    
  0035--N日均线走平
  
  AA:=MA(C,N);
  BB:=REF(AA,1);
  AA=BB
工具箱  

【 · 发布:于瑶  2004-10-05 22:38 】    
  0036--向前N日至M日出现过均线死叉(P1< P2)
  
  AA:=MA(C,P1);
  BB:=MA(C,P2);
  CC:=REF(CROSS(BB,AA),N);
  COUNT(CC,M);
工具箱  

【 · 发布:于瑶  2004-10-05 22:39 】    
  0037--今日成交量大于N日以来的均量
  
  VOL>MA(VOL,N);
工具箱  

【 · 发布:于瑶  2004-10-05 22:39 】    
  0038--低位密集
  
  A1:=COST(85);
  A2:=COST(15);
  A3:=A1-A2;
  A4:=(A1+A2)/2;
  A5:=A3/A4*100<10;
  B1:=HHV(H,120);
  B2:=LLV(L,120);
  B3:=B1-B2;
  B4:=(A4-B2)< B3/2;
  A5 AND B4;
工具箱  

【 · 发布:于瑶  2004-10-05 22:39 】    
  0039--换手率
  
  VOL/CAPITAL*100;
工具箱  

【 · 发布:于瑶  2004-10-05 22:40 】    
  0040--N日盈亏
  
  V1:=VOL/SUM(VOL,N);
  V2:=DMA(CLOSE,V1);
  V3:(CLOSE-V2)/V2*100;
工具箱  

【 · 发布:于瑶  2004-10-05 22:40 】    
  0041--曲线叠加
  
  指标线的叠加,是为了方便观看和比较,没什么其他的意义。
  
  一、对指标曲线的变化幅度放大
  
  此法,一线变形,另一线不变,但变形线的走势与原线完全相似。
  
  举例:C叠加V
  
  BC:=HHV(C,N)-LLV(C,N);//N一般取常用主图上的K线数量
  BV:=HHV(V,N);
  BI:=BC/BV;//叠加比 
  B:=BI[DATACOUNT];//最后一根K线的叠加比,保证叠加比前后统一
  成交量:V,VOLSTICK;
  F:=C/REF(C,1);
  JC:=REF(C,1)*(1+A*F)*B/A;//A-放大倍数,将C的涨跌幅度F放大
  JL:=LLV(JC,N);//平移量。请去掉JC句的=看JL的作用
  收盘价:C,LINETHICK0,COLORYELLOW;//只显示数值,不画线
  PARTLINE(C>0,JC-JL[DATACOUNT]),COLORYELLOW;//收盘价趋势线,只画线,不显示数值
  
  通式:
  
  曲线X叠加曲线Y
  
  BX:=HHV(X,N)-LLV(X,N);
  BY:=HHV(Y,N)-LLV(Y,N);
  BI:=BX/BY;
  B:=BI[DATACOUNT];
  FX:=X/REF(X,1);
  JX:=REF(X,1)*(1+A*FX)*B/A;
  XL:=LLV(JX,N);
  曲线Y:Y;
  曲线X:X,LINETHICK0;//曲线X的值
  PARTLINE(C,JX-XL[DATACOUNT]);//曲线X的线
  
  二、百分比叠加 
  
  把两曲线的波动幅度划成百分比进行叠加
  
  此法,两线都变形,但走势都与原线完全相似。
  
  举例:C叠加V
  
  HV:=HHV(V,N);
  DV:=HV[DATACOUNT];
  BV:=100/DV;
  V*BV,VOLSTICK;
  HC:=HHV(C,N);
  LC:=LLV(C,N);
  BC:=100/(HC[DATACOUNT]-LC[DATACOUNT]);
  (C-LC[DATACOUNT])*BC;
  
  通式一:
  
  曲线X,曲线Y
  
  XH:=HHV(X,N);
  XL:=LLV(X,N);
  XDH:=XH[DATACOUNT];
  XDL:=XL[DATACOUNT];
  BX:=100/(XDH-XDL);
  曲线X:(X-XDL)*BX;
  
  YH:=HHV(Y,N);
  YL:=LLV(Y,N);
  YDH:=YH[DATACOUNT];
  YDL:=YL[DATACOUNT];
  BY:=100/(YDH-YDL);
  曲线Y:(Y-YDL)*BY;
  
  通式二:
  
  X曲线+Y曲线
  
  N:=SYSPARAM(3)-SYSPARAM(2);
  X:=.........; {.........为X曲线定义}
  XH:=HHV(X,N);
  XL:=LLV(X,N);
  XDH:=XH[SYSPARAM(3)];
  XDL:=XL[SYSPARAM(3)];
  BX:=100/(XDH-XDL);
  曲线X:(X-XDL)*BX;
  
  Y:=.........;{.........为Y曲线定义}
  YH:=HHV(Y,N);
  YL:=LLV(Y,N);
  YDH:=YH[SYSPARAM(3)];
  YDL:=YL[SYSPARAM(3)];
  BY:=100/(YDH-YDL);
  曲线Y:(Y-YDL)*BY;
  
  三、固定位置叠加
  
  此法应用不多,仅举例。
  
  例一:
  
  主图成交量(V叠加C)
  
  {M:960,1,2000}
  R0:=M/1000;R:=(L-R0*SYSPARAM(5))/V;
  R1:=LLV(R,SYSPARAM(3)-SYSPARAM(2));R2:=R1[SYSPARAM(3)];
  R3:=LLV(L-R2*V,SYSPARAM(3)-SYSPARAM(2));
  R4:=R3[SYSPARAM(3)];R5:=(R2*V+R4)*0.995;
  STICKLINE(C>=REF(C,1),R5,R0*SYSPARAM(5),6,1)COLORRED;
  STICKLINE(C< REF(C,1),R5,R0*SYSPARAM(5),6,0)COLORCYAN;
  PARTLINE(V>=0,R0*SYSPARAM(5)) COLORWHITE;
  PARTLINE(R5>0,MA(R5,5));
  PARTLINE(R5>0,MA(R5,10));
  PARTLINE(R5>0,MA(R5,20));
  
  例二:
  
  INPUT:N(10,2,999);
  M:=SYSPARAM(3)-SYSPARAM(2);
  X:=C;
  Y:=SUM(IF(CLOSE>REF(CLOSE,1),VOL/CAPITAL,IF(CLOSE< REF(CLOSE,1),-VOL/CAPITAL,0)),0);
  XH:=HHV(X,M); XL:=LLV(X,M); XDH:=XH[SYSPARAM(3)]; XDL:=XL[SYSPARAM(3)];
  BX:=100/(XDH-XDL);
  收盘:C,LINETHICK0,;
  收盘↑:PARTLINE(X>REF(X,1),(X-XDL)*BX),COLORRED;
  收盘↓:PARTLINE(X< REF(X,1),(X-XDL)*BX),COLORCYAN;
  YH:=HHV(Y,M); YL:=LLV(Y,M); YDH:=YH[SYSPARAM(3)]; YDL:=YL[SYSPARAM(3)];
  BY:=100/(YDH-YDL);
  TY:=(Y-YDL)*BY;
  OBV值:Y*1000,LINETHICK0,COLOR007BFF;
  OBV线↑:PARTLINE(Y>REF(Y,1),(Y-YDL)*BY),COLORYELLOW;
  OBV线↓:PARTLINE(Y< REF(Y,1),(Y-YDL)*BY),COLOR009F00;
  A1:=REF(TY,N)=HHV(TY,2*N+1); B1:=FILTER(A1,N); C1:=BACKSET(B1,N+1); HD:=FILTER(C1,N);
  A2:=REF(TY,N)=LLV(TY,2*N+1); B2:=FILTER(A2,N); C2:=BACKSET(B2,N+1); LD:=FILTER(C2,N);
  AA:=REF(TY,BARSLAST(HD)); BB:=REF(TY,BARSLAST(LD));A1:=REF(Y,BARSLAST(HD))*1000; B1:=REF(Y,BARSLAST(LD))*1000;
  T1:=BARSLAST(HD)< BARSLAST(LD) AND NOT(HD) ;
  T2:=BARSLAST(HD)>BARSLAST(LD) AND NOT(LD);
  PARTLINE(T1,AA),COLORMAGENTA,LINETHICK2;
  PARTLINE(T2,BB),COLORGREEN,LINETHICK2;
  DRAWNUMBER(T1=0 AND REF(T1,1)>0,REF(AA,1)+0.1,A1,2);
  DRAWNUMBER(T2=0 AND REF(T2,1)>0,REF(BB,1)+0.1,B1,2);
  
  DRAWNUMBER(ISLASTBAR AND T1>0,REF(AA,1)+0.1,A1,2),COLORYELLOW;
  DRAWNUMBER(ISLASTBAR AND T2>0,REF(BB,1)+0.1,B1,2),COLORMAGENTA;
工具箱  

【 · 发布:于瑶  2004-10-05 22:41 】    
  0042--均线变色
  
  MA05:MA(CLOSE,5);
  MA30:MA(CLOSE,30);
  
  IF(MA05< MA30,MA05,MA30),COLORGREEN;
  IF(MA05< MA30,MA30,MA05),COLORRED;
  IF(MA05>MA30,MA30,MA30),COLORBLUE;
  
  DRAWICON(CROSS(MA05,MA30),L*0.98,4);
  DRAWICON(CROSS(MA30,MA05),H*1.02,5);
工具箱  


【 · 发布:于瑶  2004-10-07 15:24 】    
  0055--底背离
  
  LLV(L,60)=L) AND NOT(LLV(DEA,60)=DEA);
工具箱  

【 · 发布:于瑶  2004-10-07 15:25 】    
  0056--顶背离
  
  HHV(H,60)=H) AND NOT(HHV(DEA,60)=DEA);
工具箱  

【 · 发布:于瑶  2004-10-07 15:25 】    
  0057--N次金叉、死叉
  
  0轴上二次金叉
  
  COUNT(CROSS(DIF,DEA) AND DEA>0,20)=2 AND CROSS(DIF,DEA) AND
  DEA>0;
  
  0轴上三次金叉
  
  COUNT(CROSS(DIF,DEA) AND DEA>0,20)=3 AND CROSS(DIF,DEA) AND
  DEA>0;
  
  0轴上四次金叉
  
  COUNT(CROSS(DIF,DEA) AND DEA>0,20)=4 AND CROSS(DIF,DEA) AND DEA>0;
  
  二次金叉
  
  EXPLAIN(COUNT(CROSS(DIF,DEA),20)=2 AND CROSS(DIF,DEA);
  
  二次死叉
  
  COUNT(CROSS(DEA,DIF),20)=2 AND CROSS(DEA,DIF);
工具箱  

【 · 发布:于瑶  2004-10-08 20:57 】    
  0058--5分钟副图显示15分钟K线
  
  建公式:0015
  
  C15:CLOSE;
  O15:OPEN;
  H15:HIGH;
  L15:LOW;
  
  建公式:十五K线
  
  C15:="0015.C15#MIN15";
  O15:="0015.O15#MIN15";
  H15:="0015.H15#MIN15";
  L15:="0015.L15#MIN15";
  
  TI:=OPENMINUTES(TIME)=10 OR OPENMINUTES(TIME)=25 OR OPENMINUTES(TIME)=40 OR OPENMINUTES(TIME)=55 OR OPENMINUTES(TIME)=70 OR OPENMINUTES(TIME)=85 OR OPENMINUTES(TIME)=100 OR OPENMINUTES(TIME)=115 OR OPENMINUTES(TIME)=130 OR OPENMINUTES(TIME)=145 OR OPENMINUTES(TIME)=160 OR OPENMINUTES(TIME)=175 OR OPENMINUTES(TIME)=190 OR OPENMINUTES(TIME)=205 OR OPENMINUTES(TIME)=220 OR OPENMINUTES(TIME)=235;
  
  HH15:=IF(TI,H15,C15);
  LL15:=IF(TI,L15,C15);
  
  STICKLINE(C15>O15,C15,O15,10,0),COLORRED;
  STICKLINE(C15>O15 AND H15>C15,HH15,C15,0.1,0),COLORRED;
  STICKLINE(C15>O15 AND O15>L15,O15,LL15,0.1,0),COLORRED;
  STICKLINE(C15<=O15,C15,O15,10,0),COLORGREEN;
  STICKLINE(C15<=O15 AND C15>L15,C15,LL15,0.1,0),COLORGREEN;
  STICKLINE(C15<=O15 AND H15>O15,HH15,O15,0.1,0),COLORGREEN;
  
  注:以大陆股市为例,四小时,其他市场如超过四小时,可在中间语句“TI:=”中以15为系数顺序加足,如:OR 250 OR 265……等等。
  
工具箱  

【 · 发布:于瑶  2004-10-08 20:58 】    
  0059--移动成本
  
  不知道函数算法,计算误差在所难免。调整参数“%”可看到不同的移动成本。
  
  ///筹码%
  INPUT:%(90,1,100);
  A:=AMOUNT/V/100;
  成本:FLOOR(COST(50-%/2)*100)/100,COLORYELLOW,LINETHICK0;
  ~:CEILING(COST(50+%/2)*100)/100,COLORYELLOW,LINETHICK0;
  集中度:INTPART((~-成本)/(~+成本)*1000)/10,COLORGREEN;
  平均成本:ROUND(COST(50)*100)/100,LINETHICK0;
  穿透力:(WINNER(C)-REF(WINNER(C),1))/V*CAPITAL,LINETHICK0;//计算误差大
  //穿透力2:(WINNER(C)-WINNER(O))/V*CAPITAL,LINETHICK0;//这一写法还是误差大
  获利比例:ROUND(WINNER(C)*1000)/10,LINETHICK0;
 0059--移动成本
  
  不知道函数算法,计算误差在所难免。调整参数“%”可看到不同的移动成本。
  
  ///筹码%
  INPUT:%(90,1,100);
  A:=AMOUNT/V/100;
  成本:FLOOR(COST(50-%/2)*100)/100,COLORYELLOW,LINETHICK0;
  ~:CEILING(COST(50+%/2)*100)/100,COLORYELLOW,LINETHICK0;
  集中度:INTPART((~-成本)/(~+成本)*1000)/10,COLORGREEN;
  平均成本:ROUND(COST(50)*100)/100,LINETHICK0;
  穿透力:(WINNER(C)-REF(WINNER(C),1))/V*CAPITAL,LINETHICK0;//计算误差大
  //穿透力2:(WINNER(C)-WINNER(O))/V*CAPITAL,LINETHICK0;//这一写法还是误差大
  获利比例:ROUND(WINNER(C)*1000)/10,LINETHICK0;
  
工具箱  

【 · 发布:于瑶  2004-10-08 20:59 】    
  0060--妙用SUMBARS()函数
  
  SUMBARS(X,N)
  
  函数的用法如下:
  
  向前累加到指定值到现在的周期数。
  
  用法:
  
  SUMBARS(X,A)
  
  将X向前累加直到大于等于A,返回这个区间的周期数
  
  例如:
  
  SUMBARS(VOL,CAPITAL)
  
  1、设计一个指标,计算当日成交量是几天内的最高成交量?
  
  2、设计一个指标,计算当日最高价是几天内的最高价?
  
  提示:直接用HHV()函数无法得到正确结果。
  
  例一:
  
  B:=HHV(H,0);
  A:=IF(BARPOS=1,B[DATACOUNT]*1.2,H);
  价:SUMBARS(REF(A,1)-A,0);
  
  U:=HHV(V,0);
  S:=IF(BARPOS=1,U[DATACOUNT]*1.2,V);
  量:SUMBARS(REF(S,1)-S,0);
  
  或:
  
  VH:=HHV(VOL,0);
  FV:=IF(BARPOS=1,VH[DATACOUNT]*1.2,VOL); //VH[DATACOUNT]是历史最高成交量
  量创新高周期数:SUMBARS(REF(FV,1)-FV,0);
  {这里的关键是 REF(FV,1)-FV ,想想看写成 FV-REF(FV,1) 行不行?}
  
  另一种写法:
  
  VH:=HHV(VOL,0);
  FV:=VOL;
  FV[1]:=VH[DATACOUNT]*1.2; //VH[DATACOUNT]是历史最高成交量
  量创新高周期数:SUMBARS(REF(FV,1)-FV,0);
  {这里的关键是 REF(FV,1)-FV ,想想看写成 FV-REF(FV,1) 行不行?}
  
  代码已经成功了,原理是什么呢?
  
  假设某日成交量是3日内的最大成交量,则必有:
  
  REF(VOL,3)-VOL>=0
  
  等价于:
  
  (REF(VOL,3)-REF(VOL,2))+(REF(VOL,2)-REF(VOL,1))+(REF(VOL,1)-VOL) >=0
  
  意思就是说,“昨成交量与今成交量之差”逐日累加,直到某日累加和大于等于0,则这之间的天数,就是所要求的日数。
  
  我们再来看看SUMBARS()函数的含义:
  
  SUMBARS(X,A):将X向前累加直到大于等于A,返回这个区间的周期数。
  
  显然上面的式子:
  
  (REF(VOL,3)-REF(VOL,2))+(REF(VOL,2)-REF(VOL,1))+(REF(VOL,1)-VOL)>=0
  
  可以写成:
  
  SUMBARS(REF(VOL,1)-VOL, 0);
  
  为何第1周期的成交量要替换成比所有成交量都大的数值?最后,再来思考一个问题,把题目中的求“最大”,改成求“最小”,即多少天内是最小的?
  
  例二:
  
  B:=HHV(H,0);
  A:=IF(BARPOS=1,9999,H);
  Z:SUMBARS(REF(A,1)-A,0);
  DRAWNUMBER(BARPOS=SYSPARAM(1),1,Z,0)ALIGN4,COLORWHITE;
  
  U:=HHV(V,0);
  S:=IF(BARPOS=1,999999999999,V)
  Y:SUMBARS(REF(S,1)-S,0);
  DRAWNUMBER(BARPOS=SYSPARAM(1),1,Y,0)ALIGN3,COLORYELLOW;
  
  例三:
  
  HH:=IF(BARSCOUNT(C)=1,9999,H);
  ZH:SUMBARS(REF(HH,1)-HH,0);//价创了N周期新高
  
  VH:=IF(BARSCOUNT(C)=1,99999999,V);
  HV:SUMBARS(REF(VH,1)-VH,0);//量创了N周期新高
  
  LL:=IF(BARSCOUNT(C)=1,0,L);
  ZL:SUMBARS(LL-REF(LL,1),0);//价创了N周期新低
  
  VL:=IF(BARSCOUNT(C)=1,0,V);
  LV:SUMBARS(VL-REF(VL,1),0);//量创了N周期新低
  
  附注:
  
  用99999999等具体数值,最好是尽可能大的数值(比如单精数的上限),否则仍有可能无法全部完成计算,比如上证指数的年线,成交量最大时,仍然超过了99999999。
  
  倒数第6天的最高价格怎么表示?
  
  FH:=HIGH;
  FH[DATACOUNT-5]; //倒数第6天的最高价格。
  
  [DATACOUNT]
  
  返回K线的数量,即总共有多少根K线。
  
工具箱  

【 · 发布:于瑶  2004-10-09 01:52 】    
  0061--取得K线的序号
  
  取得K线的序号,正序有下面几种方法:(从1数起)
  
  BARPOS;
  
  SX:BARSCOUNT(CLOSE);
  
  SY:SUM(1,0);
  
  DATACOUNT;{不随光标变动,只显示最后K线序号}
  
  逆序可用下列方法取得:(从1数起)
  
  (DATACOUNT-BARPOS)+1;
  
  (DATACOUNT-BARSCOUNT(CLOSE))+1;
  
  (DATACOUNT-SUM(1,0))+1;
  
工具箱  

【 · 发布:于瑶  2004-10-09 01:53 】    
  0062--变量宣告
  
  指定叙述:经过指定宣告后,飞狐才认识AA、BB、CC,否则会出现"未定义的标示符号"。所谓"定义",程序语言的用语,就叫做"变量宣告"。
  
  AA:OPEN;{宣告OPEN,指定给AA→输出的表达式}
  
  BB:HIGH,LINETHICK0;{宣告HIGH,指定给BB→输出的表达式→秀数值但不秀线图}
  
  CC:=CLOSE;{宣告CLOSE,指定给CC→不输出的表达式→不秀数值也不秀线图}
  
  DD:(AA+BB+CC)/3;{;分号,告诉程序要换行执行了}
  
  EE:=(AA+CC)/2;
  PARTLINE(CLOSE>0,EE);{秀线图但不秀数值}
  
  注:{ }大括号内或在//后面,可用来输入公式批注。
  
工具箱  

【 · 发布:于瑶  2004-10-09 01:53 】    
  0063--跨周期引用数据
  
  (一)指针线公式的运算,大部份都是代入开、高、低、收、量等数据去运算的。
  
  (二)开、高、低、收、量又分成下面四种型式出现:
  
  开、高、低、收、量(基本的日K线数据)
  开、高、低、收、量(周K线数据)
  开、高、低、收、量(月K线数据)
  开、高、低、收、量(年K线数据)
  
  (三)所以当指针线公式运算,要代入下面数据时:
  
  开、高、低、收、量(周K线数据)
  开、高、低、收、量(月K线数据)
  
  #WEEK 和 #MONTH 就会派上用场。
  
  (四)举例:
  
  公式A.建立一个专门被用来引用(QUOTE)的公式区。
  
  公式名称:QU
  
  A1:(OPEN+HIGH+LOW+CLOSE)/4;
  
  说明:上面公式的运算,是代入开、高、低、收(当前周期K线数据)运算的。
  
  公式B.
  
  公式名称:AA
  
  AA:"QU.A1#WEEK";
  
  说明:将下面公式的运算,代入开、高、低、收(周K线数据)运算。
  
  (OPEN+HIGH+LOW+CLOSE) / 4
  
  公式C.
  
  公式名称:BB
  
  BB:"QU.A1#MONTH";
  
  说明:将下面公式的运算,代入开、高、低、收(月K线数据)运算。
  
  (OPEN+HIGH+LOW+CLOSE)/4
  
  附注:
  
  可供引用的周期类型有:
  
  MIN1,MIN5,MIN15,MIN30,MIN60,DAY,WEEK,MONTH
  
  分别表示将1,5,15,30,60分钟K线数据,以及日,周,月K线数据,代入被引用的公式,进行运算。
  
  意义:
  
  可将大周期内跑的数据,引用到小周期内来跑。将小周期内跑的数据,引用到大周期内来跑,就会有问题,因为时间横坐标不一样了。
  
  公式(1):先建立即将被引用的表达式
  
  将公式建立在:技术指针 ( ●主图叠加 ○主图 )
  
  公式名称:NH
  
  AA:=HIGH< REF(HIGH,1);{不输出的表达式,如果被引用还是会变成不输出的表达式}
  BB:=BARSLAST(AA=1);
  CC:REF(HIGH,BB); {输出的表达式,如果被引用还是会变成输出的表达式}
  
  说明:
  
  上面公式的运算,是以当周期时间数列数据运算的。
  
  公式(2):
  
  将公式建立在:技术指针 ( ●主图叠加 ○主图 )
  
  公式名称:NHH
  
  AA:"NH.AA#WEEK";{不输出的表达式}
  BB:"NH.BB#WEEK";
  CC:"NH.CC#WEEK";{输出的表达式}
  DRAWNUMBER(ISLASTBAR,CC,CC,2);
  
  说明:
  
  上面公式的运算,是以周周期时间数列数据运算的。
  
  
工具箱  

【 · 发布:于瑶  2004-10-09 01:54 】    
  0064--未来数据、未知数据
  
  写公式,首先要对已知数据(过去式)、未知数据(未完成式、现在进行式)有通盘的认知。
  
  可将"未来"分为两种情况:
  
  1、实时行情中:在一根K线。
  
  以实时行情中的当前日K线为例。除了O之外,其它H、L、C全有未来之嫌。因为在收盘之前,拉高、打压是司空见惯的事,谁也不能保证H、L不会创出当天的新高和新低,更不用说C了。又如日线周期公式"C>REF(C,1);",前一分钟信号成立,后一分钟可能信号就不成立了。另外,如引用了周K和月K数据,因为当前周K和月K还在变动之中,所以也是未来资料。
  
  2、盘后中:在多根K线。
  
  因为在盘后,日K中的四大要素O、H、L、C就没有未来之可能了。在盘后,除了周五之外,引用的周K指针也是未来数据。除了在月末,引用的月K指针也是未来数据。
  
  总而言之,指针公式就分这两种:
  
  线图信号的确定→全都用已知数据(过去式)来决定。
  线图信号的确定→有用到未知数据(未完成式、现在进行式)来决定。
  
  ZIG函数
  
  ZX:ZIG(CLOSE,8);
  
  最近这次峰点、谷点的确定,也常处在未完成式的状态中。
  
  打个比喻,线图信号的确定→有用到未知数据(未完成式、现在进行式),例如,在实时盘中一根日K线的收盘价变来变去,指针线图当然随之而起舞。
  
  ZIG函数只是把格局放大,N的日K组合而成的一根多日K线,这一根多日K线的收盘价变来变去,指针线图当然随之而起舞。
  
工具箱  

【 · 发布:于瑶  2004-10-09 01:55 】    
  0065--主图KD
  
  在主图上,坐标是以K线的价格为主。如何将在0与100中游走的KD指针附加上去,这是写作指针的基本逻辑观念的运用。
  
  PARAM#1( N,9,2,100 )
  PARAM#2( M1,3,1,40 )
  PARAM#3( M2,3,1,40 )
  
  RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100 LINETHICK0;{:=运算过程不显示值与图}
  K:SMA(RSV,3,1),LINETHICK0,COLORWHITE;{LINETHICK0只显值不显图}
  D:SMA(K,3,1),LINETHICK0,COLORYELLOW;
  
  HH:=SYSPARAM(4);{主图可见K线最高价}
  LL:=SYSPARAM(5);{主图可见K线最低价}
  
  KK:=K/100*(HH-LL)+LL;
  DD:=D/100*(HH-LL)+LL;
  
  PARTLINE(1=1,KK),COLORWHITE; {条件成立时,则显示图线形}
  PARTLINE(C>0,DD),COLORYELLOW;
  
  C;{显示收盘价的值与图线形}
  PARTLINE(C>=REF(C,1),C),COLORRED;{显示收盘价的图改成涨红跌绿联机图}
  PARTLINE(C< REF(C,1),C),COLORGREEN;
  
工具箱  0066--描绘K线
  
  例一:普通
  
  将下列公式建立在:技术指针 ( ○主图叠加 ●主图 )
  
  公式名称:KL
  
  STICKLINE( ISUP , HIGH , LOW , 0.1 , 0 ) , COLORRED ;
  STICKLINE( ISUP , CLOSE , OPEN , 8 , 1 ) , COLORRED ;
  STICKLINE( ISDOWN , HIGH , LOW , 0.1 , 0 ) , COLORCYAN ;
  STICKLINE( ISDOWN , CLOSE , OPEN , 8 , 0 ) , COLORCYAN ;
  
  STICKLINE( ISEQUAL AND C>REF( C , 1 ) , HIGH , LOW , 0.1 , 0 ) , COLORRED ;
  STICKLINE( ISEQUAL AND C>REF( C , 1 ) , CLOSE , OPEN , 8 , 0 ) , COLORRED ;
  STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , HIGH , LOW , 0.1 , 0 ) , COLORCYAN ;
  STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , CLOSE , OPEN , 8 , 0 ) , COLORCYAN ;
  
  X:=BARSCOUNT( CLOSE ) ;
  
  {以下是描绘第一个交易日的K线,以补前面含盖的不足}
  
  STICKLINE( ISEQUAL AND X = 1 , HIGH, LOW, 0.1, 0 ) , COLORRED ;
  STICKLINE( ISEQUAL AND X = 1 , CLOSE , OPEN , 8 , 0 ) , COLORRED ;
  
  说明:
  
  ISUP函数:相当于 IF( CLOSE>OPEN , 1 , 0 )。
  
  ISEQUAL函数:相当于 IF( CLOSE=OPEN , 1 , 0 )。
  
  ISDOWN函数:相当于 IF( CLOSE < OPEN , 1 , 0 )。
  
  STICKLINE函数,画出来的对象有重叠覆盖性:→后画的对象可覆盖先画的对象。
  
  例二:配色
  
  STICKLINE( ISUP , HIGH , LOW , 0.1 , 0 ),COLOR04FEFC ;
  STICKLINE( ISUP , CLOSE , OPEN , 8 , 0 ),COLOR0466FC ;
  STICKLINE( ISUP , CLOSE , OPEN , 3 , 0 ),COLOR04FEFC ;
  STICKLINE( ISDOWN , HIGH , LOW , 0.1 , 0 ),COLORFCFE04 ;
  STICKLINE( ISDOWN , CLOSE , OPEN , 8 , 0 ),COLORFC6604 ;
  STICKLINE( ISDOWN , CLOSE , OPEN , 3 , 0 ),COLORFCFE04 ;
  
  STICKLINE( ISEQUAL AND C>REF( C , 1 ) , HIGH , LOW , 0.1 , 0 ),COLOR04FEFC ;
  STICKLINE( ISEQUAL AND C>REF( C , 1 ) , CLOSE , OPEN , 8 , 0 ),COLOR0466FC ;
  STICKLINE( ISEQUAL AND C>REF( C , 1 ) , CLOSE , OPEN , 3 , 0 ),COLOR04FEFC ;
  STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , HIGH , LOW , 0.1 , 0 ),COLORFCFE04 ;
  STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , CLOSE , OPEN , 8 , 0 ),COLORFC6604 ;
  STICKLINE( ISEQUAL AND C<=REF( C , 1 ) , CLOSE , OPEN , 3 , 0 ),COLORFCFE04 ;
  
  X:=BARSCOUNT( CLOSE ) ;
  
  {以下是描绘第一个交易日的K线,以补前面含盖的不足}
  
  STICKLINE( ISEQUAL AND X = 1 , HIGH, LOW, 0.1, 0 ),COLOR04FEFC ;
  STICKLINE( ISEQUAL AND X = 1 , CLOSE , OPEN , 8 , 1 ),COLOR0466FC ;
  STICKLINE( ISEQUAL AND X = 1 , CLOSE , OPEN , 3 , 1 ),COLOR04FEFC ;
  
工具箱  

【 · 发布:于瑶  2004-10-09 01:56 】    
  0067--分时K线当天K线序号
  
  范例:开盘第一根分时K线,指定一个值=1给它,其它为0。
  
  XA:REF(DATE,1)<>DATE, STICK;
  
  范例:每天的分时K线,指定它的当天K线序号给它
  
  XA:=REF(DATE,1)<>DATE, STICK;
  
  XB:BARSLAST(XA=1) + 1 ,STICK;
  
  应用:每天在分时K线,累计成交张数
  
  XA:=REF(DATE,1)<>DATE , STICK;
  
  XB:=BARSLAST(XA=1) + 1 ,STICK;
  
  SV:SUM( VOL , XB ) ;
  
  范例:标记今天分时K线的今天K线序号。过了午夜12点,就又要等早盘开盘后序号数字才会出现
  
  XA:=CURRENTDATE=DATE ;
  XB:=REF(XA , 1)<>XA ;
  
  XC:HHVBARS(XB , 0) + XA ;
  
  应用:13均线今天当下最后数值向后延申,画平台线。
  
  XA:=CURRENTDATE=DATE ;
  XB:=REF(XA , 1)<>XA ;
  
  XC:=HHVBARS(XB , 0) + XA ;
  
  XD:=MA(C,13);
  
  XE:=REFX(XD , 300);
  XF:IF(XC>=0 , XE , 0) ,LINETHICK0,COLOR99FFFF;
  PARTLINE(XC>=1 , XF) ,COLOR99FFFF;
  
工具箱  

【 · 发布:于瑶  2004-10-09 01:57 】    
  0068--系统参数函数
  
  这组函数,应用在取得当前可视主图区内的一些数字信息,如下所示:
  
  1.当前十字光标所在位置,那根K线的序号;
  2.当前可视主图区,最初那根K线的序号;
  3.当前可视主图区,最后那根K线的序号;
  4.当前可视主图区,最高价;
  5.当前可视主图区,最低价。
  
  注:但须调出十字光标后,这组函数才能发生作用。否则回传的值是不确定的。
  
  SYSPARAM(1)
  SYSPARAM(2)
  SYSPARAM(3)
  SYSPARAM(4)
  SYSPARAM(5)
  
  函数:SYSPARAM(1)
  说明: 回传当前 十字光标所在位置那根K线的序号
  
  函数:SYSPARAM(2)
  说明: 回传当前可视主图区 最初那根K线的序号
  
  函数:SYSPARAM(3)
  说明: 回传当前可视主图区 最后那根K线的序号
  
  函数:SYSPARAM(4)
  说明: 回传当前可视主图区 最高价
  
  函数:SYSPARAM(5)
  说明: 回传当前可视主图区 最低价
  
  范例:
  
  将公式建立在:技术指针 ( ●主图叠加 ○主图 )
  
  SS:=SYSPARAM( 1 ) ;
  DD:=SUM( 1 , 0 ) ;
  
  CC:CLOSE * 1.07 , LINETHICK0 , COLORYELLOW ;
  
  PARTLINE( SS>=DD , CC ) , COLORYELLOW ;
  
  注:
  
  DD:SUM( 1 , 0 ) ;
  SS:SYSPARAM( 1 ) ;
  
  上面两者,显然有明显的不同之处。
  
  1.DD是一组变量型时间数列,代表K线的序号。
  
  2.SS是隐含有N组常数型时间数列(N=这支股票的K线总数)。
  
  DD:SUM(1,0)
  
  以数学的二维空间F(X)=Y表示:Y=X
  
  SS:SYSPARAM(1)
  
  以数学的二维空间F(X)=Y表示,其中A属正整数:Y=A
  
  SUM(1,0)=SYSPARAM(1)意指,下面两条线交叉成立的那一点:
  
  Y=X
  
  Y=A
  
  范例:
  
  MA1:=MA(CLOSE,5);
  MA2:=MA(CLOSE,13);
  
  XA:=CROSS(MA1,MA2) ;
  
  XB:IF(XA=1,SUM(1,0),0);{条件成立时回传它的K线序号}
  
工具箱  

【 · 发布:于瑶  2004-10-09 21:32 】    
  0069--概率统计
  
  COUNT,计数。SUM,总数、和。
  
  当数组为逻辑运算判断的结果时,COUNT和SUM的返回值是一样的。一般习惯上,对于逻辑运算信号,用COUNT统计,返回其它数值的,用SUM统计。
  
  当COUNT统计一般数值时,数组大于等于1时,计入;小于1时,不计入。这两个函数,主要用于统计。
  
  用COUNT(CROSS(MA(C,5),MA(C,10)),0);就可以统计出全部的五天均线上穿十天均线的金叉数。
  
  用SUM(CROSS(MA(C,5),MA(C,10)),0);和以上得出的结果应该是一样的。
  
  股市的不随机规律,隐藏在统计概率之中。用这两个函数,可以统计很多概率性的规律。
  
  比如,以两天的收盘价相比,昨天是下跌的,今天的下跌的概率是多少?
  
  A:=C< REF(C,1);
  B:=REF(A,1) AND C>REF(C,1);{昨天下跌,今天上涨}
  D:=REF(A,1) AND C=REF(C,1);{昨天下跌,今天平盘}
  E:=REF(A,1) AND C< REF(C,1);{昨天下跌,今天下跌}
  F:=COUNT(B,0)+COUNT(D,0)+COUNT(E,0);
  上升概率:100*COUNT(B,0)/F;
  下跌概率:100*COUNT(E,0)/F;
  平盘概率:100*COUNT(D,0)/F;
  
  从两市指数看,昨天下跌,今天下跌的概率始终大于50%。那么连跌两天之后,第三天收盘的各种概率是多少?
  
  A:=C< REF(C,1) AND REF(C,1)< REF(C,2);
  B:=REF(A,1) AND C>REF(C,1);{前两天下跌,今天上涨}
  D:=REF(A,1) AND C=REF(C,1);{前两天下跌,今天平盘}
  E:=REF(A,1) AND C< REF(C,1);{前两天下跌,今天下跌}
  F:=COUNT(B,0)+COUNT(D,0)+COUNT(E,0);
  上升概率:100*COUNT(B,0)/F;
  下跌概率:100*COUNT(E,0)/F;
  平盘概率:100*COUNT(D,0)/F;
  
  从指数的输出看,概率更明显了。连跌三天之后呢?
  
  A:=C< REF(C,1) AND REF(C,1)< REF(C,2) AND REF(C,2)< REF(C,3);
  B:=REF(A,1) AND C>REF(C,1);{前三天下跌,今天上涨}
  D:=REF(A,1) AND C=REF(C,1);{前三天下跌,今天平盘}
  E:=REF(A,1) AND C< REF(C,1);{前三天下跌,今天下跌}
  F:=COUNT(B,0)+COUNT(D,0)+COUNT(E,0);
  上升概率:100*COUNT(B,0)/F;
  下跌概率:100*COUNT(E,0)/F;
  平盘概率:100*COUNT(D,0)/F;
  
  规律就更明显了。
  
  不要小看这些数据。虽然没有有些“高手”做出的成功率达百分之九十左右的公式那么夸张,但很有意义的。要知道股市中的随机因素太多,平衡性很强,稍稍的统计偏向,足可作为有用的参考。
  
  这只是简单的例子,用这两个函数,可以做出很多的有用的统计数据。多数的交易系统的"胜率",可以由此统计出来。
  
  统计:
  
  A:=CROSS(C,MA(C,3));
  B:=CROSS(MA(C,3),C);
  D:B*(C-REF(C,BARSLAST(A)));
  月:SUM(D,20);
  季:SUM(D,60);
  半:SUM(D,120);
  年:SUM(D,250);
  总和:SUM(D,0);
工具箱  

【 · 发布:于瑶  2004-10-09 21:48 】    
  0070--五彩K线常用颜色
  黑色 COLORBLACK 蓝色 COLORBLUE
棕色 COLORBROWN 青色 COLORCYAN
灰色 COLORGRAY 绿色 COLORGREEN
晶红 COLORMAGENTA 红色 COLORRED
白色 COLORWHITE 黄色 COLORYELLOW
  
工具箱  

【 · 发布:于瑶  2004-10-09 21:50 】    
  0071--分析家公式设定注意事项
  参数 最多四个参数,每个有最大和最小及缺省值,须有自己名称
注释 用大括号括起来放在被注释语句之后
公式名称 由字母或数字组成,在同类公式中必须唯一,最多九个字符
中间公式 使用":="来定义名字,不能与系统提供的函数同名
Param#1-4 对应于参数1-4,大小写敏感
坐标线位置 最多七个,用分号分隔
组合公式设置 小公式间用分号隔开
绘图参数使用 将其插入到指标公式的后面,用逗号分隔开
区分多条指标线 在指标公式前写上名称并加上一个冒号
指标线名字的使用 可以当函数名用
指标线绘制的极限 可同图显示16条指标线
五彩颜色参数使用 将其插入到指标公式的后面,用逗号分隔开
  
工具箱  

【 · 发布:于瑶  2004-10-09 21:53 】    
  0072--交易系统公式交易类型
  ENTERLONG 多头买入 ENTERSHORT 空头买入
EXITLONG 多头卖出 EXITSHORT 空头卖出
  
工具箱  

【 · 发布:于瑶  2004-10-09 21:56 】    
  0073--可供引用的周期类型
  MIN1 1分钟线 MIN60 60分钟线
MIN5 5分钟线 DAY 日线
MIN15 15分钟线 WEEK 周线
MIN30 30分钟线 MONTH 月线
  
工具箱  

【 · 发布:于瑶  2004-10-09 21:59 】    
  0074--引用表达式
  引用指标公式 公式名称.指标线名称(参数表)
引用交易系统公式 SYSTEM.公式名称.交易类型(参数表)
引用条件选股公式 EXPLORER.公式名称(参数表)
跨周期引用公式 各种类型公式名称#周期类型(参数表)
引用任意股票的数据 股票代码$数据名称
引用扩展数据 EXTDATA(N) 分析家N=1-11 飞狐N=1-13
引用横向统计日线数据(1-N) ESTDATA(N)  
引用类函数第二个变量参数 类函数名称(第一参数,变量名或变量表达式)
  
工具箱  

【 · 发布:于瑶  2004-10-09 22:19 】    
  0075--符号一览表
  符号 名称 举例 符号 名称 举例
+ 加 X + Y && 并且 X>Y && Y>Z
- 减 X - Y || 或者 X>Y || Y>Z
* 乘 X * Y $ 修饰符号 000014$CLOSE
/ 除 X / Y ( 括号 HIGH/(CLOSE+OPEN)
< 小于 X < Y ) 反括号 HIGH/(CLOSE+OPEN)
> 大于 X > Y , 逗号 MA(Close,3)
<= 小于等于 X <= Y : 输出 输出:CLOSE+OPEN
>= 大于等于 X >= Y := 赋值 变量1:=HIGH
= 等于 X = Y " 双引号 "000014$OPEN"
{} 注释符号 {注释部分} . 点号 KDJ.K
// 注释符号 //注释部分 ; 分号 A:=CLOSE;
AND 并且 X>Y AND Y>Z # 变周期符号 TMP1:=CLOSE#WEEK
OR 或者 X>Y OR Y>Z ## 变周期前一 VOL##DAY
<> 非 X <> Y ' 单引号 '大阳线'
  
工具箱  

【 · 发布:于瑶  2004-10-09 22:35 】    
  0076--横向统计
  
  函数:ESTDATA(N)
  描述:取得横向统计日线数据(1-N)
  类别:扩展数据
  参数:N
  
  说明:在[横向统计管理]中定义并计算数据(本函数仅在日线分析周期有效)。
  
  用基本公式做出的主图公式和副图公式,显示在个股或指数中,是纵向的,遍历当时显示的个股或指数中的每根K线。然后指标大小、变化、交叉情况等,都体现在某一个股或指数中。甲股和乙股,哪个KDJ中的K值大?用纵向变量(指标),原来就一点招数都没有。又比如,两市A股中,今天有几只个股的收盘价在10日均线之上,用纵向变量(指标)也没有办法,因为纵向变量(指标)只能在某一个股或指数中才可以比较。而多股间横向的比较和统计,是很有参考价值的。所以,相对于原来的纵向变量(指标),就有了横向变量这一说。
  
  横向指标用在公式中,也是遍历每根K线的,与一般的基本函数的遍历有点不同,因为它的数据来源不同,是对应于每根K线的日子以及哪个日子中对应板块中的个股数和选择条件等。
  
  横向统计涉及全场数据的计算,而且可以增加到数千项之多,运算量惊人,目前无法做到实时刷新(动态显示),只能手工刷新(建议盘后进行)。
  
  横向变量主要用于盘后。要动态刷新,目前没有即时刷新的设置,可能考虑到计算量较大吧。要是不怕麻烦,过几分钟就刷新一下(刷新一次,就相当于重新计算一遍),也可以看到"动态"涨跌值排名。
  
  横向变量在公式中的输出,与K线的日子有绝对的关系,与当时显示的个股或指数没有多大关系,在某个股中的输出和其他任一个股中的输出都一样。
  
  横向变量所用的统计方法,是对所选板块中的个股或指数,进行全盘的统计。最近所加的"最大值"、"最小值"是两个极值,是对排序头尾的取值。而要取横向排序中的第二名、第三名,单用横向变量目前还做不到。但不排除此功能以后会开发出来。
  
  排名名次要用扩展数据!横向变量目前做不到。
  
  如果做横向变量或扩展数据,在当时选择的计算周期如果是日线,则今天刷新,"原本排列"就保存在昨天。横向变量实际上即是横向的,从时间上又是纵向的。
  
  扩展数据是横向的,引用时从时间上又是纵向的。
0077--扩展数据
  
  函数:EXTDATA(N)
  描述:取得日线扩展数据(1-13); 分析家N取1--11
  类别:扩展数据
  参数:N取1--13
  
  说明:在[扩展数据管理]中定义并计算数据(本函数仅在日线分析周期有效)。
  
  有些数据,非常重要,可是随着时间的推移,就再也找不到了。比如说某个股一天之中的总成交次数,又比如说某个股在上个月的1号,涨幅排名是第几?这些信息,要么以后就查不到了,要么在公式中也无法引用。而扩展数据库能解决这些问题。扩展数据库能够随日线保存这些数据,而且是计算好了的结果,所以引用时速度也很快。
  
  扩展数据有两个用处:1、保存计算值。2、保存计算值的排名结果。目前飞狐的扩展数据,可以最多做13个。太多了好象也没有多大意思,因为扩展数据计算历史数据有点慢,而且也较占空间。历史的数据量大,当然慢了。可是计算好之后,以后只要更新当天的,速度还是较快的。计算扩展数据,某个股,一个交易日,一次只能得到一个结果数据,而且所选之指标,也应该是唯一的。
  
  想保存所有分笔成交记录?扩展数据是做不到的。
  
  缺省数据:某一天,或者说个股停盘等原因,没有计算结果,系统就将缺省数据保存到扩展数据库中。
  
  在进行排序时,有两种排序方式,一种为0-N自然排序,一种为1-1000归一化排序,区别在于:自然排序按自然数来排列名次,排名在第几结果就是几,第一名,返回0;第二名,返回1;第N名,返回N-1。而归一化排序时将排序归一化到0-1000之间,第一位为0,最后一位为1000,采用公式"排名*1000/参加排名的股票数"来进行计算。归一化排序的好处是,不随股票数目的增加而对排序结果有较大的影响。
  
  怎么引用扩展数据?EXTDATA(N);N指引用第几组扩展数据,从1到13。比如把分笔成交次数的扩展数据建立在第一组中,引用时,就用EXTDATA(1);这个公式,在某个股中,就输出此股在当天的总成交次数。扩展数据,有横向的性质,特别是用排名时。同时又是纵向的,只要有数据,以前的日子里,也可以返回所得值。而且从理论上说,扩展数据库是可以永远保存的。由于计算量较大,目前扩展数据不支持即时刷新。不过可以手工刷新。
  
工具箱  

【 · 发布:于瑶  2004-10-09 22:43 】    
  0078--峰点公式
  
  为了能找到合适的COND,用于举例子,先介绍一组概念:
  
  高点:在2N+1根K线中,中间这根K线的H,要大于等于左右N根K线的H。在N+1根K线中,有等高点出现,取最先出现的。
  低点:在2N+1根K线中,中间这根K线的L,要小于等于左右N根K线的L。在N+1根K线中,有等低点出现,取最先出现的。
  峰点:高点和低点,合称为峰点。
  
  这个定义,意合于技术分析的老祖宗道氏:"只要平均指数的最高点超过了前期的最高点,它就处于牛市时期;当最低点低于前期的最低点时,它处于熊市时期。"这里我们撇开向上、向下分形和分形峰状点等概念,以免把概念复杂化。
  
  也为了不让公式一来就过于复杂,我们先取N为2来做公式。简介到后面,可以看到,N是可以作为峰点公式的参数进行调整的。
  
  公式名称:FENG2
  公式说明:供引用
  公式内容:
  
  {峰点参数暂定为2}
  A:=REF(H,2);{中间K线的最高价}
  B:=A>=REF(H,4) AND A>=REF(H,3) AND A>=REF(H,1) AND A>=H;{中间K线的最高价大于等于两边共四根K线的最高价}
  D:=BACKSET(B,3);{将当前位置和之前2个周期的数值设为1}
  HD:FILTER(D,2);{找到高点后,过滤掉其后2周期内可能出现的等高点。输出高点}
  A2:=REF(L,2);{中间K线的最低价}
  B2:=A2<=REF(L,4) AND A2<=REF(L,3) AND A2<=REF(L,1) AND A2<=L;{中间K线的最低价小于等于两边共四根K线的最低价}
  D2:=BACKSET(B2,3);{将当前位置和之前2个周期的数值设为1}
  LD:FILTER(D2,2);{找到低点后,过滤掉其后2周期内可能出现的等低点。输出低点}
  {后面有些例子,就从这个公式中引用信号。}
  
  用法: DRAWICON(COND,PRICE,TYPE),当COND条件满足时,在PRICE位置画TYPE号图标。15种图标编码为1-15(1-3为小脸,4-5为上下箭头,6-7为红绿小旗,8-9为三角形,10-12为信号灯,13-15为O、X、四方形)。TYPE为字符串时可显示用户自制BMP图。
  
  示例:DRAWICON(CLOSE>OPEN,LOW,4)表示当收阳时在最低价位置画4号图标。
  
  DRAWICON(C>O, L, 'MyBMP')表示当收阳时在最低价位置画FmlDLL子目录下的自制图标MyBMP.BMP。
  
  1、COND条件,一般是指判断的结果,不是0就是1。如用其它数据,大于等于1的,条件满足;小于1,条件就不满足。
  
  2、TYPE图标,现在已经有12种,用下面的公式,在000829上可以全部显示出来。当TYPE取大于等于12的数时,都显示黄球。
  
  当TYPE取0时,显示的是笑脸(这个公式中没有做进去,自己可以试一下)。
  
  B:="FENG2.HD";
  D:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
  A:=D>REF(D,1);
  DRAWICON(REF(A,1),1.05*H,1);
  DRAWICON(REF(A,2),1.05*H,2);
  DRAWICON(REF(A,3),1.05*H,3);
  DRAWICON(REF(A,4),1.05*H,4);
  DRAWICON(REF(A,5),1.05*H,5);
  DRAWICON(REF(A,6),1.05*H,6);
  DRAWICON(REF(A,7),1.05*H,7);
  DRAWICON(REF(A,8),1.05*H,8);
  DRAWICON(REF(A,9),1.05*H,9);
  DRAWICON(REF(A,10),1.05*H,10);
  DRAWICON(REF(A,11),1.05*H,11);
  DRAWICON(REF(A,12),1.05*H,12);
  DRAWICON(REF(A,13),1.05*H,13);
  DRAWICON(REF(A,14),1.05*H,100);{主图叠加}
  当红球和绿球连续显示时,立体感会强一些。
  DRAWICON(C>=MA(C,30),MA(C,30),10);
  DRAWICON(C< MA(C,30),MA(C,30),11);{主图叠加}
  
  3、PRICE是用于定位图标的位置的。一般用1.01*H,或者0.99*L等。现在可用ALIGN(0-5)指定对齐位置。
  
  用这个公式来试(主图叠加)
  
  B:="FENG2.HD";
  D:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
  A:=D>REF(D,1);
  E:=REF(H,1);
  DRAWICON(A,E,10),ALIGN0;
  DRAWICON(A,E,11),ALIGN1;
  DRAWICON(A,E,12),ALIGN2;
  DRAWICON(A,E,3),ALIGN3;
  DRAWICON(A,E,4),ALIGN4;
  DRAWICON(A,E,5),ALIGN5;
  
  可以初步得出结论:
  
  ALIGN0:信号出现在PRICE的正中;
  ALIGN1:信号出现在PRICE下边(十分靠近);
  ALIGN2:信号出现在PRICE上边(十分靠近);
  ALIGN3:信号出现在主图的中间;
  ALIGN4:信号出现在主图的最上边;
  ALIGN5:信号出现在主图的最下边;
  
  在高低点上作图标,可以使高低点更明确了。
  
  A:="FENG2.LD";
  B:="FENG2.HD";
  DRAWICON(A,L,11),ALIGN1;
  DRAWICON(B,H,10),ALIGN2;{主图叠加}
  
  4、可以自由调用MyBMP.BMP图到显示位置,大大增强了输出的效果。你只要看到好看的图,可以随时抓拍过来,做成BMP文件,放到FmlDLL子目录下,就可以调用了。
  
  A:="FENG2.LD";
  B:="FENG2.HD";
  DRAWICON(A,L,'PIG'),ALIGN1;
  DRAWICON(B,H,'PIG'),ALIGN2;{主图叠加。如果你没有PIG.BMP文件,则不可显示。}
  DRAWICON(1,MA(C,5),'S28');
  DRAWICON(1,MA(C,10),'S31');
  DRAWICON(1,MA(C,20),'S14');
  DRAWICON(1,MA(C,30),'S25');{主图叠加。如果你没有PIG.BMP文件,则不可显示。}
  
  举个例子:
  
  A:="FENG2.LD";
  B:="FENG2.HD";
  DRAWICON(A,L,11),ALIGN1;
  DRAWICON(B,H,10),ALIGN2;
  D:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
  E:=D>REF(D,1);
  F:=BACKSET(E,REF(BARSLAST(B),1)+2);
  G:=F>REF(F,1);
  DRAWLINE(G,H,E,H,1),pointdot,linethick1,coloryellow;{主图叠加}
  
  这根线有些趋势线的意思了。由于趋势线的主观性颇强,只有多设参数才能满足多数人的要求。
  
  DRAWLINE画出的线,应该比手工画出的线精确一些(DRAWLINE画线的灵敏度,要比手工画线低,所以说DRAWLINE画出的线精确,就未必对)。
  
  主要用于画斜线,水平线我们一般可以另想办法。因为在图中显示直线,并非DRAWLINE的"专利"。
  
  比如:
  
  A:="FENG2.LD";
  B:="FENG2.HD";
  D:=BACKSET(ISLASTPERIOD,BARSLAST(A)+1);
  E:=D>REF(D,1);
  F:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
  G:=F>REF(F,1);
  前高:REF(H,BARSLAST(G));
  前低:REF(L,BARSLAST(E));{主图叠加}
  
  说明:在图形上显示数字
  用法: DRAWNUMBER(COND,PRICE,NUMBER,PRECISION),当COND条件满足时,在PRICE位置书写数字NUMBER(可以为常数或数组序列),PRECISION为小数显示位数(取值范围0-3)。可ALIGN0-5定义对齐方式。
  示例:DRAWNUMBER(CLOSE/OPEN>1.08,HIGH,(CLOSE-REF(C,1))/REF(C,1)*100,2)表示当日涨幅大于8%时在最高价位置显示涨幅(相对开盘价的百分比)。
  
  这个函数的特色是,在NUMBER位置可以放变量。
  
  NUMBER,数字。DRAWNUMBER是DRAWTEXT的"兄弟",也可以用ALIGN(0-5)来定义水平位置,方法相同。
  
  A:="FENG2.LD";
  B:="FENG2.HD";
  DRAWICON(A,L,11),ALIGN1;
  DRAWICON(B,H,10),ALIGN2;
  D1:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
  E1:=D1>REF(D1,1);{离目前最近的一个高点}
  D2:=BACKSET(E1,REF(BARSLAST(B),1)+2);
  E2:=D2>REF(D2,1);{倒数第二个高点}
  DRAWTEXT(E1,H*1.02,'高点价:'),COLORGREEN,ALIGN2;
  DRAWNUMBER(E1,H*1.02,H,2),COLORGREEN,ALIGN1;
  DRAWTEXT(E2,H*1.02,'高点价:'),COLORYELLOW,ALIGN2;
  DRAWNUMBER(E2,H*1.02,H,2),COLORYELLOW,ALIGN1;{主图叠加}
  
  A:="FENG2.LD";
  B:="FENG2.HD";
  DRAWICON(A,L,11),ALIGN1;
  DRAWICON(B,H,10),ALIGN2;
  D1:=BACKSET(ISLASTPERIOD,BARSLAST(B)+1);
  E1:=D1>REF(D1,1);{离目前最近的一个高点}
  D2:=BACKSET(E1,REF(BARSLAST(B),1)+2);
  E2:=D2>REF(D2,1);{倒数第二个高点}
  D3:=BACKSET(E2,REF(BARSLAST(B),1)+2);
  E3:=D3>REF(D3,1);{倒数第三个高点}
  DRAWTEXT(E1,H*1.01,'☆TEXT:'),COLORRED,ALIGN0;
  DRAWTEXT(E2,H*1.01,'★TEXT:'),COLORGREEN,ALIGN1;
  DRAWTEXT(E3,H*1.01,'▓TEXT:'),COLORYELLOW,ALIGN2;{主图叠加}
  
  描述:绘制折线段
  类别:绘图
  说明:在图形上绘制折线段
  用法: POLYLINE(COND,PRICE),当COND条件满足时,以PRICE位置为顶点画折线连接。
  示例:POLYLINE(HIGH>=HHV(HIGH,10),HIGH)表示在创10天新高点之间画折线。
  POLY,多个的。
  
  支持POINTDOT、LINETHICK、COLOR、SHIFT这四个描述函数。
  
  A:="FENG2.LD";
  B:="FENG2.HD";
  DRAWICON(A,L,11),ALIGN1;
  DRAWICON(B,H,10),ALIGN2;
  POLYLINE(A,L),POINTDOT,COLORGREEN;
  POLYLINE(B,H),LINETHICK2,COLORMAGENTA;{主图叠加}
  
  参数可调整的峰点公式:
  
  A:=REF(H,N)=HHV(H,2*N+1);{当前位置N天之前的最高价是最近2*N+1根K线中的最高价}
  B:=FILTER(A,N); {当高点附近有等高的K线出现时,会影响后续高点的判断,所以要过滤}
  D:=BACKSET(B,N+1);{将当前位置及前N周期的数值设为1,所以要用N+1}
  HD:=FILTER(D,N); {当高点附近有等高的K线出现,取第一个,过滤掉后面N个周期之内出现的}
  A2:=REF(L,N)=LLV(L,2*N+1);{求低点的过程与求高点的过程同理}
  B2:=FILTER(A2,N);
  D2:=BACKSET(B2,N+1);{参数N:1,3,999}
  LD:=FILTER(D2,N);{主图叠加}
  DRAWICON(HD,H,10),ALIGN2;{在高点附近显示红球}
  DRAWICON(LD,L,11),ALIGN1;{在低点附近显示绿球}
  
  可以说,这个公式用了未来函数BACKSET,但是用在日K线中,盘后是没有未来数据的,因为引用的全是已经发生过的不可变的数据了。
  
  至于即时盘中的未来数据,那是说不到底的事,基本所有的公式,都有即时盘中未来数据。
  
  红球绿球作为峰点标志,在显示K线不多的情况下,还比较清楚。但当K线数较多时,因为球的大小是不变的,所以看起来比较乱。故可用以下公式:
  
  A:=REF(H,N)=HHV(H,2*N+1); B:=FILTER(A,N); D:=BACKSET(B,N+1); HD:=FILTER(D,N);
  A2:=REF(L,N)=LLV(L,2*N+1);B2:=FILTER(A2,N); D2:=BACKSET(B2,N+1);LD:=FILTER(D2,N);
  STICKLINE(REF(HD,1),REF(H,1),REF(H,1),18,0),COLORMAGENTA;
  STICKLINE(REF(LD,1),REF(L,1),REF(L,1),18,0),COLORGREEN;
  
  函数:HHVBARS(X,N)
  描述:上一高点位置
  类别:引用
  参数:X为数组,N为计算周期
  返回:返回数组
  说明:求N周期内X最高值到当前周期数,N=0表示从第一个有效值开始统计
  示例:HHVBARS(HIGH,0)求得历史新高到当前的周期数
  
  HHV、HHVBARS这两个函数一起用,可以找到当前N天中的最高点。
  
  A:=BACKSET(ISLASTPERIOD,HHVBARS(H,N)+1);
  B:=COUNT(A,N)=1;{取得前N个周期内的最高点位置}
  REF(H,BARSLAST(B));
  DRAWICON(B,H,1),ALIGN2;{主图叠加。N:30,1,9999}
  
  函数:LLVBARS(X,N)
  描述:上一低点位置
  类别:引用
  参数: 无
  返回: 无
  说明:求N周期内X最低值到当前周期数,N=0表示从第一个有效值开始统计
  示例:LLVBARS(HIGH,10)求得10日最低点到当前的周期数
  
  当前N天之内的最高点和最低点就一目了然了:
  
  A:=BACKSET(ISLASTPERIOD,HHVBARS(H,N)+1);
  B:=COUNT(A,N)=1;{取得前N个周期内的最高点位置}
  REF(H,BARSLAST(B));
  DRAWICON(B,H,1),ALIGN2;
  A2:=BACKSET(ISLASTPERIOD,LLVBARS(L,N)+1);
  B2:=COUNT(A2,N)=1;{取得前N个周期内的最低点位置}
  REF(L,BARSLAST(B2));
  DRAWICON(B2,L,2),ALIGN1;{主图叠加。N:30,1,9999}
  
  这个公式求前期高低点,在600036等次新股上试调整参数就露马脚了,并不完善。问题出在HHVBARS起算点等原因上。
  
  下面这个公式可以说是完美解决方案:
  
  HH:HHV(H,N),LINETHICK2;
  LL:LLV(L,N),LINETHICK2;{主图叠加,参数N:30,1,9999}
  
  
  当N个周期之内,有两个最高价,即有等高的情况出现,HHVBARS会返回哪个最高价到当前的周期数呢?
  
  用副图公式观察一下,N取10:
  
  HHVBARS(H,N);
  
  我们可以得出结论,返回的是前一个最高价到当前的周期数。同样,当在N个周期之内,有两个等低的最低价出现时,LLVBARS会返回前一个最低价到当前的周期数。
  
工具箱  

【 · 发布:于瑶  2004-10-09 23:19 】    
  0079--窄幅整理
  
  (HHV(C,20)-LLV(C,20)/C<0.08;
  
工具箱  

【 · 发布:于瑶  2004-10-09 23:19 】    
  0080--N天前到M天前之间的最高价
  
  REF(HHV(H,20),40);
  
工具箱  

【 · 发布:于瑶  2004-10-09 23:20 】    
  0081--某时间段最高价
  
  HH:=IF(YEAR=1998 AND MONTH>=8 AND MONTH<=12,H,0);
  HHV(HH,0);{此例求1998年8月1日到1998年12月31日间的最高价}
工具箱  

【 · 发布:于瑶  2004-10-09 23:21 】    
  0082--二十日内是否有过涨停
  
  TT:=C/REF(C,1)>1.095;
  COUNT(TT,20)>0;
  
工具箱  

【 · 发布:于瑶  2004-10-09 23:22 】    
  0083--放量创新高
  
  AA:=MA(V,5);
  BB:=REF(AA,2);
  CC:=HHV(C,30);
  AA/BB>2 AND C=CC;
  
工具箱  

【 · 发布:于瑶  2004-10-09 23:23 】    
  0084--突破长期平台整理
  
  V1:=MA(V,5);
  V2:=V/REF(V1,1);
  PZ1:=MA(C,150);
  PZ2:=HHV(H,150);
  PZ3:=LLV(L,150);
  PZ4:=(PZ2-PZ1)/PZ1;
  PZ5:=(PZ1-PZ3)/PZ1;
  PZ:=REF(PZ4,1)<0.15 AND REF(PZ5,1)<0.15;
  TP1:=HHV(H,150);
  TP:=H=TP1;
  V2>=2 AND PZ AND TP
  
工具箱  

【 · 发布:于瑶  2004-10-09 23:24 】    
  0085--尾盘大单拉升或打压
  
  AA:=TIME>=145500;
  BB:=SUM(V,0)/240;//当天均量
  CC:=SUM(V,10)/10;//10分钟内的成交均量
  DD:=REF(C,10);
  AA AND CC/BB>3 AND C/DD>1.02;
  
工具箱  

【 · 发布:于瑶  2004-10-10 01:19 】    
  0086--MACD柱状体变宽语法
  
  Moving Average Convergence/Divergence , MACD , 移动平均收敛/发散指针
  
  Param(LONG , 26 ,20 100)
  Param(SHORT , 12 , 5 ,40)
  Param(M , 9 , 2 , 60)
  
  DIFF:EMA( CLOSE , SHORT ) - EMA( CLOSE , LONG) ,LINETHICK0,COLOR99FFFF;
  DEA:EMA( DIFF , M ) ,LINETHICK0,COLORFF9966;
  MACD: 2 * ( DIFF - DEA ) ,LINETHICK0,COLOR9966FF;
  
  STICKLINE(MACD>0,0,MACD,6,1) ,COLOR9966FF;
  STICKLINE(MACD<=0,0,MACD,6,1) ,COLORCCFF66;
  
  PARTLINE(C>0,DIFF) ,COLOR99FFFF;
  PARTLINE(C>0,DEA) ,COLORFF9966;
  
  英译:
  
  DIFF=Difference = 差异=差离值
  DEA=Difference Exponential Average= 差异的指数平滑移动平均=差离值平均值
  MACD=Moving Average Convergence/Divergence = 移动平均收敛/发散
  
  利用快速和慢速两条指数平滑移动平均线,计算两者之间的差离值DIFF
  
  再利用差离值DIFF,来计算差离值平均值DEA
  
  本公式MACD柱状,即可明显体现出了DIFF与DEA两者的收敛交会与发散分离的情况,
  用以研判买进或卖出的时机
  
工具箱  

【 · 发布:于瑶  2004-10-10 01:20 】    
  0087--傅立叶变换
  
  用法:FFT(X , N)
  
  傅立叶变换,对数列X进行傅立叶变换,或变换处理后反变换
  
  示例:
  
  当N=0时,对数列X进行傅立叶变换;
  当N=1时,对数列X进行傅立叶变换后,再反变换回来,与原X一致;
  当N>1时,对数列X进行傅立叶变换后,舍去周期小于N的成分后再反变换回来;
  
  傅立叶变换是最常用的积分变换。原理和对数变换等差不多,广泛应用于工程技术领域。可傅立叶变换的算法,涉及高等数学的微积分知识,非三言两语说得清楚。
  
  傅立叶变换的应用方面:把FFT(CLOSE,30),在主图中上移、下移之后,可以构成非常光滑的信道。
  
  AA:FFT(CLOSE,30);
  XX:AA*1.05;
  YY:AA*0.95;
  
工具箱  

【 · 发布:于瑶  2004-10-10 01:21 】    
  0088--周期切换
  
  函数: DATATYPE
  别名: DATAPERIOD,、数据周期类型
  用法:
  DATATYPE
  回传值竹范围为0-11
  分别表示分笔成交、1分钟、5分钟、15分钟、30分钟、60分钟、
  日、周、月、年、多日、多分钟
  
  范例:切换到日线时跑最高价、切换到周线时跑最低价。考虑到什么周期秀什么线的问题
  
  XH:=IF( DATATYPE=6 , 1 , 0 ) ;
  XL:=IF( DATATYPE=7 , 1 , 0 ) ;
  
  AA:=MA(C , XH)/MA(C , XH) ;
  BB:=MA(C , XL)/MA(C , XL) ;
  
  HH:=HIGH ;
  LL:=LOW ;
  
  日线最高价:AA*HH , COLORGREEN ;
  周线最低价:BB*LL , COLORYELLOW ;
  
  范例:切换到指数类STKTYPE=0 跑10均线,切换到个股类STKTYPE=5 跑30均线。
  
  XA:=IF( STKTYPE=0 , 1 , 0 ) ;
  XB:=IF( STKTYPE=5 , 1 , 0 ) ;
  
  AA:=IF( XA=1 , MA(C,10) , 0 ) ;
  BB:=IF( XB=1 , MA(C,30) , 0 ) ;
  
  指针线:AA+BB ;
  
  范例:标记当天分时K线的当天K线序号。过了午夜12点,就又要等早盘开盘后序号数字才会出现
  
  XA:=CURRENTDATE=DATE ;
  XB:=REF(XA , 1)<>XA ;
  
  XC:HHVBARS(XB , 0) + XA ;
  
  应用:13均线当天当下最后数值向后延申,画平台线。
  
  XA:=CURRENTDATE=DATE ;
  XB:=REF(XA , 1)<>XA ;
  
  XC:=HHVBARS(XB , 0) + XA ;
  
  XD:=MA(C,13);
  
  XE:=REFX(XD , 300);
  XF:IF(XC>=0 , XE , 0) ,LINETHICK0,COLOR99FFFF;
  PARTLINE(XC>=1 , XF) ,COLOR99FFFF;
  
工具箱  

【 · 发布:于瑶  2004-10-10 01:21 】    
  0089--公历农历
  
  范例:公历日期
  
  YY:=YEAR*10000;
  MM:=MONTH*100;
  DD:=DAY ;
  
  公历日期:YY+MM+DD ,LINETHICK0;
  
  范例:农历日期
  
  LY:=LYEAR*10000;
  LM:=LMONTH*100;
  LD:=LDAY;
  
  农历日期:LY+LM+LD ,LINETHICK0;
  
  范例:两个日期相差天数→横坐标切换→自然日坐标和交易日坐标效果不一样
  
  两日期相差天数A: DATEDIFF(1020929,1021003),LINETHICK0;
  两日期相差天数B: DATEDIFF(LSOLARTERMDATE(1), DATE),LINETHICK0;
  
  范例:9点:30分:59秒以前的分时K线,指定一个值=1给它,其它为=0
  
  N:=30;
  XA:IF((HOUR=8) OR (HOUR=9 AND MINUTE>=0 AND MINUTE<=N) , 1 , 0 ) , STICK ;
  
  上面和下面的语法,其意义相同:
  
  范例:9点:30分:59秒 以前的分时K线 ,指定一个值=1给它,其它为=0
  
  N:=30;
  XA:(HOUR=8) OR (HOUR=9 AND MINUTE>=0 AND MINUTE<=N) , STICK ;
  
  范例:开盘第一根分时K线,指定一个值=1给它,其它为0
  
  XA:REF(DATE,1)<>DATE , STICK;
  
  范例:每天的分时K线,指定它的当天K线序号给它
  
  XA:=REF(DATE,1)<>DATE , STICK;
  
  XB:BARSLAST(XA=1) + 1 ,STICK;