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

编写指标公式技巧全集

编写指标公式技巧全集
作者     来源     发布时间 2011-06-30    浏览次数 1549    字体     
  0095--条件成立当日低点向后划水平线直到水平线跌破。
  
  条件A,例如CROSS( K , 80 ),
  
  在 条件A 成立的当天取当根K棒的“最低价X”作为“水平直线”的起点,然后一直随着未来的K棒自动向右延伸,“直到”有一天的“收盘价小于”当初条件成立时的那个“最低价X”时,这一条“水平直线”便到了终点。
  
  将下面公式建立在:技术指针( ○主图 ●主图叠加 )
  公式名称:KKK29
  
  参数PARAM( N,9,1,100 )
  参数PARAM( M1,3,2,40 )
  参数PARAM( M2,3,2,40 )
  
  RSV:=( CLOSE-LLV(LOW,N) ) / ( HHV(HIGH,N)-LLV(LOW,N) ) * 100 ;
  K:=SMA( RSV , M1 , 1 ) , COLORRED ;
  D:=SMA( K , M2 , 1 ) , COLORYELLOW ;
  
  AA:=CROSS( K , 80 ) ;
  
  BB:=BARSLAST( AA=1 ) ;
  DD:=REF( LOW , BB ) ;
  
  EE:=CROSS( DD , CLOSE ) ;
  
  FF:=SUM( EE , BB ) ;
  GG:=( REF( FF , 1 )=0 AND FF=1 ) ;
  
  HH:=( REF(DD,1)=DD ) ;
  PARTLINE( HH=1 , DD ) ;
  
  DRAWLINE( AA=1 , DD , GG=1 , DD , 0 ) , COLORC080FF ;
  

  0096--分析周期切换→均线参数自动切换(1)
  
  日线 MA5,MA10,MA20,MA30,MA72
  周线 MA6,MA12,MA24,MA72
  其它周期参数,自行类推。
  
  将公式建立在:技术指针( ○主图 ●主图叠加 )
  公式名称:KKK25.2 (完成品)
  
  XA:=IF( DATAPERIOD=6 , 5 , 0 ) ;
  XB:=IF( DATAPERIOD=6 , 10 , 0 ) ;
  XC:=IF( DATAPERIOD=6 , 20 , 0 ) ;
  XD:=IF( DATAPERIOD=6 , 30 , 0 ) ;
  XE:=IF( DATAPERIOD=6 , 72 , 0 ) ;
  
  TT:=SUM( 1 , 0 ) ;
  
  A1:=ISLASTBAR ;
  A2:=BACKSET( A1=1 , TT-4 ) ;
  A3:=BARSLAST( A2=1 ) ;
  
  X1:=A3 + 1 ;
  MA5:MA( C , XA ) * X1 ;
  
  B1:=ISLASTBAR ;
  B2:=BACKSET( B1=1 , TT-9 ) ;
  B3:=BARSLAST( B2=1 ) ;
  
  X2:=B3 + 1 ;
  MA10:MA( C , XB ) * X2 ;
  
  C1:=ISLASTBAR ;
  C2:=BACKSET( C1=1 , TT-19 ) ;
  C3:=BARSLAST( C2=1 ) ;
  
  X3:=C3 + 1 ;
  MA20:MA( C , XC ) * X3 ;
  
  D1:=ISLASTBAR ;
  D2:=BACKSET( D1=1 , TT-29 ) ;
  D3:=BARSLAST( D2=1 ) ;
  
  X4:=D3 + 1 ;
  MA30:MA( C , XD ) * X4 ;
  
  E1:=ISLASTBAR ;
  E2:=BACKSET( E1=1 , TT-71 ) ;
  E3:=BARSLAST( E2=1 ) ;
  
  X5:=E3 + 1 ;
  MA72:MA( C , XE ) * X5 ;
  
  YA:=IF( DATAPERIOD=7 , 6 , 0 ) ;
  YB:=IF( DATAPERIOD=7 , 12 , 0 ) ;
  YC:=IF( DATAPERIOD=7 , 24 , 0 ) ;
  YD:=IF( DATAPERIOD=7 , 72 , 0 ) ;
  
  A11:=ISLASTBAR ;
  A22:=BACKSET( A11=1 , TT-5 ) ;
  
  A33:=BARSLAST( A22=1 ) ;
  
  Y1:=A33 + 1 ;
  MB6:MA( C , YA ) * Y1 ;
  
  B11:=ISLASTBAR ;
  B22:=BACKSET( B11=1 , TT-11 ) ;
  
  B33:=BARSLAST( B22=1 ) ;
  
  Y2:=B33 + 1 ;
  MB12:MA( C , YB ) * Y2 ;
  
  C11:=ISLASTBAR ;
  C22:=BACKSET( C11=1 , TT-23 ) ;
  
  C33:=BARSLAST( C22=1 ) ;
  
  Y3:=C33 + 1 ;
  MB24:MA( C , YC ) * Y3 ;
  
  D11:=ISLASTBAR ;
  D22:=BACKSET( D11=1 , TT-71 ) ;
  
  D33:=BARSLAST( D22=1 ) ;
  
  Y4:=D33 + 1 ;
  MB72:MA( C , YD ) * Y4 ;
  
  说明:   
  只显示后面15(预设)天的线图(不使用VBS):
  
  将下列公式建立在:技术指针 ( ●主图 ○主图叠加 )
  公式名称:KKK17.1   
  参数PARAM( N、15、1、300 )   
  AA:=ISLASTBAR ;   
  BB:=BACKSET( AA=1 , N ) ;   
  Y:=BARSLAST( BB=1 ) ;   
  X:=Y + 1 ;   
  OO:OPEN * X ;   
  MM:MA( CLOSE , 5 ) * X ;
  
  将公式建立在:技术指针( ○主图 ●主图叠加 )
  公式名称:KKK25 (半成品)   
  XA:=IF( DATAPERIOD=6 , 5 , 0 ) ;
  XB:=IF( DATAPERIOD=6 , 10 , 0 ) ;
  XC:=IF( DATAPERIOD=6 , 20 , 0 ) ;
  XD:=IF( DATAPERIOD=6 , 30 , 0 ) ;
  XE:=IF( DATAPERIOD=6 , 72 , 0 ) ;  
 
  MA5:MA( C , XA ) ;
  MA10:MA( C , XB ) ;
  MA20:MA( C , XC ) ;
  MA30:MA( C , XD ) ;
  MA72:MA( C , XE ) ;  
 
  YA:=IF( DATAPERIOD=7 , 6 , 0 ) ;
  YB:=IF( DATAPERIOD=7 , 12 , 0 ) ;
  YC:=IF( DATAPERIOD=7 , 24 , 0 ) ;
  YD:=IF( DATAPERIOD=7 , 72 , 0 ) ;
  
  MB6:MA( C , YA ) ;
  MB12:MA( C , YB ) ;
  MB24:MA( C , YC ) ;
  MB72:MA( C , YD ) ;
  
  注:  
  当前分析周期类型: DATAPERIOD ;   
  DATAPERIOD 函数 → 回传值的范围介于 0 -- 10 之间 。分别代表 当前分析周期类型。   
  0 → 分笔成交
  1 → 1 分钟线
  2 → 5 分钟线
  3 → 15分钟线
  4 → 30分钟线
  5 → 60分钟线
  6 → 日线
  7 → 周线
  8 → 月线
  9 → 年线
  10 → 多日线
  
  小技巧:
  
  在图形分析窗口可用 键盘精灵 切换分析周期。
  

  0097--分析周期切换→均线参数自动切换(2)
  
  日线 MA5,MA10,MA20,MA30,MA72
  周线 MA6,MA12,MA24,MA72
  其它周期参数,自行类推。
  
  将公式建立在:技术指针( ○主图 ●主图叠加 )
  公式名称:KKK25.5 (完成品)
  
  XA:=( DATAPERIOD=6 )*5 ;
  XB:=( DATAPERIOD=6 )*10 ;
  XC:=( DATAPERIOD=6 )*20 ;
  XD:=( DATAPERIOD=6 )*30 ;
  XE:=( DATAPERIOD=6 )*72 ; {常数型 时间数列 ,将之代入 MA函数 会正确}
  
  MA5:MA( C , XA ) ;
  MA10:MA( C , XB ) ;
  MA20:MA( C , XC ) ;
  MA30:MA( C , XD ) ;
  MA72:MA( C , XE ) ;
  
  YA:=( DATAPERIOD=7 )*6 ;
  YB:=( DATAPERIOD=7 )*12 ;
  YC:=( DATAPERIOD=7 )*24 ;
  YD:=( DATAPERIOD=7 )*72 ;
  
  MB6:MA( C , YA ) ;
  MB12:MA( C , YB ) ;
  MB24:MA( C , YC ) ;
  MB72:MA( C , YD ) ;
  
  将公式建立在:技术指针( ○主图 ●主图叠加 )
  公式名称:KKK25 (半成品)
  
  XA:=IF( DATAPERIOD=6 , 5 , 0 ) ;
  XB:=IF( DATAPERIOD=6 , 10 , 0 ) ;
  XC:=IF( DATAPERIOD=6 , 20 , 0 ) ;
  XD:=IF( DATAPERIOD=6 , 30 , 0 ) ;
  XE:=IF( DATAPERIOD=6 , 72 , 0 ) ;
  
  {有点变量型时间数列的味道,因为IF函数在做怪,将之代入MA函数会失真}
  
  MA5:MA( C , XA ) ;
  MA10:MA( C , XB ) ;
  MA20:MA( C , XC ) ;
  MA30:MA( C , XD ) ;
  MA72:MA( C , XE ) ;
  
  YA:=IF( DATAPERIOD=7 , 6 , 0 ) ;
  YB:=IF( DATAPERIOD=7 , 12 , 0 ) ;
  YC:=IF( DATAPERIOD=7 , 24 , 0 ) ;
  YD:=IF( DATAPERIOD=7 , 72 , 0 ) ;
  
  MB6:MA( C , YA ) ;
  MB12:MA( C , YB ) ;
  MB24:MA( C , YC ) ;
  MB72:MA( C , YD ) ;
  
  注:
  
  当前分析周期类型: DATAPERIOD ;   
  PP DATAPERIOD=6 ) ; { PP为常数型时间数列 }
  

  0098--调用某某公式内的时间数列线  
  公式名称:BB   
  SS:=HIGH< REF( HIGH , 1 ) ; {不输出的表达式,如果被引用还是会变成不输出的表达式}   
  RR:REF( HIGH , 6 ) ; {输出的表达式,如果被引用还是会变成输出的表达式}
  
  公式名称: BBQ   
  TT:"BB.SS" ; {不输出的表达式}   
  PP:"BB.RR" ; {输出的表达式}
  
  1. 调用公式BB内的SS时间数列。调用公式BB内的RR时间数列。
  2. 当SS线内存有预设参数时,例如有两个参数,可视情况写成PP:"BB.SS"(N,M) 。
  
  3. 例如 K:="KD.K"( 10 , 4 , 0 ) ; → 调用公式 KD 内的 K 时间数列 。
  3. 例如 D:="KD.D"( 10 , 4 , 4 ) ; → 调用公式 KD 内的 D 时间数列 。
  
  4. 例如 K:="KD.K" ; → 使用公式 KD 预设的参数 ,( 9 , 3 , 0 )。
  4. 例如 K:="KD.D" ; → 使用公式 KD 预设的参数 ,( 9 , 3 , 3 )。
  
  公式名称:KD
  
  参数PARAM( N,9,1,100 )
  参数PARAM( M1,3,2,40 )
  参数PARAM( M2,3,2,40 )
  
  RSV:=( CLOSE-LLV( LOW , N ) ) / ( HHV( HIGH , N )-LLV( LOW , N ) )*100 ;
  K:SMA( RSV , M1 , 1 ) ; {K数列内包含了两个参数因子:N,M1}
  D:SMA( K , M2 , 1 ) ; {D数列内包含了三个参数因子:N,M1,M2}
  
  (1) 多头: 周线9K>9D时选出日线9K>9D的股票
  (2) 空头: 周线9K<9D时选出日线9K<9D的股票
  
  公式A. 先建立即将被引用的表达式
  建立一个专门被用来引用(QUOTE)的公式区。
  
  将公式建立在:技术指针( ●主图 ○主图叠加 )
  公式名称:KDD
  
  参数PARAM( N,9,1,100 )
  参数PARAM( M1,3,2,40 )
  参数PARAM( M2,3,2,40 )
  
  RSV:=( CLOSE-LLV(LOW,N) ) / ( HHV(HIGH,N)-LLV(LOW,N) ) * 100 ;
  K:SMA( RSV , M1 , 1 ) , COLORRED ;
  D:SMA( K , M2 , 1 ) , COLORYELLOW ;
  
  公式B.
  
  将公式建立在:技术指针( ●主图 ○主图叠加 )
  公式名称:KDD1
  
  K:"KDD.K" ;
  D:"KDD.D" ;
  
  WK:"KDD.K#WEEK" ;
  WD:"KDD.D#WEEK" ;
  
  公式B.
  
  将公式建立在:条件选股
  公式名称:KDD2(多头)
  
  K:="KDD.K" ;
  D:="KDD.D" ;
  
  WK:="KDD.K#WEEK" ;
  WD:="KDD.D#WEEK" ;
  
  K>D AND WK>WD
  
  公式C.
  
  将公式建立在:条件选股
  公式名称:KDD3(空头)
  
  K:="KDD.K" ;
  D:="KDD.D" ;
  
  WK:="KDD.K#WEEK" ;
  WD:="KDD.D#WEEK" ;
  
  K< D AND WK< WD
  

  0099--三角函数AND角度线  
  ∠A 的对边长度 = A   
  ∠B 的对边长度 = B   
  ∠C 的对边长度 = C → 斜边   
  ù=3.14159   
  1 度 = ( ù / 180 ) 弧度   
  ∠B = 22.5 度 = ( 1 / 8 ) * ù 弧度
  ∠B = 45 度 = ( 1 / 4 ) * ù 弧度   
  SIN( B ) = B / C   
  COS( B ) = A / C   
  TAN( B ) = B / A → B = A * TAN( B )
  
  将公式建立在:技术指针( ○主图 ●主图叠加 )
  公式名称:KKK30   
  AA:=SUM( 1 , 0 ) - 1 ;   
  BB22: AA * TAN( ( 1 / 8 ) * 3.14159 ) ;   
  BB45: AA * TAN( ( 1 / 4 ) * 3.14159 ) ;
  
  将公式建立在:技术指针( ○主图 ●主图叠加 )
  公式名称:KKK30.1   
  参数PARAM( N、45、0、80 )→预设为45度。   
  AA:=SUM( 1 , 0 ) - 1 ;   
  BB: AA* TAN( N * ( 3.14159 / 180 ) ) ;
  

  0100--个股和大盘联动K线  
  渗入“总报酬率”的观念,就可画出个股和大盘联动K线。   
  公式名称:KKK4
  将公式建立在:技术指针 ( ○主图 ●主图叠加 )
  
  参数PARAM( N,30,1,300 )
  参数PARAM( M,1,0,1 )   
  AA:=SUM( 1 , 0 ) ;   
  BB:=IF( AA=1 , 1 , 0 ) ;   
  TT:=ISLASTBAR ;   
  DD:=BACKSET( TT=1 , N + 1 ) ;   
  EE:=BACKSET( TT=1 , N ) , LINETHICK0 ;   
  FF:=IF( DD>EE , 1 , 0 ) ;   
  GG:=IF( M=1 , FF , BB ) ;   
  PP:=BARSLAST( GG=1 ) , LINETHICK0; ;   
  X:=REF( INDEXC , PP ) ;   
  Y:=REF( CLOSE , PP ) ;   
  OO INDEXO / X ) * Y , LINETHICK0 ;   
  HH INDEXH / X ) * Y , LINETHICK0 ;   
  LL INDEXL / X ) * Y , LINETHICK0 ;   
  CC INDEXC / X ) * Y , LINETHICK0 ;   
  CC% INDEXC / X ) - 1 , LINETHICK0 ; { 基准日至今,大盘总报酬率 }   
  DC% CLOSE / Y ) - 1 , LINETHICK0 ; { 基准日至今,个股总报酬率 }   
  STICKLINE( CC>OO , HH , LL , 0.1 , 0 ) , COLORRED ;   
  STICKLINE( CC>OO , CC , OO , 7 , 1 ) , COLORRED ;   
  STICKLINE( CC<=OO , HH , LL , 0.1 , 0 ) , COLORCYAN ;   
  STICKLINE( CC<=OO , CC , OO , 7 , 0 ) , COLORCYAN ;
  
  说明:
  
  1. 从后面算来(第N+1日) 为基准日。例如,N=10;   
  2. 求算从后面算来(N日)→个股和大盘指数的联动K线:   
  (每日大盘开盘指数/基准日当天的大盘收盘指数)*基准日当天的收盘价   
  (每日大盘最高盘指数/基准日当天的大盘收盘指数)*基准日当天的收盘价   
  (每日大盘最低盘指数/基准日当天的大盘收盘指数)*基准日当天的收盘价   
  (每日大盘收盘指数/基准日当天的大盘收盘指数)*基准日当天的收盘价
  
  3. 公式的用意是:
  
  以基准日为基准至今:大盘总报酬率多少,个股的总报酬率就多少。联动在一起。
ヽoo牽ωǒ啲掱ツ
返回列表