返回列表 回复 发帖
MV2009最新版本下载

编写指标公式技巧全集

编写指标公式技巧全集
  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线的收盘价变来变去,指针线图当然随之而起舞。
  
  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 ;
  

  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;
  

  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线序号}
ヽoo牽ωǒ啲掱ツ
返回列表