- 帖子
- 117850
- 精华
- 51
- 积分
- 42319
- 智慧
- 20273
- V 币
- 98161
- 贡献
- 0
- 金豆
- 59709
- MV号码
- 2716677
- 注册时间
- 2008-8-7
- 最后登录
- 2011-7-30
|
楼主
发表于 2011-6-30 16:17
| 只看该作者
编写指标公式技巧全集 | | 作者 来源 发布时间 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. 公式的用意是:
以基准日为基准至今:大盘总报酬率多少,个股的总报酬率就多少。联动在一起。 |
|
|
|