174 KiB
技术分析
内容
- 选股函数
- K线分析
- 成交量指标
- 大势指标
- 动量指标
- 均线指标
- 离散指标
- 能量指标
- 技术指标选股
- 趋势指标
- 天软指标
- 主图指标
- Alpha101_Test
选股函数
内容
- 走势形态选股
- 技术指标选股
- 形态特征选股
走势形态选股
####### 内容
- FundCommision
- DownDayPercent
- Divergence
- IsJdfl
- IsJdsl
- DownDayPercent2
- DownDayPercent3
- DownDayPercent4
- UpDayPercent
- UpDayPercent2
- UpDayPercent3
- UpDayPercent4
- IsHighOfHist
- IsLowOfHist
- IsHighOfNDay
- IsLowOfNDay
- IsHighVolOfHist
- IsLowVolOfHist
- IsHighVolOfNDay
- IsLowVolOfNDay
- XDZF
- MiniDifference
####### FundCommision
返回:
//返回封闭基金的交易佣金
SetSysParam(pn_stock(),'SH500003');
return FundCommision(20081231);//7326997
####### DownDayPercent
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
N:=60;
v:= DownDayPercent(N);
RestoreSystemParameters(oV);
return v;
结果:55
####### Divergence
范例
//单只股票日线DIF(顶背离)
//使用单个股票在指定截止日endt最近N个交易日的日线最高价及平滑异同平均DIF线,计算在指定的截止日endt是否存在顶背离
oV:=BackUpSystemParameters();
Endt:=20140227T;
DayNum:=60;
setsysparam(pn_stock(),'SZ300016');
setsysparam(pn_date(),endt);
Setsysparam(pn_cycle(),cy_day());
Setsysparam(pn_rate(),1);
Setsysparam(pn_rateday(),endt);
Data:=nday(DayNum,"日期",datetostr(sp_time()),"价格",high(),
"指标",MACD_dif_v(12,26,9));
TR:=Divergence(Data,0,0,0,0,0);
RestoreSystemParameters(oV);
return TR;
//结果:
####### IsJdfl
算法
(1)v1=成交量的N日累计之和 / 最新流通股本;
(2)判断v1是否大于M/100。范例
//计算白云机场截止2011年9月13日的阶段放量。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
N:=9;
M:=25;
v:= IsJdfl(N,M);
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsJdsl
算法
(1)v1=N日成交量的累计之和 / 最新流通股本;
(2)判断v1是否小于M/100。范例
//计算白云机场截止2011年9月13日的阶段缩量。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
N:=9;
M:=25;
v:=IsJdsl(N,M);
RestoreSystemParameters(oV);
return v;
//结果:1
####### DownDayPercent2
算法
(1)M=N日内收盘价<开盘价的天数;
(2)N日阴线比例(%) =M/N*100。范例
//计算白云机场截止2011年9月13日的60日阴线比例(%)。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=60;
v:=DownDayPercent2(N);
RestoreSystemParameters(oV);
return v;
//结果:51.67
####### DownDayPercent3
范例
//计算白云机场截止2011年9月13日是否连续N日收阴线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=60;
v:=DownDayPercent3(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### DownDayPercent4
范例
//计算白云机场截止2011年9月13日是否连跌N日。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=60;
v:=DownDayPercent4(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### UpDayPercent
算法
(1)M=N日内收盘价>=昨收盘价的天数;
(2)N日上涨比例(%) =M/N*100。范例
//计算白云机场截止2011年9月13日的60日上涨比例(%)。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=60;
v:=UpDayPercent(N);
RestoreSystemParameters(oV);
return v;
//结果:45
####### UpDayPercent2
算法
(1)M=N日内收盘价>=开盘价的天数;
(2)N日上涨比例(%) =M/N*100。范例
//计算白云机场截止2011年9月13日的60日阳线比例(%)。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=60;
v:=UpDayPercent2(N);
RestoreSystemParameters(oV);
return v;
//结果:48.33
####### UpDayPercent3
范例
//计算白云机场截止2011年9月13日是否连续N日收阳线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=60;
v:=UpDayPercent3(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### UpDayPercent4
范例
//计算白云机场截止2011年9月13日是否连涨N日。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=60;
v:=UpDayPercent4(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsHighOfHist
算法
vH=上市日开始,截止昨日的最高的最高价;
判断今日最高价是否大于等于vH。范例
//计算白云机场截止2011年9月13日是否创历史新高。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
v:=IsHighOfHist();
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsLowOfHist
算法
(1)vL=上市日开始,截止昨日的最低的最低价;
(2)判断今日最低是否小于等于vL。范例
//计算白云机场截止2011年9月13日是否创历史新低。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
v:=IsLowOfHist();
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsHighOfNDay
算法
(1)vH=截止昨日,N日最高的最高价;
(2)判断今日最高价是否大于等于vH。范例
//计算白云机场截止2011年9月13日是否创N日新高。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
N:=10;
v:=IsHighOfNDay(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsLowOfNDay
算法
(1)vL=截止昨日,N日最低的最低价;
(2)判断今日最低价是否小于等于vL。范例
//计算白云机场截止2011年9月13日是否创N日新低。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
N:=10;
v:=IsLowOfNDay(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsHighVolOfHist
算法
(1)v=(成交量/上市日到现在的最高的成交量-1)*100;
(2)判断v的绝对值是否小于等于0.5。范例
//计算白云机场截止2011年9月13日是否创历史天量。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
v:=IsHighVolOfHist();
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsLowVolOfHist
算法
(1)v=(成交量/上市日到现在的最低的成交量-1)*100;
(2)判断v的绝对值是否小于等于0.5。范例
//计算白云机场截止2011年9月13日是否创历史地量。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
v:=IsLowVolOfHist();
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsHighVolOfNDay
算法
(1)v=(成交量/ N日最高的成交量-1)*100;
(2)判断v的绝对值是否小于等于0.5。范例
//计算白云机场截止2011年9月13日是否创30日天量。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
N:=30;
v:=IsHighVolOfNDay(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsLowVolOfNDay
算法
(1)v=(成交量/N日最低的成交量-1)*100;
(2)判断v的绝对值是否小于等于0.5。范例
//计算白云机场截止2011年9月13日是否创30日地量。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
N:=30;
v:=IsLowVolOfNDay(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### XDZF
算法
(1)v1=个股的N日涨幅(%);
(2)v2=上证指数的N日涨幅(%);
(3)v=v1 - v2。范例
//计算白云机场截止2011年9月13日的10日相对强弱。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
Setsysparam(pn_cycle(),cy_day());
N:=10;
v:=XDZF(N);
RestoreSystemParameters(oV);
return v;
//结果:5.9
####### MiniDifference
范例
v:=MiniDifference();
return v;
//结果:0.5
技术指标选股
####### 内容
- SsByMA
- BsByMA
- SsByKDJ
- BsByKDJ
- SsByKD
- BsByKD
- SsByWR
- BsByWR
- SsByMACD
- BsByMACD
- SsByBias
- BsByBias
- SsByBoll
- BsByBoll
- SsByMTM
- BsByMTM
- SSByRSI
- BsByRSI
- RSIFZ
####### SsByMA
范例
//计算白云机场截止2011年9月13日的MA卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=10;
N2:=20;
v:= SsByMA(N1,N2);
RestoreSystemParameters(oV);
return v;
//结果:0
####### BsByMA
范例
//计算白云机场截止2011年9月13日的MA买入条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=10;
N2:=20;
v:= BsByMA(N1,N2);
RestoreSystemParameters(oV);
return v;
//结果:1
####### SsByKDJ
算法
(1)X = 收盘价-N日最低的最低价;
(2)Y = N日最高的最高价-N日最低的最低价;
(3)若Y非0,则A =X/Y*100;若Y为0,则A =100;
(4)K =A的M1日平滑移动平均;
(5)D =K的M2日平滑移动平均;
(6)J =3K-2D。范例
//计算白云机场截止2011年9月13日的KDJ卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=9;
M1:=3;
M2:=3;
v:=SsByKDJ(N,M1,M2);
RestoreSystemParameters(oV);
return v;
//结果:0
####### BsByKDJ
算法
(1)X = 收盘价-N日最低的最低价;
(2)Y = N日最高的最高价-N日最低的最低价;
(3)若Y非0,则A =X/Y*100;若Y为0,则A =100;
(4)K =A的M1日平滑移动平均;
(5)D =K的M2日平滑移动平均;
(6)J =3K-2D。范例
//计算白云机场截止2011年9月13日的KDJ买入条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=9;
M1:=3;
M2:=3;
v:=BsByKDJ(N,M1,M2);
RestoreSystemParameters(oV);
return v;
//结果:0
####### SsByKD
算法
(1)X = 收盘价-N日最低的最低价;
(2)Y = N日最高的最高价-N日最低的最低价;
(3)若Y非0,则A =X/Y*100;若Y为0,则A =100;
(4)K =A的M1日平滑移动平均;
(5)D =K的M2日平滑移动平均。范例
//计算白云机场截止2011年9月13日的KD卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=9;
M1:=3;
M2:=3;
v:=SsByKD(N,M1,M2);
RestoreSystemParameters(oV);
return v;
//结果:0
####### BsByKD
算法
(1)X = 收盘价-N日最低的最低价;
(2)Y = N日最高的最高价-N日最低的最低价;
(3)若Y非0,则A =X/Y*100;若Y为0,则A =100;
(4)K =A的M1日平滑移动平均;
(5)D =K的M2日平滑移动平均。范例
//计算白云机场截止2011年9月13日的KD买入条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=9;
M1:=3;
M2:=3;
v:=BsByKD(N,M1,M2);
RestoreSystemParameters(oV);
return v;
//结果:0
####### SsByWR
算法
WR = (N日最高的最高价-收盘价)/(最高的最高价-最低的最低价)*100。范例
//计算白云机场截止2011年9月13日的WR卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=6;
v:=20;
a:=SsByWR(N,v);
RestoreSystemParameters(oV);
return a;
//结果:0
####### BsByWR
算法
WR = (N日最高的最高价-收盘价)/(最高的最高价-最低的最低价)*100。范例
//计算白云机场截止2011年9月13日的WR买入条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=6;
v:=20;
a:=BsByWR(N,v);
RestoreSystemParameters(oV);
return a;
//结果:0
####### SsByMACD
算法
(1)DIF =收盘价的Short日移动平均 - 收盘价的Long日移动平均;
(2)DEA =DIF的M日移动平均。
(3)type=3,判断DIF是否下穿(即跌破)DEA;
(4)type=5,判断DIF是否下穿(即跌破)DEA且DEA>=0;
(5)type=7,判断DIF是否下穿(即跌破)DEA且DEA<=0。范例
//计算白云机场截止2011年9月13日的MACD卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
Short:=12;
Long:=26;
M:=9;
Type:=3;
v:= SsByMACD(Short,Long,M,type);
RestoreSystemParameters(oV);
return v;
//结果:0
####### BsByMACD
算法
(1)DIF =收盘价的Short日移动平均 -收盘价的 Long日移动平均;
(2)DEA =DIF的M日移动平均。
(3)type=2,判断DIF是否下穿(即跌破)DEA;
(4)type=4,判断DIF是否下穿(即跌破)DEA且DEA>=0;
(5)type=6,判断DIF是否下穿(即跌破)DEA且DEA<=0。范例
//计算白云机场截止2011年9月13日的MACD卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
Short:=12;
Long:=26;
M:=9;
Type:=2;
v:= SsByMACD(Short,Long,M,type);
RestoreSystemParameters(oV);
return v;
//结果:0
####### SsByBias
算法
BIAS =(收盘价-N日的收盘简单平均)/N日的收盘简单平均*100。范例
//计算白云机场截止2011年9月13日的BIAS卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=6;
v:=12;
a:=SsByBias(N,v);
RestoreSystemParameters(oV);
return a;
//结果:0
####### BsByBias
算法
BIAS =(收盘价-N日的收盘简单平均)/N日的收盘简单平均*100。范例
//计算白云机场截止2011年9月13日的BIAS卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=6;
v:=12;
a:=BsByBias(N,v);
RestoreSystemParameters(oV);
return a;
//结果:1
####### SsByBoll
算法
(1)Z1=收盘价的N日简单平均;
(2)Z2=Z1+2*收盘价的N日标准差。范例
//计算白云机场截止2011年9月13日的BOLL卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=9;
v:=SsByBoll(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### BsByBoll
算法
(1)Z1=收盘价的N日简单平均;
(2)Z2=Z1+2*收盘价的N日标准差;
(3)Z3=Z1-2*收盘价的N日标准差。范例
//计算白云机场截止2011年9月13日的BOLL买入条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=9;
v:=BsByBoll(N);
RestoreSystemParameters(oV);
return v;
//结果:0
####### SsByMTM
算法
(1)MTM =收盘价-N日前的收盘价;
(2)MAMTM= MTMM日的简单平均。范例
//计算白云机场截止2011年9月13日的MTM卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=12;
M:=6;
v:=SsByMTM(N,M);
RestoreSystemParameters(oV);
return v;
//结果:0
####### BsByMTM
算法
(1)MTM =收盘价-N日前的收盘价;
(2)MAMTM= MTM的M日简单平均。范例
//计算白云机场截止2011年9月13日的MTM买入条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=12;
M:=6;
v:=BsByMTM(N,M);
RestoreSystemParameters(oV);
return v;
//结果:0
####### SSByRSI
算法
(1)Ex =收盘价-昨收盘价;
(2)若Ex>=0,则P=Ex;否则P=0;
(3)若Ex<0,则Q=-Ex,否则Q=0;
(4)z1=P的N日简单平均;
(5)z2=Q的N日简单平均;
(6)z=z1/(z1+z2)*100。范例
//计算白云机场截止2011年9月13日的RSI卖出条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=6;
v:=20;
a:=SsByRSI(N);
RestoreSystemParameters(oV);
return a;
//结果:0
####### BsByRSI
算法
(1)Ex =收盘价-昨收盘价;
(2)若Ex>=0,则P=Ex;否则P=0;
(3)若Ex<0,则Q=-Ex,否则Q=0;
(4)z1=N日P的简单平均;
(5)z2=N日Q的简单平均;
(6)z=z1/(z1+z2)*100。范例
//计算白云机场截止2011年9月13日的RSI买入条件选股情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=6;
v:=20;
a:=BsByRSI(N);
RestoreSystemParameters(oV);
return a;
//结果:0
####### RSIFZ
算法
(1)R_All=截止日往前推M个的N1日相对强弱指标序列;
(2)C_All=截止日往前推M个的N1日收盘价简单平均序列;
(3)R1=截止日的N1日相对强弱指标;
(4)C1=收盘价的N2日简单平均;
(5)R2=前M-1日的R1;
(6)C2=前M-1日的C1;
(7)vR=R2到R1的增长率的绝对值;
(8)vC=C2到C1的增长率的绝对值;
(9)type=0,判断是否底背离;
RMin=R_All中RSI的最小值,CMin=C_All中Ma的最小值;
V=R1>R2 && C1<C2 && vR_>vC_ &&RMin=R2 && CMin=C1;
type=1,判断是否顶背离;
RMax=R_All中RSI的最大值,CMax=C_All中Ma的最大值;
V=R1<R2 && C1>C2 && vR_<vC_ &&RMax=R2 && CMax=C1。范例
//计算白云机场截止2011年9月13日的RSI翻转情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=6;
N2:=10;
M:=10;
v:=RSIFZ(N1,N2,M,0);
RestoreSystemParameters(oV);
return v;
//结果:0
形态特征选股
####### 内容
- IsDtpl
- IsKtpl
- IsMaGd
- IsMaHjjc
- IsMaSwjc
- IsMaAstringent
- IsMaAstringent2
####### IsDtpl
算法
(1)P1 =N1日的平均收盘价;
(2)P2 =N2日的平均收盘价;
(3)P3 =N3日的平均收盘价;
(4)P4 =N4日的平均收盘价;
(5)统计P1>P2,P2>P3,P3>P4这三个表达式中为真的个数,若有三个为真,则v=1,否则v=0;
(6)若v=1且收盘价>开盘价,返回1,否则返回0。范例
//计算白云机场截止2011年9月13日的均线多头排列情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=5;
N2:=10;
N3:=20;
N4:=30;
v:= IsDtpl(N1,N2,N3,N4);
RestoreSystemParameters(oV);
return v;
//结果:0(非均线多头排列)
####### IsKtpl
算法
(1)P1 =N1日的平均收盘价;
(2)P2 =N2日的平均收盘价;
(3)P3 =N3日的平均收盘价;
(4)P4 =N4日的平均收盘价;
(5)统计P1<P2,P2<P3,P3<P4这三个表达式中为真的个数,若有三个为真,则v=1,否则v=0;
(6)若v=1且收盘价<开盘价,返回1,否则返回0。范例
//计算白云机场截止2011年9月13日的均线空头排列情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=5;
N2:=10;
N3:=20;
N4:=30;
v:= IsKtpl(N1,N2,N3,N4);
RestoreSystemParameters(oV);
return v;
//结果:0(非均线空头排列)
####### IsMaGd
算法
(1)m1=N日的平均收盘价;
(2)m2=(m1*N-收盘价+前N日的收盘价)/N;
(3)m3=(m2*N-昨收盘价+前N+1日收盘价)/N;
(4)v1=m2-m3;
(5)v2=m2=m1;
(6)若v<0.00001,则v=0.00001,否则v取设定值;
(7)r1=v1<0 && v2<0 && |v1|>=v && |v2|>=v;
(8)r2=v1>0 && v2>0 && |v1|>=v && |v2|>=v;
(9)type=0,返回下拐点r1;
(10)type=1,返回上拐点r2;
(11)type=2,若r1=r2=0,则返回0;否则返回1。范例
//计算白云机场截止2011年9月13日的均线下拐点。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N:=5;
v:=0.00001;
a:= IsMaGd(N,v,0);
RestoreSystemParameters(oV);
return a;
//结果:0
####### IsMaHjjc
算法
(1)收盘价在N1日均线之上;
(2)N1日均线上穿N2日均线。范例
//计算白云机场截止2011年9月13日的是否有均线金叉。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=10;
N2:=20;
v:= IsMaHjjc(N1,N2);
RestoreSystemParameters(oV);
return v;
//结果:1(均线金叉)
####### IsMaSwjc
算法
(1)收盘价在N1日均线之下;
(2)N1日均线下穿N2日均线。范例
//计算白云机场截止2011年9月13日的是否是均线死叉。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=10;
N2:=20;
v:= IsMaSwjc(N1,N2);
RestoreSystemParameters(oV);
return v;
//结果:0(非均线死叉)
####### IsMaAstringent
算法
(1)若PermitCross为假则执行(2)(3)(4),若为真则执行(5)(6);
(2)a =N1日均线-N2日均线;
(3)b =前N-1日的a;
(4)若有a>0&&b<0或a<0&&b>0成立,则返回假,否则执行(5)(6);
(5)若b>0,表达式c为: a<=前一日的a*(1+error/100),若有连续N日的c为真,则返回1,否则返回0;
(6)若b<=0,表达式c为: a>=前一日的a*(1+error/100),若有连续N日的c为真,则返回1,否则返回0。范例
//计算白云机场截止2011年9月13日的是否是均线收敛情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=10;
N2:=20;
N:=5;
Error:=5;
PermitCross:=true;
v:= IsMaAstringent(N1,N2,Error,PermitCross);
RestoreSystemParameters(oV);
return v;
//结果:0
####### IsMaAstringent2
算法
(1)若第一个交易日>=截止日则返回0;
(2)否则,取得当前股票在两个日期之间的交易日数N;
(3)若N<2则返回0;
(4)否则,返回截止日的均线收敛情况。范例
//计算白云机场截止2011年9月13日的是否是均线收敛情况。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
N1:=10;
N2:=20;
Begt:=inttodate(20110908);
Endt:=inttodate(20110913);
Error:=5;
PermitCross:=true;
v:= IsMaAstringent2(N1,N2,Error,begt,endt,PermitCross);
RestoreSystemParameters(oV);
return v;
//结果:1
K线分析
内容
- K_MidBar
- K_DownShadow
- K_UpShadow
- K_crossstar
K_MidBar
算法
VT=0,返回实体线比例 =(收盘价-开盘价)/开盘价*100;
VT=1,返回实体线值 = 收盘价-开盘价;
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()相关。范例
//计算白云机场截止日2011年9月8日的实体线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_rate(),0);
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
v:=K_MidBar(1,0);
return v;
//结果:0.28
K_DownShadow
算法
VT=0,返回下影线比例 =(开盘价和收盘价的较小值–最低价)/开盘价和收盘价的较小值*100;
VT=1,返回下影线值 = 开盘价和收盘价的较小值;
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()相关。范例
//计算白云机场截止日2011年9月8日的下影线值和比例。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
v1:=K_DownShadow(0); //值
v2:=K_DownShadow(1); //比例
return array('值':v1,'比例':v2);
//结果:
K_UpShadow
算法
VT=0,返回上影线比例 =(最高价-开盘价和收盘价的较大值)/开盘价与收盘价的较大值*100;
VT=1,返回上影线值 = 最高价-开盘价和收盘价的较大值;
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()相关。范例
//计算白云机场截止日2011年9月8日的上影线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_rate(),0);
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
v:= K_UpShadow (1);
return v;
//结果:0.07
K_crossstar
范例
// "CSI930875"在2021-06-09十字星形态
SetSysParam(pn_stock(),"CSI930875");
SetSysParam(PN_Date(),20210609T);
return K_CrossStar(0.5); //结果:1
成交量指标
内容
- 计算公式
- 图形
- 当前值
计算公式
####### 内容
- AmountMa_f
- Amount_f
- OBVMa_f
- OBV_f
- VOL_f
- VRSI_f
- VolMa_f
- VOSC_f
- SOBV_v
- SOBV_f
- QHLSR_f
####### AmountMa_f
算法
Type=0,返回当前时间的N日成交金额均值;
Type=1,返回当前时间往前推共nDay个N日成交金额均值序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关。范例
//计算白云机场截止日2011年9月8日的6日成交金额均值。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_rate(),0);
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:=AmountMa_f(N,0);
return v;
//结果:26436040.33
//计算白云机场截止2011年9月8日向前推共5天的6日成交金额均值序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:=AmountMa_f(N,1);
return v;
//结果
####### Amount_f
算法
Type=0,返回当前时间的成交金额;
Type=1,返回当前时间往前推共nDay个的成交金额序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关。范例
//计算白云机场截止日2011年9月8日的成交金额
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
v:=Amount_f(0);
return v;
//结果:76991864
//计算白云机场截止2011年9月8日向前推共5天的成交金额序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
setsysparam(pn_date(),inttodate(20110908));
v:=Amount_f(1);
return v;
//结果:
####### OBVMa_f
算法
若收盘价>昨收盘价,则V=当天成交量;
若收盘价<昨收盘价,则V= -当天成交量;
若收盘价=昨收盘价,则V=0;
能量潮 = 前N日的V之和/100;
Type=0,返回当前时间的M日能量潮简单平均;
Type=1,返回当前时间往前推共nDay个M日能量潮简单平均序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关。范例
//计算白云机场截止日2011年9月8日的30日能量潮移动平均(N=10)
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=30;
v:=OBVMa_f(N,M,0);
return v;
//结果:-68994.395
//计算白云机场截止2011年9月8日向前推总共5天的30日能量潮移动平均序列(N=10)
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=30;
v:=OBVMa_f(N,M,1);
return v;
//结果:
####### OBV_f
算法
若收盘价>昨收盘价,则V=当天成交量;
若收盘价<昨收盘价,则V= -当天成交量;
若收盘价=昨收盘价,则V=0;
累积能量=前N日的V之和/100;
Type=0,返回当前时间的累积能量;
Type=1,返回当前时间往前推共nDay个能量累积序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关。范例
//计算白云机场截止日2011年9月8日的10日累积能量。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=OBV_f(N,0);
return v;
//结果:79938.87
//计算白云机场截止2011年9月8日向前推共5天的10日累积能量
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=10;
v:=OBV_f(N,1);
return v;
//结果:
####### VOL_f
算法
Type=0,返回当前时间的成交量;
Type=1,返回当前时间往前推共nDay个成交量序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关。范例
//计算白云机场截止日2011年9月8日的成交量
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
v:=VOL_f(0);
return v;
//结果:10466260
//计算白云机场截止2011年9月8日向前推共5天的成交量序列
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
v:=VOL_f(1);
return v;
//结果:
####### VRSI_f
算法
EX=成交量–昨成交量;
若EX<0,则EX1=0,EX2= -EX;
若EX>=0,则EX1=EX2=EX
z1 = N日的EX1平滑移动平均,权重为1;
z2 = N日的EX2平滑移动平均,权重为2;
相对强弱=z1/z2*100;
Type=0,返回当前时间的相对强弱;
Type=1,返回当前时间往前推共nDay个相对强弱的序列
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关。范例
范例一:
//计算白云机场截止日2011年9月8日的6日相对强弱。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:=VRSI_f(N,0);
return v;
//结果:88.41
范例二:
//计算白云机场截止2011年9月8日向前推共5天的6日相对强弱序列。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=6;
v:=VRSI_f(N,1);
return v;
//结果:
范例三:
//计算白云机场截止2011年9月8日向前推共5天的6日相对强弱图形。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=6;
v:=VRSI_f(N,2);
return v;
//结果:
####### VolMa_f
算法
Type=0,返回当前时间的N日成交量均值;
Type=1,返回当前时间往前推共nDay个N日成交量均值序列
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关。范例
范例一:
//计算白云机场截止日2011年9月8日的6日成交量移动均值
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:=VolMa_f(N,0);
return v;
//结果: 3666001
范例二:
//计算白云机场截止2011年9月8日向前推共5天的6日成交量移动均值序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=6;
v:=VolMa_f(N,1);
return v;
//结果:
####### VOSC_f
算法
成交量震荡 = (短期成交量移动均值 - 长期成交量移动均值)/短期成交量移动均值 * 100
Type=0,返回当前时间的成交量震荡;
Type=1,返回当前时间往前推共nDay个成交量震荡序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关。范例
范例一:
//计算白云机场截止日2011年9月8日的成交震荡
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
SHORT:=6;
LONG:=14;
v:=VOSC_f(SHORT,LONG,0);
return v;
//结果:21.66193782
范例二:
//计算白云机场截止2011年9月8日向前推共5天的成交震荡序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
SHORT:=6;
LONG:=14;
v:=VOSC_f(SHORT,LONG,1);
return v;
//结果
范例三:
//计算白云机场截止2011年9月8日向前推共5天的成交震荡图。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
SHORT:=6;
LONG:=14;
v:=VOSC_f(SHORT,LONG,2);
return v;
//结果
####### SOBV_v
算法
若当天上涨,则V =成交量;
若当天下跌,则V = -成交量;
若当天平盘,则V =0;
N日能量潮= N日的V之和;
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()。范例
//计算白云机场截止日2011年9月8日的30日能量潮
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=30;
v:= SOBV_v (N);
return v;
//结果:13102022
####### SOBV_f
算法
若当天上涨,则V =成交量;
若当天下跌,则V = -成交量;
若当天平盘,则V =0;
N日能量潮=N日的V之和;
Type=0,返回当前时间的N日能量潮;
Type=1,返回当前时间往前推共nDay个N日能量潮序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的30日能量潮
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=30;
v:=SOBV_f(N,0);
return v;
//结果:13102022
范例二:
//计算白云机场截止2011年9月8日向前推共5天的30日能量潮序列
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=30;
v:=SOBV_f(N,1);
return v;
//结果
####### QHLSR_f
算法
qh =(收盘价-昨收盘价)-(成交量-昨成交量)*(昨最高价-昨最低价)/昨成交量;
若qh>0,则tA=qh,否则tA=0;
若qh<0,则tB=qh的绝对值,否则tB=0;
A= N日的tA之和;
B= N日的tB之和;
阻力指标=A/(A+B);
Type=0,返回当前时间的阻力指标;
Type=1,返回当前时间往前推共nDay个N日阻力指标序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的10日阻力指标
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:= QHLSR_f(N,0);
return v;
//结果:0.45019064
范例二:
//计算白云机场截止2011年9月8日向前推共5天的10日阻力指标序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=10;
v:= QHLSR_f(N,1);
return v;
//结果:
图形
####### 内容
- VOL_
- OBV
- Amount_
####### VOL_
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return VOL_(5,10,30);
//结果:
####### OBV
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return OBV(30,10);
//结果:
####### Amount_
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return Amount_(5,10,30);
//结果:
当前值
####### 内容
- OBV_v
- AmountMa_v
- VolMa_v
- OBVMa_v
- VOSC_v
- VRSI_v
- QHLSR_v
####### OBV_v
算法
(1)若收盘价>昨收盘价,则V=当天成交量;
(2)若收盘价<昨收盘价,则V= -当天成交量;
(3)若收盘价=昨收盘价,则V=0;
(4)能量潮(OBV)=N日的V之和/100。范例
//计算白云机场截止2011年9月8日的10日能量潮(不复权)。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=OBV_v(N);
return v;
//结果:79938.87
####### AmountMa_v
算法
返回截止当前时间的N日成交金额均值;
N为0时,返回当天的成交金额值;N<0时无效。范例
//计算白云机场截止2011年9月8日的10日成交金额均值。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=AmountMa_v(N);
return v;
//结果:21899130.2
####### VolMa_v
算法
(1)返回截止当前时间的N日成交量均值;
(2)N为0时,返回当天的成交量值;N<0时无效。范例
//计算白云机场截止2011年9月8日的6日成交量均值(不复权)。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:=VolMa_v(N);
return v;
//结果:3666001
####### OBVMa_v
算法
(1)若收盘价>昨收盘价,则V=当天成交量;
(2)若收盘价<昨收盘价,则V= -当天成交量;
(3)若收盘价=昨收盘价,则V=0;
(4)能量潮(OBV)=N日V的累计之和/100;
(5)Z =M日能量潮的移动平均,M为0时,Z =当日能量潮。范例
//计算白云机场截止2011年9月8日的30日能量潮移动平均(N=10、不复权)。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=30;
v:=OBVMa_v(N,M);
return v;
//结果:-68994.39
####### VOSC_v
算法
成交量震荡 =(短期成交量移动均值 - 长期成交量移动均值)/短期成交量移动均值 * 100。范例
//计算白云机场截止日2011年9月8日的成交量震荡(不复权)。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
SHORT:=6;
LONG:=14;
v:=VOSC_v(SHORT,LONG);
return v;
//结果:21.66
####### VRSI_v
算法
(1)EX=成交量 - 昨成交量;
(2)若EX<0,则EX1=0,EX2= -EX;
若EX>=0,则EX1=EX2=EX;
z1 =EX1的N日平滑移动平均,权重为1, z1=SMa(EX1,N,1)=[EX1+(N-1)*z1’]/N,其中z1’表示上一周期z1值;
z2 =EX2的N日平滑移动平均,权重为1, z2=SMa(EX2,N,1)=[EX2+(N-1)*z2’]/N,其中z2’表示上一周期z2值;
相对强弱= z1/ z2*100。范例
//计算白云机场截止2011年9月8日的6日相对强弱(不复权)。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:=VRSI_v(N);
return v;
//结果:88.41
####### QHLSR_v
算法
(1)QHL =(收盘价-昨收盘价)-(成交量-昨成交量)*(昨最高价-昨最低价)/昨成交量;
(2)若QHL >0,则tA=QHL,tB=0;否则,tA=0,tB= -QHL;
(3)A= N日的tA之和;
(4)B= N日的tB之和;
(5)阻力指标=A/(A+B)。范例
//计算白云机场截止2011年9月8日的10日6阻力指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=QHLSR_v(N);
return v;
//结果:0.45
大势指标
内容
- 计算公式
- 图形
- 当前值
计算公式
####### 内容
- ABI_f
- ADL_f
- ADR_f
- ARMS_f
- BTI_f
- MCL_f
- OBOS_f
- STIX_f
####### ABI_f
####### ADL_f
####### ADR_f
####### ARMS_f
####### BTI_f
####### MCL_f
####### OBOS_f
####### STIX_f
图形
####### 内容
- ADR
- ABI
- ARMS
- ADL
- BTI
- MCL
- OBOS
- STIX
####### ADR
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ADR(10,6);
;
//结果:
####### ABI
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ABI(6);
//结果:
####### ARMS
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ARMS(21,6);
//结果
####### ADL
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ADL(6);
//结果:
####### BTI
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return BTI(10,5);
//结果:
####### MCL
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return MCL(19,35);
//结果
####### OBOS
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return OBOS(10,6);
//结果:
####### STIX
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return STIX(6);
//结果:
当前值
####### 内容
- ARMS_v
- OBOS_v
- MCL_v
- ABI_v
- STIX_v
- BTI_v
- ADR_v
- ADL_v
####### ARMS_v
算法
(1)非指数不计算;
(2)R =上涨家数/下跌家数;
若当前的股票设置为上证指数,则统计上证A股板块的上涨家数和下跌家数;
若当前的股票设置为深证指数,则统计深证A股板块的上涨家数和下跌家数;
(3)阿姆氏指标ARMS=N日R的移动平均值。范例
//计算上证指数2011年9月8日的21日阿姆氏指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH000001');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=21;
M:=6;
v:=ARMS_v(N,M);
return v;
//结果:6.44
####### OBOS_v
算法
(1)非指数不计算;
(2)Z =上涨家数 - 下跌家数;
若当前的股票设置为上证指数,则统计上证A股板块的上涨家数和下跌家数;
若当前的股票设置为深证指数,则统计深证A股板块的上涨家数和下跌家数;
(3)超买超卖指标=N日Z的移动平均值。范例
//计算上证指数截止日2011年9月8日的超买超卖指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH000001');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=6;
v:=OBOS_v(N,M);
return v;
//结果:-183.82
####### MCL_v
算法
非指数不计算;
DIF =上涨家数 - 下跌家数;
若当前的股票设置为上证指数,则统计上证A股板块的上涨家数和下跌家数;
若当前的股票设置为深证指数,则统计深证A股板块的上涨家数和下跌家数;
Z1 =N1日DIF的指数平滑移动平均;
Z2 =N2日DIF的指数平滑移动平均;
麦克连指标MCL = Z1-Z2。范例
//计算上证指数2011年9月8日的麦克连指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH000001');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N1:=21;
N2:=36;
v:=MCL_v(N1,N2);
return v;
//结果:-42.67
####### ABI_v
算法
(1)非指数不计算;
(2)绝对广量指标ABI =((上涨家数-下跌家数)/(上涨家数+下跌家数))的绝对值*100;
若当前的股票设置为上证指数,则统计上证A股板块的上涨家数和下跌家数;
若当前的股票设置为深证指数,则统计深证A股板块的上涨家数和下跌家数。范例
//计算上证指数2011年9月8日的绝对广量指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH000001');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
M:=6;
v:=ABI_v(M);
return v;
//结果:66.08
####### STIX_v
算法
(1)非指数不计算;
(2)指数平滑广量STIX =上涨家数/(上涨家数+下跌家数)*100;
若当前的股票设置为上证指数,则统计上证A股板块的上涨家数和下跌家数;
若当前的股票设置为深证指数,则统计深证A股板块的上涨家数和下跌家数。范例
//计算上证指数截止日2011年9月8日的指数平滑广量指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH000001');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
M:=6;
v:=STIX_v(M);
return v;
//结果:16.96
####### BTI_v
算法
(1)非指数不计算;
(2)指数平滑广量STIX =上涨家数/(上涨家数+下跌家数)*100;
若当前的股票设置为上证指数,则统计上证A股板块的上涨家数和下跌家数;
若当前的股票设置为深证指数,则统计深证A股板块的上涨家数和下跌家数;
(3)广量冲力指标BTI =N日STIX的平均值。范例
//计算上证指数2011年9月8日的广量冲力指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH000001');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=21;
M:=6;
v:=BTI_v(N,M);
return v;
//结果:45.49
####### ADR_v
算法
(1)非指数不计算;
(2)涨跌比率 = N日的累计上涨家数/N日的累计下跌家数;
若当前的股票设置为上证指数,则统计上证A股板块的上涨家数和下跌家数;
若当前的股票设置为深证指数,则统计深证A股板块的上涨家数和下跌家数。范例
//计算上证指数2011年9月8日的10日涨跌比率。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH000001');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=6;
v:=ADR_v(N,M);
return v;
//结果:0.53
####### ADL_v
算法
(1)非指数不计算;
(2)腾落指标ADL = 上市以来的累计上涨家数与累计下跌家数之差;
若当前的股票设置为上证指数,则统计上证A股板块的上涨家数和下跌家数;
若当前的股票设置为深证指数,则统计深证A股板块的上涨家数和下跌家数。范例
//计算上证指数2011年9月8日的10日涨跌比率。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH000001');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
M:=6;
v:=ADL_v(M);
return v;
//结果:-45512
动量指标
内容
- 计算公式
- 图形
- 当前值
计算公式
####### 内容
- ADTM_f
- ATR_f
- BIAS_f
- DKX_f
- LWR_f
- MFI_f
- MTM_f
- OSC_f
- PVT_f
- ROCMa_f
- ROC_f
- RSI_f
- UDLma_f
- UDL_f
- WR_f
- MI_f
- RC_f
- SRMI_f
- KDJ_f
- RCCD_f
- MICD_f
- ACCER_f
- SKD_f
####### ADTM_f
####### ATR_f
####### BIAS_f
算法
BIAS = (收盘价-N日的收盘简单平均)/N日的收盘简单平均*100
Type=0,返回当前时间的BIAS;
Type=1,返回当前时间往前推共nDay个BIAS序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的乖离量
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=BIAS_f(N,0);
return v;
//结果:4.31
范例二:
//计算白云机场截止2011年9月8日往前推共5天的乖离量序列
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=BIAS_f(N,1);
return v;
//结果:
####### DKX_f
####### LWR_f
算法
LWR = (收盘价-N日最低价)/(N日最高价-N日最低价)*100;
Type=0,返回当前时间的LWR;
Type=1,返回当前时间往前推共nDay个LWR序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的威廉指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=LWR_f(N,0);
return v;
//结果:81.69
范例二:
//计算白云机场截止2011年9月8日向前推总共5天,对每一天计算上述例子中的指标得到的结果序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=LWR_f(N,1);
return v;
//结果:
####### MFI_f
算法
X=(最高价+最低价+收盘价)/3;
Y=(昨最高价+昨最低价+昨收盘价)/3;
若X>Y,则Z1=X*成交量;
若X<=Y,则Z1=0;
若X<Y,则Z2=X*成交量;
若X>=Y,则Z2=0;
Z=N日累计Z1之和/N日累计Z2之和
Type=0,返回当前时间的资金流向;
Type=1,返回当前时间往前推共nDay个资金流向序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的资金流向。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MFI_f(N,0);
return v;
//结果:1.97
范例二:
//计算白云机场截止2011年9月8日向前推共5天的资金流向序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=10;
v:=MFI_f(N,1);
return v;
//结果:
####### MTM_f
算法
MTM =收盘价-N日前的收盘价;
MAMTM= M日的MTM简单平均;
Type=0,返回当前时间的MTM、MAMTM;
Type=1,返回当前时间往前推共nDay个MTM、MAMTM序列。
nDay由系统参数PN_nDay()设置,默认值为180。
Type=2,返回MTM是否上穿0;
Type=3,返回MTM是否下穿0;
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的动力指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=6;
v:=MTM_f(N,M,0);
return v;
//结果:
范例二:
//计算白云机场截止2011年9月8日向前推共5天的动力指标序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=10;
M:=6;
v:=MTM_f(N,M,1);
return v;
//结果:
范例三:
//计算白云机场截止日2011年9月8日的MTM线是否上穿0。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=6;
v:=MTM_f(N,M,2);
return v;
//结果:1
####### OSC_f
####### PVT_f
算法
价量趋势=N日的涨幅之和;
Type=0,返回当前时间的价量趋势;
Type=1,返回当时时间往前推共nDay个价量趋势序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的价量趋势。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=PVT_f(N,0);
return v;
//结果:534683.6
范例二:
//计算白云机场截止2011年9月8日向前推共5天的价量趋势序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=10;
v:=PVT_f(N,1);
return v;
//结果:
####### ROCMa_f
算法
EX=(收盘价-N天前的收盘价)/N天前的收盘价*100;
变动率移动平均=M日的EX的简单平均;
Type=0,返回当前时间的变动率移动平均;
Type=1,返回当时时间往前推共nDay个变动率移动平均序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日10天内的变动率移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=6;
v:=ROCMa_f(N,M,0);
return v;
//结果:0.74
范例二:
//计算白云机场截止2011年9月8日向前推共5天的变动率移动平均序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=10;
M:=6;
v:=ROCMa_f(N,M,1);
return v;
//结果:
####### ROC_f
算法
变动速率=(收盘价-N天前的收盘价)/N天前的收盘价*100;
Type=0,返回当前时间的变动速率;
Type=1,返回当时时间往前推共nDay个变动速率序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日10天内的变动速率。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=ROC_f(N,0);
return v;
//结果:3.87
范例二:
//计算白云机场截止2011年9月8日向前推共5天的变动速率序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=10;
v:=ROC_f(N,1);
return v;
//结果:
参考NDay2
####### RSI_f
算法
系统自动获取当前的时间sp_time为dates:
若dates=证券首日,则Ex=0;
若dates<>证券首日,则Ex=收盘价-昨收盘价
Z1= N日的Ex的平滑移动平均,权重为1。(若Ex<0,则取0)。
Z2= N日的Ex的平滑移动平均,权重为1。(若Ex<0,则取相反数)。
若dates=证券首日,则Z=0;
若dates<>证券首日,Z=Z1/Z2*100;
Type=0,返回dates截止日的Z值。
Type=1,返回dates截止日往前推共nDay个Z序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日6天内的相对强弱指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_rate(),0);
N:=6;
v:=RSI_f(N,0);
return v;
//结果:76.4
范例二:
//计算白云机场截止2011年9月8日向前推共5天的相对强弱序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N:=6;
v:=RSI_f(N,1);
return v;
//结果:
####### UDLma_f
算法
引力线=(N1日的收盘价简单平均+ N2日的收盘价简单平均+ N3日的收盘价简单平均+ N4日的收盘价简单平均)/4;
引力线移动平均=M日的引力线的简单平均;
Type=0,返回当前时间的引力线移动平均;
Type=1,返回当前时间往前推共nDay个引力线移动平均序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的引力线移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N1:=3;
N2:=5;
N3:=10;
N4:=20;
M:=6;
v:=UDLma_f(N1,N2,N3,N4,M,0);
return v;
//结果:7.13
范例二:
//计算白云机场截止2011年9月8日向前推共5天的引力线移动平均序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N1:=3;
N2:=5;
N3:=10;
N4:=20;
M:=6;
v:=UDLma_f(N1,N2,N3,N4,M,1);
return v;
//结果:
####### UDL_f
算法
引力线=(N1日的收盘价简单平均+ N2日的收盘价简单平均+ N3日的收盘价简单平均+ N4日的收盘价简单平均)/4
Type=0,返回当前时间的引力线;
Type=1,返回当前时间往前推共nDay个引力线序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的引力线指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N1:=3;
N2:=5;
N3:=10;
N4:=20;v:=UDL_f(N1,N2,N3,N4,0);
return v;
//结果:7.18
范例二:
//计算白云机场截止2011年9月8日向前推共5天的引力线序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N1:=3;
N2:=5;
N3:=10;
N4:=20;
v:=UDL_f(N1,N2,N3,N4,1);
return v;
//结果:
####### WR_f
算法
威廉指标=(N日最高价-收盘价)/(N日最高价-N日最低价)*100;
Type=0,返回当前时间的威廉指标。
Type=1,返回当前时间往前推共nDay个威廉指标序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日10天内威廉指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=WR_f(N,0);
return v;
//结果:10.77
范例二:
//计算白云机场截止2011年9月8日向前推总共5天,对每一天计算上述例子中的指标得到的结果序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=10;
v:=WR_f(N,1);
return v;
//结果:
####### MI_f
算法
A=当天的收盘价-N天前的收盘价;
动量指标=A的N日平滑移动平均;
Type=0,返回当前时间的动量指标;
Type=1,返回当前时间往前推共nDay个动量指标序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的动量指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=MI_f(N,0);
return v;
//结果:
范例二:
//计算白云机场截止2011年9月8日向前推共5天的动量指标序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=MI_f(N,1);
return v;
//结果:
####### RC_f
算法
RC=昨收盘价/N+1天前的收盘价;
变化率指数=RC的N日平滑移动平均;
Type=0,返回当前时间的变化率指数;
Type=1,返回当前时间往前推共nDay个变化率指数序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的变化率指数。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=RC_f(N,0);
return v;
//结果:
范例二:
//计算白云机场截止2011年9月8日向前推共5天的变化率指数序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=RC_f(N,1);
return v;
//结果:
####### SRMI_f
算法
若收盘价<N天前收盘价,则MI修正指标=(收盘价-N天前收盘价)/N天前收盘价;
若收盘价>N天前收盘价,则MI修正指标=(收盘价-N天前收盘价)/收盘价;
若收盘价=N天前收盘价,则MI修正指标=0;
Type=0,返回当前时间的MI修正指标;
Type=1,返回当前时间往前推共nDay个MI修正指标序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的MI修正指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=SRMI_f(N,0);
return v;
//结果:
范例二:
//计算白云机场截止2011年9月8日向前推共5天的MI修正指标序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=SRMI_f(N,1);
return v;
//结果:
####### KDJ_f
算法
(1)X =收盘价-N日最低的最低价;
(2)Y = N日最高的最高价-N日最低的最低价;
(3)若Y非0,则RSV =X/Y*100;若Y为0,则RSV =100;
(4)K =M1日RSV的平滑移动平均,权重为1;
即K=SMa(RSV,M1,1)=[RSV+(M1-1)*K’]/M1,其中K’为上一周期K值;
(5)D =M2日K的平滑移动平均,权重为1;
即D=SMa(K,M2,1)=[K+(M2-1)*D’]/M2,其中D’为上一周期D值;
(6)J =3K-2D;
(7)Type=0,返回当前时间的随机指标K、D、J值;
(8)Type=1,返回当前时间往前推共nDay个随机指标K、D、J的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。
Type=2,返回K线是否上穿D线,且K<20;
Type=3,返回K线是否下穿D线,且D>80;
Type=4,返回J线是否上穿0;
Type=5,返回J线是否下穿100。范例
范例一:
//计算白云机场2011年9月8日的随机指标。
SetSysParam(pn_stock(),'SH600004');
SetSysParam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0); //不复权
//setsysparam(pn_rate(),1); //比例复权
//setsysparam(pn_rateday(),-1);
V:=KDJ_f(9,3,3,0);
Return v;
//结果:
范例二:
//计算白云机场2011年9月8日的向前推共5日随机指标序列(不复权)。
SetSysParam(pn_stock(),'SH600004');
SetSysParam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0); //不复权
//setsysparam(pn_rate(),1); //比例复权
//setsysparam(pn_rateday(),-1);
SetSysParam(pn_nday(),5);
V:=KDJ_f(9,3,3,1);
Return v;
//结果:
范例三:
//计算白云机场2011年9月8日的K线是否上穿D线,且K<20。
SetSysParam(pn_stock(),'SH600004');
SetSysParam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
v:=KDJ_f(9,3,3,2);
Return v;
//结果:0,即此时K线未突破D线
####### RCCD_f
算法
(1)RC=收盘价/N日前的收盘价;
(2)ARC=昨日RC的N日平滑移动平均;
(3)DIF=昨日ARC的N1日简单平均 - 昨日ARC的N2日简单平均;
(4)RCCD=DIF的N日平滑移动平均;
(5)Type=0,返回当前时间的DIF、RCCD;
(6)Type=1,返回当前时间往前推共nDay个DIF、RCCD序列;
nDay由系统参数PN_nDay()设置,默认值为180。范例
//计算白云机场截止日2011年9月8日的异同离差变化率指数。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=59;
N1:=21;
N2:=28;
v:=RCCD_f(N,N1,N2,0);
return v;
//结果:
范例二:
//计算白云机场截止日2011年9月8日向前推总共5天的异同离差变化率指数序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
Setsysparam(pn_nDay(),5);
setsysparam(pn_date(),inttodate(20110908));
N:=59;
N1:=21;
N2:=28;
v:=RCCD_f(N,N1,N2,1);
return v;
//结果:
####### MICD_f
算法
(1)MI =收盘价 - 昨收盘价;
(2)AMI =MI的N日平滑移动平均,权重为1;
(3)DIF=昨日AMI的N1日简单平均 - 昨日AMI的N2日简单平均;
(4)MICD=DIF的10日平滑移动平均,权重为1;
(5)Type=0,返回当前时间的DIF、MICD;
(6)Type=1,返回当前时间往前推共nDay个DIF、RCCD序列;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止日2011年9月8日的异同离差动力指数。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=59;
N1:=21;
N2:=28;
v:=MICD_f(N,N1,N2,0);
return v;
//结果:
范例二:
//计算白云机场截止日2011年9月8日向前推总共5天的异同离差动力指数序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
Setsysparam(pn_nDay(),5);
setsysparam(pn_date(),inttodate(20110908));
N:=59;
N1:=21;
N2:=28;
v:=MICD_f(N,N1,N2,1);
return v;
####### ACCER_f
范例
//SH603803在20241219的开盘集合竞价涨幅(%)
SetSysParam(pn_stock(),"SH603803");
SetSysParam(PN_Cycle(),cy_day());
SetSysParam(pn_date(),20241219T);
return ACCER_f(10,0);
//结果:0.034122
####### SKD_f
算法
LOWV:N日内最低价的最低值
HIGHV:N日内最高价的最高值
RSV:(收盘价-LOWV)/(HIGHV-LOWV)*100的M日指数移动平均
K:RSV的M日指数移动平均
D:K的M日移动平均范例
// SZ000001在20241115的慢速随机指标
setsysparam(pn_stock(),"SZ000001");
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),20241115T);
return SKD_f(9,3,0);
//结果:array(35.960153127544,44.5380086095907)
图形
####### 内容
- DKX
- HYG
- BIAS
- LWR
- KDJ
- ATR
- ADTM
- OSC
- PVT
- RSI
- MTM
- UDL
- MFI
- ROC
- WR
- SAR
####### DKX
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return DKX(10,6);
//结果:
####### HYG
范例
SetSysParam(PN_Stock(),'sz000001');
SetSysParam(pn_date(),inttodate(20130101));
Return HYG(5);
//结果:
####### BIAS
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return BIAS(6,12,24);
//结果:
####### LWR
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return LWR(14,26);
//结果:
####### KDJ
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return KDJ(9,3,3);
//结果:
####### ATR
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ATR(14);
//结果:
####### ADTM
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ADTM(23,6);
//结果:
####### OSC
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return OSC(20,6);
//结果:
####### PVT
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return PVT(5);
//结果:
####### RSI
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return RSI(6,12);
//结果:
####### MTM
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return MTM(12,6);
//结果:
####### UDL
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return UDL(3,5,10,20,6);
//结果:
####### MFI
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return MFI(14);
//结果:
####### ROC
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ROC(12,6);
//结果:
####### WR
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return WR(14,6);
//结果:
####### SAR
范例
SetSysParam(PN_Stock(),'SZ000001');
SetSysParam(pn_date(),20130101T);
return SAR(2,2,2,20);
结果:
当前值
####### 内容
- ROCMa_v
- MFI_v
- KDJ_K_v
- KDJ_D_v
- KDJ_J_v
- MTMMa_v
- MTM_v
- ATR_v
- ATR_a
- BIAS_v
- SRMI_v
- WR_v
- LWR_v
- MICD_DIF_v
- MICD_MICD_v
- RCCD_RCCD_v
- RCCD_DIF_v
- RC_v
- OSC_v
- MI_v
- DKX_v
- PVT_v
- UDL_v
- UDLMa_v
- ROC_v
- RSI_v
- ADTM_v
- ACCER_V
- SKD_D_V
- SKD_K_V
####### ROCMa_v
算法
(1)EX =(收盘价-N天前的收盘价)/N天前的收盘价 *100;
(2)变动率移动平均=M日EX的简单平均。范例
//计算白云机场2011年9月8日的10日变动率移动平均(不复权)。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=6;
v:=ROCMa_v(N,M);
return v;
//结果:0.74
####### MFI_v
算法
(1)X =(最高价+最低价+收盘价)/3;
(2)Y =(昨最高价+昨最低价+昨收盘价)/3;
(3)若X >Y,则Z1 =X*成交量,Z2=0;
若X <Y,则Z1=0,Z2 =X*成交量;
若X=Y,则Z1=Z2=0;
(4)MFI =N日Z1累计和 / N日Z2累计和。范例
//计算白云机场2011年9月8日的资金流向指标(不复权)。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MFI_v(N);
return v;
//结果:66.36
####### KDJ_K_v
算法
(1)X =收盘价-N日最低的最低价;
(2)Y = N日最高的最高价-N日最低的最低价;
(3)若Y非0,则RSV =X/Y*100;若Y为0,则RSV =100;
(4)K =M1日RSV的平滑移动平均,权重为1;
即K=SMa(RSV,M1,1)=[RSV+(M1-1)*K’]/M1,其中K’为上一周期K值;
(5)D =M2日K的平滑移动平均,权重为1;
即D=SMa(K,M2,1)=[K+(M2-1)*D’]/M2,其中D’为上一周期D值;
(6)J =3K-2D。范例
//计算白云机场2011年9月8日的随机指标K值。
SetSysParam(pn_stock(),'SH600004');
SetSysParam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0); //不复权
//setsysparam(pn_rate(),1);
//setsysparam(pn_rateday(),-1);
v:=KDJ_K_v(9,3,3);
Return v;
//结果:59.38
####### KDJ_D_v
算法
(1)X =收盘价-N日最低的最低价;
(2)Y = N日最高的最高价-N日最低的最低价;
(3)若Y非0,则RSV =X/Y*100;若Y为0,则RSV =100;
(4)K =M1日RSV的平滑移动平均,权重为1;
即K=SMa(RSV,M1,1)=[RSV+(M1-1)*K’]/M1,其中K’为上一周期K值;
(5)D =M2日K的平滑移动平均,权重为1;
即D=SMa(K,M2,1)=[K+(M2-1)*D’]/M2,其中D’为上一周期D值;
(6)J =3K-2D。范例
//计算白云机场2011年9月8日的随机指标D值。
SetSysParam(pn_stock(),'SH600004');
SetSysParam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0); //不复权
//setsysparam(pn_rate(),1);
//setsysparam(pn_rateday(),-1);
v:=KDJ_D_v(9,3,3);
Return v;
//结果:42.25
####### KDJ_J_v
算法
(1)X =收盘价-N日最低的最低价;
(2)Y = N日最高的最高价-N日最低的最低价;
(3)若Y非0,则RSV =X/Y*100;若Y为0,则RSV =100;
(4)K =M1日RSV的平滑移动平均,权重为1;
即K=SMa(RSV,M1,1)=[RSV+(M1-1)*K’]/M1,其中K’为上一周期K值;
(5)D =M2日K的平滑移动平均,权重为1;
即D=SMa(K,M2,1)=[K+(M2-1)*D’]/M2,其中D’为上一周期D值;
(6)J =3K-2D;
(7)与系统证券pn_stock()、系统时间pn_date()相关。范例
//计算白云机场2011年9月8日的随机指标J值。
SetSysParam(pn_stock(),'SH600004');
SetSysParam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0); //不复权
//setsysparam(pn_rate(),1);
//setsysparam(pn_rateday(),-1);
v:=KDJ_J_v(9,3,3);
//结果:93.64
####### MTMMa_v
算法
(1)MTM =收盘价-N日前的收盘价;
(2)MTMMa = M日MTM的简单平均。范例
//计算白云机场2011年9月8日的动力指标移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=6;
v:=MTMMa_v(N,M);
return v;
//结果:0.05
####### MTM_v
算法
MTM =收盘价-N日前的收盘价;范例
//计算白云机场截止日2011年9月8日的动力指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MTM_v(N);
return v;
//结果:0.28
####### ATR_v
算法
TR=最高价-最低价,|昨收盘价-最高价|,|昨收盘价-最低价|,取当前日期三个数据的最大值。范例
//计算白云机场截止2011年9月8日的波幅。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=14;
v:=ATR_v(N);
return v;
//结果:0.39
####### ATR_a
算法
(1)TR=最高价-最低价,|昨收盘价-最高价|,|昨收盘价-最低价|,取三者的最大值;
(2)ATR=TR的N日简单平均。范例
//计算白云机场2011年9月8日的真实波幅。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=14;
v:=ATR_a(N);
return v;
//结果:0.13
####### BIAS_v
算法
BIAS =(收盘价-收盘价的N日简单平均)/收盘价的N日简单平均*100。范例
//计算白云机场2011年9月8日的乖离率。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=12;
v:=BIAS_v(N);
return v;
//结果:5.07
####### SRMI_v
算法
(1)若收盘价<N日前收盘价,则MI修正指标=(收盘价-N日前收盘价)/N日前收盘价;
(2)若收盘价>N日前收盘价,则MI修正指标=(收盘价-N日前收盘价)/收盘价;
(3)若收盘价=N日前收盘价,则MI修正指标=0。范例
//计算白云机场截止日2011年9月8日的MI修正指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=SRMI_v(N);
return v;
//结果:0.04
####### WR_v
算法
WR = (N日最高价-收盘价)/(N日最高价-N日最低价)*100。范例
//计算白云机场截止日2011年9月8日的威廉指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=14;
v:=WR_v(N);
return v;
//结果:10.77
####### LWR_v
算法
LWR = (收盘价-N日最低价)/(N日最高价-N日最低价)*100。范例
//计算白云机场截止日2011年9月8日的威廉指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=14;
v:=LWR_v(N);
return v;
//结果:89.23
####### MICD_DIF_v
算法
MI =收盘价-昨收盘价;
AMI =MI的N日平滑移动平均,权重为1;
DIF =昨日AMI的N1日简单平均 - 昨日AMI的N2日简单平均。范例
//计算白云机场截止日2011年9月8日的异同离差动力指数。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=3;
N1:=10;
N2:=20;
v:=MICD_DIF_v(N,N1,N2);
return v;
//结果:0.01
####### MICD_MICD_v
算法
(1)MI =收盘价-昨收盘价;
(2)AMI =MI的N日平滑移动平均,权重为1;
(3)DIF =昨日AMI的N1日简单平均 - 昨日AMI的N2日简单平均;
(4)MICD =DIF的10日平滑移动平均,权重为1。范例
//计算白云机场截止日2011年9月8日的异同离差动力指数。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=3;
N1:=10;
N2:=20;
v:=MICD_MICD_v(N,N1,N2);
return v;
//结果:0.0056
####### RCCD_RCCD_v
算法
(1)RC=收盘价/N日前的收盘价;
(2)ARC=昨日RC的N日平滑移动平均;
(3)DIF=昨日ARC的N1日简单平均 - 昨日ARC的N2日简单平均;
(4)RCCD=DIF的N日平滑移动平均。
范例
//计算白云机场截止日2011年9月8日的异同离差变化率指数。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=59;
N1:=21;
N2:=28;
v:=RCCD_RCCD_v(N,N1,N2);
return v;
//结果:-0.0016
####### RCCD_DIF_v
算法
(1)RC=收盘价/N日前的收盘价;
(2)ARC=昨日RC的N日平滑移动平均;
(3)DIF=昨日ARC的N1日简单平均 - 昨日ARC的N2日简单平均。范例
//计算白云机场截止日2011年9月8日的异同离差变化率指数。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=59;
N1:=21;
N2:=28;
v:=RCCD_DIF_v(N,N1,N2);
return v;
//结果:-0.0031
####### RC_v
算法
(1)RC=昨收盘价/N+1天前的收盘价;
(2)变化率指数=RC的N日平滑移动平均,权重为1。范例
//计算白云机场截止日2011年9月8日的变化率指数。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=RC_v(N);
return v;
//结果:0.94
####### OSC_v
算法
OSC =(收盘价-收盘价的N日简单平均)*100。范例
//计算白云机场截止日2011年9月8日的变动率。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
M:=6;
v:=OSC_v(N);
return v;
//结果:36.3
####### MI_v
算法
(1)A=当天的收盘价-N天前的收盘价;
(2)动量指标MI =A的N日平滑移动平均,权重为1。范例
//计算白云机场截止日2011年9月8日的动量指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=MI_v(N);
return v;
//结果:-0.48
####### DKX_v
算法
(1)MID=(3*收盘价+最低价+开盘价+最高价)/6;
(2)DKX=(20MID+19昨日MID+18*2日前的MID
+173日前的MID+164日前的MID+15*5日前的MID
+146日前的MID+137日前的MID+12*8日前的MID
+119日前的MID+1010日前的MID+9*11日前的MID
+812日前的MID+713日前的MID+6*14日前的MID
+515日前的MID+416日前的MID+3*17日前的MID
+218日前的MID+120日前的MID)/210。范例
//计算白云机场截止日2011年9月8日的多空线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=DKX_v(N);
return v;
//结果:7.14
####### PVT_v
算法
X =(收盘价-昨收盘价)/昨收盘价;
PVT = N日的X*成交量之和。范例
//计算白云机场截止日2011年9月8日的价量趋势。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=PVT_v(N);
return v;
//结果:534683.1
####### UDL_v
算法
引力线=(收盘价的N1日简单平均+收盘价的N2日简单平均+收盘价的N3日简单平均+ 收盘价的N4日简单平均)/4。范例
//计算白云机场截止日2011年9月8日的引力线指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N1:=3;
N2:=5;
N3:=10;
N4:=20;
v:=UDL_v(N1,N2,N3,N4);
return v;
//结果:7.18
####### UDLMa_v
算法
引力线=(N1日的收盘价简单平均+ N2日的收盘价简单平均+ N3日的收盘价简单平均+ N4日的收盘价简单平均)/4;
引力线移动平均 =引力线的M日简单平均。范例
//计算白云机场截止日2011年9月8日的引力线移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N1:=3;
N2:=5;
N3:=10;
N4:=20;
M:=6;
v:=UDLMa_v(N1,N2,N3,N4,M);
return v;
//结果:7.13
####### ROC_v
算法
变动速率ROC=(收盘价-N天前的收盘价)/N天前的收盘价 *100。范例
//计算白云机场截止日2011年9月8日的变动速率。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=ROC_v(N);
return v;
//结果:3.87
####### RSI_v
算法
系统自动获取当前的时间sp_time为dates:
若dates=证券上市首日,则RSI =0;
若dates<>证券上市首日,则Ex=收盘价-昨收盘价;
Z1=Ex的N日平滑移动平均,权重为1(若Ex<0,则Ex取0);
Z2=Ex的N日平滑移动平均,权重为1(若Ex<0,则Ex取绝对值);
RSI=Z1/Z2*100。范例
//计算白云机场截止日2011年9月8日的相对强弱指数RSI。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:=RSI_v(N);
return v;
//结果:76.4
####### ADTM_v
算法
如果开盘价<=昨开盘价,DTM=0;
否则,DTM=(最高价-开盘价)和(开盘价-昨开盘价)的较大值;
如果开盘价>=昨开盘价,DBM=0;
否则,DBM=(开盘价-最低价)和(开盘价-昨开盘价)的较大值;
STM=DTM的N日累计和;
SBM=DBM的N日累计和;
如果STM>SBM,ADTM=(STM-SBM)/STM;
如果STM<SBM,ADTM=(STM-SBM)/SBM;
如果STM=SBM,ADTM=0。范例
//计算白云机场截止日2011年9月8日的动态买卖气指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=ADTM_v(N);
return v;
//结果:0.51
####### ACCER_V
范例
//SH603803在20241219的开盘集合竞价涨幅(%)
SetSysParam(pn_stock(),"SH603803");
SetSysParam(PN_Cycle(),cy_day());
SetSysParam(pn_date(),20241219T);
return ACCER_v(10);
//结果:0.034122
####### SKD_D_V
算法
LOWV:N日内最低价的最低值
HIGHV:N日内最高价的最高值
RSV:(收盘价-LOWV)/(HIGHV-LOWV)*100的M日指数移动平均
K:RSV的M日指数移动平均
D:K的M日移动平均范例
// SZ000001在20241115的慢速随机指标(D)
setsysparam(pn_stock(),"SZ000001");
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),20241115T);
return SKD_D_V(9,3);
//结果:44.5380086095907
####### SKD_K_V
算法
LOWV:N日内最低价的最低值
HIGHV:N日内最高价的最高值
RSV:(收盘价-LOWV)/(HIGHV-LOWV)*100的M日指数移动平均
K:RSV的M日指数移动平均
D:K的M日移动平均范例
// SZ000001在20241115的慢速随机指标(K)
setsysparam(pn_stock(),"SZ000001");
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),20241115T);
return SKD_K_V(9,3);
// 结果:35.960153127544
均线指标
内容
- 计算公式
- 图形
- 当前值
计算公式
####### 内容
- ACD_f
- AMVMa_f
- BBIBOLL_f
- BBI_f
- CMA_f
- Ema_f
- Hma_f
- Lma_f
- Vma_f
- DSMA_I
- DSMA_II
- Weightedma
- Hullma
####### ACD_f
####### AMVMa_f
算法
Z =成交量*(开盘价+收盘价)/2;
AMVMA=N天的Z累计之和/N天的成交量累计之和
Type=0,返回当前时间的成本价均线;
Type=1,返回当前时间往前推共nDay个成本价均线序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的成本价均线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=AMVMa_f(N,0);
return v;
//结果:7.24
范例二:
//计算白云机场截止2011年9月8日向前推共5天的成本价均线序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=AMVMa_f(N,1);
return v;
//结果:
####### BBIBOLL_f
####### BBI_f
算法
多空指标=(N1日的收盘价简单平均+ N2日的收盘价简单平均+ N3日的收盘价简单平均+ N4日的收盘价简单平均)/4。
Type=0,返回当前时间的多空指标;
Type=1,返回当前时间往前推共nDay个多空指标序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的多空指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N1:=5;
N2:=10;
N3:=15;
N4:=20;
v:=BBI_f(N1, N2, N3, N4,0);
return v;
//结果:7.15
范例二:
//计算白云机场截止2011年9月8日向前推共5天的多空指标序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N1:=5;
N2:=10;
N3:=15;
N4:=20;
v:=BBI_f(N1, N2, N3, N4,1);
return v;
//结果:
####### CMA_f
算法
Type=0,返回当前时间的N日收盘价简单平均;
Type=1,返回当前时间往前推共nDay个N日收盘价简单平均序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的23日收盘价移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=CMA_f(N,0);
return v;
//结果:7.2
范例二:
//计算白云机场截止2011年9月8日向前推共5天的23日收盘价移动平均序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=CMA_f(N,1);
return v;
//结果:
####### Ema_f
算法
Type=0,返回当前时间的N日收盘价指数移动平均数;
Type=1,返回当前时间往前推共nDay个N日收盘价指数移动平均数序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日23天内的成本价均线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=Ema_f(N,0);
return v;
//结果:7.26
范例二:
//计算白云机场截止2011年9月8日向前推总共5天,对每一天计算上述例子中的指标得到的结果序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=Ema_f(N,1);
return v;
//结果:
####### Hma_f
算法
Type=0,返回当前时间的N日最高价简单平均;
Type=1,返回当前时间往前推共nDay个N日最高价简单平均序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的最高价移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=Hma_f(N,0);
return v;
//结果:7.25
范例二:
//计算白云机场截止2011年9月8日向前推共5天的最高价移动平均序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=Hma_f(N,1);
return v;
//结果:
####### Lma_f
算法
Type=0,返回当前时间的N日最低价简单平均;
Type=1,返回当前时间往前推共nDay个N日最低价简单平均序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的最低价移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=lma_f(N,0);
return v;
//结果:7.12
范例二:
//计算白云机场截止2011年9月8日向前推共5天的最低价移动平均序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=lma_f(N,1);
return v;
//结果:
####### Vma_f
算法
Ex=(最高价+开盘价+最低价+收盘价)/4;
变异移动平均=M日的Ex简单平均;
Type=0,返回当前时间的变异移动平均;
Type=1,返回当前时间往前推共nDay个变异移动平均序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的变异移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=Vma_f(N,0);
return v;
//结果:7.19
范例二:
//计算白云机场截止2011年9月8日向前推共5天的变异移动平均序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=Vma_f(N,1);
return v;
//结果:
####### DSMA_I
算法
Y=a*X+(1-a)*Y'
注:其中Y'表示上一周期Y值,a值在[0,1]
X为函数中的Exp表达式,a为函数中的衰减因子。范例
范例01:
//计算SH603260在20180827日收盘价的指数移动平均。
endt:=20180827T;
Setsysparam(pn_stock(),'SH603260');
setsysparam(pn_cycle(),cy_day());
Setsysparam(pn_date(),endt);
setsysparam(pn_rate(),1);
setsysparam(pn_rateday(),endt);
return DSMA_I(@close(),0.2);//不做缓存
//结果:59.5063949110518
范例02:
//取股票在一段时间内收盘价与开盘价的指数移动平均。
endt:=20180827T;
begt:=20180801T;
Setsysparam(pn_stock(),'SH603260');
setsysparam(pn_cycle(),cy_day());
Setsysparam(pn_date(),endt);
setsysparam(pn_rate(),1);
setsysparam(pn_rateday(),endt);
n:=tradedays(begt,endt);
//第三个参数:若需要缓存,请注意,缓存标志是用户自己定义的串,不同表达式缓//存字符串必须不一样,否则会计算错误
return nday(n,'date',sp_time(),'dma1',DSMA_I(@close(),0.2,'close'),'dma2',DSMA_I(@open(),0.2,'open'));
//结果:
| date | dma1 | dma2 |
| 2018-08-01 | 69.73085 | 70.41399 |
| 2018-08-02 | 68.82668 | 69.69519 |
| 2018-08-03 | 67.66334 | 68.73215 |
| 2018-08-06 | 65.70867 | 67.44372 |
| 2018-08-07 | 64.40494 | 65.59498 |
| 2018-08-08 | 62.69995 | 64.13598 |
| 2018-08-09 | 61.83796 | 62.49279 |
| 2018-08-10 | 61.42637 | 61.67623 |
| 2018-08-13 | 61.30910 | 61.06298 |
| 2018-08-14 | 61.19128 | 60.99039 |
| 2018-08-15 | 61.16902 | 60.94831 |
| 2018-08-16 | 61.23522 | 60.65865 |
| 2018-08-17 | 60.49017 | 60.88292 |
| 2018-08-20 | 60.04814 | 60.10433 |
| 2018-08-21 | 59.83651 | 59.71947 |
| 2018-08-22 | 59.56921 | 59.55757 |
| 2018-08-23 | 59.56937 | 59.28006 |
| 2018-08-24 | 59.37549 | 59.30005 |
| 2018-08-27 | 59.50639 | 59.23004 |
范例03:
setsysparam(pn_stock(),'SZ002926');
setsysparam(pn_date(),20200113T);
setsysparam(pn_rate(),1);
setsysparam(pn_rateday(),20200113T);
a:=0.02;
AA:=@(2*CLOSE()+LOW()+HIGH())/4;
BB:=@stockzf3();
//第四个参数:只向历史推导100次->对于表达式算法较为复杂的可考虑此用法
t1:= DSMA_I(AA,a,'aa',100);
t2:= DSMA_I(AA,a,'aa2');
t3:=DSMA_I(BB,a,'bb');
return array(t1,t2,t3);
//返回:array(9.9581996332979,10.0810464635677);
####### DSMA_II
算法
Y=a*X+(1-a)*Y'
注:其中Y'表示上一周期Y值,a值在[0,1]
X为函数中的Exp表达式,a为函数中的Expa衰减因子表达式。范例
范例01:
//计算SH603260在20180827日收盘价的按当日换手率加权的动态移动平均。
endt:=20180827T;
Setsysparam(pn_stock(),'SH603260');
setsysparam(pn_cycle(),cy_day());
Setsysparam(pn_date(),endt);
setsysparam(pn_rate(),1);
setsysparam(pn_rateday(),endt);
return DSMA_II(@close(),@stockhsl3()/100); //不做缓存
//结果:64.7879157815069
范例02:
//取股票在一段时间内收盘价的动态移动平均。
begt:=20180801T;
endt:=20180827T;
Setsysparam(pn_stock(),'SH603260');
setsysparam(pn_cycle(),cy_day());
Setsysparam(pn_date(),endt);
setsysparam(pn_rate(),1);
setsysparam(pn_rateday(),endt);
n:=tradedays(begt,endt);
return nday(n,'date',sp_time(),'dma',DSMA_II(@close(),@stockhsl3()/100,'close&stockhsl3')); //缓存
//结果:
| date | dma |
| 2018-08-01 | 71.389605 |
| 2018-08-02 | 71.036233 |
| 2018-08-03 | 70.791032 |
| 2018-08-06 | 69.995466 |
| 2018-08-07 | 69.286921 |
| 2018-08-08 | 68.635414 |
| 2018-08-09 | 68.112177 |
| 2018-08-10 | 67.714617 |
| 2018-08-13 | 67.430301 |
| 2018-08-14 | 67.222879 |
| 2018-08-15 | 66.991303 |
| 2018-08-16 | 66.754820 |
| 2018-08-17 | 66.086628 |
| 2018-08-20 | 65.782006 |
| 2018-08-21 | 65.530975 |
| 2018-08-22 | 65.322343 |
| 2018-08-23 | 65.124006 |
| 2018-08-24 | 64.955957 |
| 2018-08-27 | 64.787916 |
范例03:
setsysparam(pn_stock(),'SZ002926');//SZ002926
setsysparam(pn_date(),20200113T); //20180312T
setsysparam(pn_rate(),1);
setsysparam(pn_rateday(),20200113T);
N:=30;
AA:=@(2*CLOSE()+LOW()+HIGH())/4;
BB:=@MA(CLOSE(),N);
CC:=@(ABS(eval(AA)-eval(BB))/eval(BB));
DD:=@stockzf3()/100;
//第三个参数:若需要缓存,请注意,缓存标志是用户自己定义的串,不同表达式(表达式一,表达式二有任何不一致时)缓存字符串必须不一样,否则会计算错误
//第四个参数:只向历史推导100次->对于表达式算法较为复杂的可考虑此用法
t1:= DSMA_II(AA,CC,'aa');
t2:= DSMA_II(AA,CC,'cc',100);
t3:= DSMA_II(AA,DD,'dd',100);
return array(t1,t2,t3);
//结果:array(10.65002510798311,10.6416859095779,9.390332085877599)
####### Weightedma
算法WMA=(1EXP1+2EXP2+...N*EXPN)/(1+2+...+N)
N需要大于等1,否则返回0,
若N大于上市日至当前时间的交易天数T,则N等于T。范例
setsysparam(pn_stock(),'SZ000002');
setsysparam(pn_date(),20210629T);
setsysparam(pn_rate(),1);
setsysparam(pn_rateday(),20210629T);
return WeightedMA(@close(),180); //28.3411325966851
####### Hullma
算法HMA = WMA((2*WMA(EXP, int(N/2)) – WMA(EXP, N)), int(sqrt(N)))。范例
setsysparam(pn_stock(),'SZ000002');
setsysparam(pn_date(),20210629T);
setsysparam(pn_rate(),1);
setsysparam(pn_rateday(),20210629T);
return HullMA(@close(),180); //26.5981426744856
图形
####### 内容
- ACD
- AMV
- CMA
- EXPMA
- HMA
- BBIBOLL
- BBI
- LMa
- VMa
####### ACD
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ACD(20,5);
//结果:
####### AMV
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return AMV(5,10,30);
//结果:
####### CMA
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return CMA(5,10,30);
//结果:
####### EXPMA
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return EXPMA(5,10,30,60);
//结果:
####### HMA
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return HMA(5,10,30);
//结果:
####### BBIBOLL
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return BBIBOLL(11,6);
//结果:
####### BBI
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return BBI(3,6,12,24);
//结果:
####### LMa
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return LMa(5,10,30);
//结果:
####### VMa
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return VMa(5,10,30);
//结果:
当前值
####### 内容
- VMa_v
- BBI_v
- CMa_v
- Ema_v
- AMVMa_v
- HMa_v
- LMa_v
- BBIBOLL_v
- BBIUPR_v
- BBIDWN_v
- ACD_v
- ACDMa_v
####### VMa_v
算法
(1)HF=(最高价+开盘价+最低价+收盘价)/4;
(2)变异移动平均VMA =HF的M日简单平均。范例
//计算白云机场截止日2011年9月8日的变异移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
M:=12;
v:=VMa_v(M);
return v;
//结果:7.14
####### BBI_v
算法
多空指标=(收盘价的N1日简单平均+收盘价的N2日简单平均+ 收盘价的N3日简单平均+ 收盘价的N4日简单平均)/4。范例
//计算白云机场截止日2011年9月8日的多空指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N1:=3;
N2:=6;
N3:=12;
N4:=24;
v:=BBI_v(N1,N2,N3,N4);
return v;
//结果:7.18
####### CMa_v
算法
MA =(P1+P2+...+PN) / N;
其中,P为N日收盘价。范例
//计算白云机场截止日2011年9月8日的23日平均收盘价。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=CMa_v(N);
return v;
//结果:7.2
####### Ema_v
算法
EMA =P*K+EMA’ *(1-K);
其中,P为当日收盘价,EMA’为前一日指数移动平均值,K=2/(N+1)。范例
//计算白云机场截止日2011年9月8日的23日收盘价移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=Ema_v(N);
return v;
//结果:7.26
####### AMVMa_v
算法
(1)AMOV =成交量*(开盘价+收盘价)/2;
(2)AMVMA=AMOV的N日累计之和/成交量的N日累计之和。范例
//计算白云机场截止日2011年9月8日的5日成本价均线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=5;
v:=AMVMa_v(N);
return v;
//结果:7.22
####### HMa_v
范例
//计算白云机场截止日2011年9月8日的最高价简单平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=HMa_v(N);
return v;
//结果:7.25
####### LMa_v
范例
//计算白云机场截止日2011年9月8日的23日最低价移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=LMa_v(N);
return v;
//结果:7.12
####### BBIBOLL_v
算法
BBIBOLL=(收盘价的3日简单平均+收盘价的6日简单平均+收盘价的12日简单平均+收盘价的24日简单平均)/4。范例
//计算白云机场截止日2011年9月8日的BBIBOLL线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=11;
M:=6;
v:=BBIBOLL_v(N,M);
return v;
//结果:7.18
####### BBIUPR_v
算法
(1)BBIBOLL=(3日收盘价简单平均+6日收盘价简单平均+12日收盘价简单平均+24日收盘价简单平均)/4;
(2)UPR=BBIBOLL+M*BBIBOLL的N日标准差。范例
//计算白云机场截止日2011年9月8日的BBIBOLL上轨。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=11;
M:=6;
v:=BBIUPR_v(N,M);
return v;
//结果:7.50
####### BBIDWN_v
算法
(1)BBIBOLL=(3日收盘价简单平均+6日收盘价简单平均+12日收盘价简单平均+24日收盘价简单平均)/4;
(2)DWN=BBIBOLL- M*BBIBOLL的N日标准差。范例
//计算白云机场截止日2011年9月8日的BBIBOLL下轨。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=11;
M:=6;
v:=BBIDWN_v(N,M);
return v;
//结果:6.87
####### ACD_v
算法
(1)若收盘价>昨日收盘价,DIF=收盘价-最低价和昨日收盘价的较小值;
(2)若收盘价=昨日收盘价,DIF=0;
(3)若收盘价<=昨日收盘价,DIF=收盘价-最高价和昨日收盘价的较大值;
(4)ACD=DIF的N日累计之和;范例
//计算白云机场截止日2011年9月8日的升降线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=ACD_v(N);
return v;
//结果:0.31
####### ACDMa_v
算法
(1)若收盘价>昨日收盘价,DIF=收盘价-最低价和昨日收盘价的较小值;
(2)若收盘价=昨日收盘价,DIF=0;
(3)若收盘价<=昨日收盘价,DIF=收盘价-最高价和昨日收盘价的较大值;
(4)ACD=DIF的N日累计之和;
(5)ACDMA=ACD的M日简单平均。范例
//计算白云机场截止日2011年9月8日的升降线移动平均。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
M:=20;
v:=ACDMa_v(N,M);
return v;
//结果:-0.72
离散指标
内容
- 计算公式
- 图形
- 当前值
计算公式
####### 内容
- BOLL_f
- ENE_f
- MIKE_f
- BOLL_f_Ex
####### BOLL_f
####### ENE_f
####### MIKE_f
算法
(1)M =(昨最高价+昨最低价+昨收盘价 )/3;
(2)MID =M的N日简单平均(Ma);
(3)HH =3日(N日最高的最高价)的指数移动平均(EMa);
(4)LL =3日(N日最低的最低价)的指数移动平均;
(5)STOR =3日(2*HH-LL)的指数移动平均;
(6)STOS =3日(2*LL-HH)的指数移动平均;
(7)WEKR =3日(2*MID-LL)的指数移动平均;
(8)WEKS =3日(2*MID-HH)的指数移动平均;
(9)MIDS =3日(MID-HH+LL)的指数移动平均;
(10)MIDR =3日(MID+HH-LL)的指数移动平均;
(11)Type=0,返回当前时间的STOR、MIDR、WEKR、WEKS、MIDS、STOS;
(12)Type=1,返回当前时间往前推共nDay个STOR、MIDR、WEKR、WEKS、MIDS、STOS序列;nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止日2011年9月8日的麦克支撑压力。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_rate(),0); //不复权
N:=10;
v:=MIKE_f(N,0);
return v;
//结果:
范例二:
//计算白云机场截止日2011年9月8日向前推总共5天的麦克支撑压力。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
Setsysparam(pn_nDay(),5);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_rate(),0); //不复权
N:=10;
v:=MIKE_f(N,1);
return v;
//结果:
####### BOLL_f_Ex
算法
(1)BOLL=N日的收盘价简单平均;
(2)UPR=BOLL+P*N天收盘价的标准差;
(3)DWN=BOLL-P*N天收盘价的标准差;
(4)Type=0,返回当前时间的BOLL、UPR、DWN;
(5)Type=1,返回当前时间往前推共nDay个BOLL、UPR、DWN序列;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止日2011年9月8日的布林线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=20;
P:=2
v:=BOLL_f_Ex(N,0,P);
return v;
//结果:
范例二:
//计算白云机场截止日2011年9月8日向前推总共5天的布林线序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
Setsysparam(pn_nDay(),5);
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=20;
P:=2;
v:=BOLL_f_Ex(N,1,P);
return v;
//结果:
范例三:
//计算白云机场2011年9月8日的收盘价是否上穿DWN。
SetSysParam(pn_stock(),'SH600004');
SetSysParam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=20;
P:=2;
v:=BOLL_f_Ex(N,2,P);
Return v;
//结果:0,即当日收盘价未突破DWN
图形
####### 内容
- BOLL
- ENE
- MIKE
####### BOLL
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return BOLL(20);
//结果:
####### ENE
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ENE(10,6,6);
//结果:
####### MIKE
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return MIKE(10);
//结果:
当前值
####### 内容
- MIKEWEKR_v
- MIKEWEKS_v
- MIKEMIDR_v
- MIKEMIDS_v
- MIKESTOR_v
- MIKESTOS_v
- ENEUPR_v
- ENEDWN_v
- ENE_v
- BOLL_v
- BOLLUPR_v
- BOLLDWN_v
- BOLL_v_Ex
- BOLLUPR_v_Ex
- BOLLDWN_v_Ex
####### MIKEWEKR_v
算法
(1)M =(昨最高价+昨最低价+昨收盘价 )/3;
(2)MID =M的N日简单平均;
(3)HH =N日最高的最高价的3日指数移动平均;
(4)LL =N日最低的最低价的3日指数移动平均;
(5)WEKR =(2*MID-LL)的3日指数移动平均。范例
//计算白云机场截止日2011年9月8日的麦克支撑压力-初级压力线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MIKEWEKR_v(N);
return v;
//结果:7.29
####### MIKEWEKS_v
算法
(1)M =(昨最高价+昨最低价+昨收盘价 )/3;
(2)MID =M的N日简单平均;
(3)HH =N日最高的最高价的3日指数移动平均;
(4)LL =N日最低的最低价的3日指数移动平均;
(5)WEKS =(2*MID-HH)的3日指数移动平均。范例
//计算白云机场截止日2011年9月8日的麦克支撑压力-初级支撑线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MIKEWEKS_v(N);
return v;
//结果:6.87
####### MIKEMIDR_v
算法
(1)M =(昨最高价+昨最低价+昨收盘价 )/3;
(2)MID =M的N日简单平均;
(3)HH =N日最高的最高价的3日指数移动平均;
(4)LL =N日最低的最低价的3日指数移动平均;
(5)MIDR =(MID+HH-LL)的3日指数移动平均。范例
//计算白云机场截止日2011年9月8日的麦克支撑压力-中级压力线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MIKEMIDR_v(N);
return v;
//结果:7.54
####### MIKEMIDS_v
算法
(1)M =(昨最高价+昨最低价+昨收盘价 )/3;
(2)MID =M的N日简单平均;
(3)HH =N日最高的最高价的3日指数移动平均;
(4)LL =N日最低的最低价的3日指数移动平均;
(5)MIDS =(MID-HH+LL)的3日指数移动平均。范例
//计算白云机场截止日2011年9月8日的麦克支撑压力-中级支撑线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MIKEMIDS_v(N);
return v;
//结果:6.7
####### MIKESTOR_v
算法
(1)M =(昨最高价+昨最低价+昨收盘价 )/3;
(2)MID =M的N日简单平均;
(3)HH =N日最高的最高价的3日指数移动平均;
(4)LL =N日最低的最低价的3日指数移动平均;
(5)STOR =(2*HH-LL)的3日指数移动平均。范例
//计算白云机场截止日2011年9月8日的麦克支撑压力-强力压力线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MIKESTOR_v(N);
return v;
//结果:7.78
####### MIKESTOS_v
算法
(1)M =(昨最高价+昨最低价+昨收盘价 )/3;
(2)MID =M的N日简单平均;
(3)HH =N日最高的最高价的3日指数移动平均;
(4)LL =N日最低的最低价的3日指数移动平均;
(5)STOS=(2*LL-HH)的3日指数移动平均。范例
//计算白云机场截止日2011年9月8日的麦克支撑压力-强力支撑线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=MIKESTOS_v(N);
return v;
//结果:6.52
####### ENEUPR_v
算法
UPPER =(1+M1/100)*收盘价的N日简单平均。范例
//计算白云机场截止日2011年9月8日的轨道线上轨。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=25;
M1:=6
M2:=6;
v:=ENEUPR_v(N,M1,M2);
return v;
//结果:7.22
####### ENEDWN_v
算法
LOWER =(1-M2/100)*收盘价的N日简单平均。范例
//计算白云机场截止日2011年9月8日的轨道线下轨。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=25;
M1:=6
M2:=6;
v:=ENEDWN_v(N,M1,M2);
return v;
//结果:6.78
####### ENE_v
算法
(1)UPPER =(1+M1/100)*收盘价的N日简单平均;
(2)LOWER =(1-M2/100)*收盘价的N日简单平均;
(3)ENE =(UPPER+LOWER)/2。范例
//计算白云机场截止日2011年9月8日的轨道线中轨。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=25;
M1:=6
M2:=6;
v:=ENE_v(N,M1,M2);
return v;
//结果:7.22
####### BOLL_v
算法
BOLL=收盘价的N日简单平均。范例
//计算白云机场截止日2011年9月8日的布林线中轨。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=20;
v:=BOLL_v(N);
return v;
//结果:7.19
####### BOLLUPR_v
算法
(1)BOLL=收盘价的N日简单平均;
(2)UPR=BOLL+2*收盘价的N日标准差。范例
//计算白云机场截止日2011年9月8日的布林线上轨。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=20;
v:=BOLLUPR_v(N);
return v;
//结果:7.58
####### BOLLDWN_v
算法
BOLL=收盘价的N日简单平均;
DWN=BOLL-2*N天收盘价的标准差。范例
//计算白云机场截止日2011年9月8日的布林线下轨。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=20;
v:=BOLLDWN_v(N);
return v;
//结果:6.80
####### BOLL_v_Ex
算法
BOLL=收盘价的N日简单平均。范例
//计算白云机场截止日2011年9月8日的布林线中轨2。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=20;
P:=2;
v:=BOLL_v_Ex(N,P);
return v;
//结果:7.19
####### BOLLUPR_v_Ex
算法
(1)BOLL=收盘价的N日简单平均;
(2)UPR=BOLL+P*收盘价的N日标准差。范例
//计算白云机场截止日2011年9月8日的布林线上轨2。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=20;
P:=2;
v:=BOLLUPR_v_Ex(N,P);
return v;
//结果:7.58
####### BOLLDWN_v_Ex
算法
(1)BOLL=收盘价的N日简单平均;
(2)DWN=Z1-BOLL*收盘价的N日标准差。范例
//计算白云机场截止日2011年9月8日的布林线下轨2。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=20;
P:=2;
v:=BOLLDWN_v_Ex(N,P);
return v;
//结果:6.80
能量指标
内容
- 计算公式
- 图形
- 当前值
计算公式
####### 内容
- AR_f
- BR_f
- CR_f
- CYR_f
- Mass_f
- PCNT_f
- PSY_f
- VR_f
- WAD_f
####### AR_f
算法
X1=N日最高价累计之和– N日开盘价累计之和;
X2=N日开盘价累计之和– N日最低价累计之和;
AR=X1/X2*100;
Type=0,返回当前时间的人气意愿指标AR;
Type=1,返回当前时间往前推共nDay个人气意愿指标AR序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的人气意愿指标AR。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=AR_f(N,0);
return v;
//结果:155.08
范例二:
//计算白云机场截止2011年9月8日向前推共5天的人气意愿指标AR序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=AR_f(N,1);
return v;
//结果:
####### BR_f
算法
若最高价>昨收盘价,X1=最高价-最昨收盘价;
若最高价<=昨收盘价,X1=0;
若最低价<昨收盘价,X2=昨收盘价-最低价;
若最低价>=昨收盘价,X2=0;
BR=(N日X1累计之和)/(N日X2累计之和)*100;
Type=0,返回当前时间的人气意愿指标BR;
Type=1,返回当前时间往前推共nDay个人气意愿指标BR序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的人气意愿指标BR。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=BR_f(N,0);
return v;
//结果:113.5
范例二:
//计算白云机场截止2011年9月8日向前推共5天的人气意愿指标BR序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=BR_f(N,1);
return v;
//结果:
####### CR_f
算法
EX=(昨最高价+昨最低价)/2;
若最高价>EX,V1=最高价-EX;
若最高价<=EX,V1=0;
若最低价<EX,V2=EX-最低价;
若最低价>=EX,V2=0;
CR=(N日V1累计之和)/(N日V2累计之和)*100;
Type=0,返回当前时间的带状能量线;
Type=1,返回当前时间往前推共nDay个带状能量线序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的带状能量线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=CR_f(N,0);
return v;
//结果:118.47
范例二:
//计算白云机场截止2011年9月8日向前推共5天的带状能量线序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=CR_f(N,1);
return v;
//结果:
####### CYR_f
####### Mass_f
####### PCNT_f
####### PSY_f
算法
Z=N日上涨天数/N*100;
Type=0,返回当前时间的Z;
Type=1,返回当前时间往前推共nDay个Z序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的心理线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=PSY_f(N,0);
return v;
//结果:43.48
范例二:
//计算白云机场截止2011年9月8日向前推共5天的心理线序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=PSY_f(N,1);
return v;
//结果:
####### VR_f
####### WAD_f
算法
MIDA=收盘价-昨收盘价与最低价的较小值;
若收盘价<昨收盘价,MIDB=收盘价-昨收盘价与最高价的较大值;
若收盘价>=昨收盘价,MIDB=0;
若收盘价>昨收盘价,X=MIDA;
若收盘价<=昨收盘价,X=MIDB;
若N<>0,Z=N日的X累计之和;
若N=0,Z=上市以来的X累计之和;
Type=0,返回当前时间的Z;
Type=1,返回当前时间往前推共nDay个Z序列。
nDay由系统参数PN_nDay()设置,默认值为180。
与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()、复权基准日pn_rateday()、执行点数PN_nDay()相关范例
范例一:
//计算白云机场截止日2011年9月8日的威廉多空力度。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=WAD_f(N,0);
return v;
//结果:0.31
范例二:
//计算白云机场截止2011年9月8日向前推共5天的威廉多空力度序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_nday(),5);
N:=23;
v:=WAD_f(N,1);
return v;
//结果:
图形
####### 内容
- MaSS
- ARBR
- CR
- VOSC
- AD
- CYR
- PCNT
- VR
- PSY
- WAD
- VRSI
- VROC
- CDP
####### MaSS
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return MaSS(9,25,6);
//结果:
####### ARBR
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ARBR(24,6);
//结果:
####### CR
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return CR(26);
//结果:
####### VOSC
范例
Return VOSC('SH000001',inttodate(20140101),
inttodate(20140123),12,26);
//结果:
####### AD
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return AD(10);
//结果:
####### CYR
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return CYR(13,6);
//结果:
####### PCNT
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return PCNT(5,6);
//结果:
####### VR
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return VR(26,6);
//结果:
####### PSY
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return PSY(12);
//结果:
mcd
####### WAD
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return WAD(24,6);
//结果:
####### VRSI
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return VRSI(6);
//结果:
####### VROC
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return VROC(12,6);
//结果:
####### CDP
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return CDP();
//结果:
当前值
####### 内容
- MaSS_v
- AR_v
- BR_v
- CR_v
- PSY_v
- PCNT_v
- VR_v
- CYR_v
- WAD_v
####### MaSS_v
算法
(1)DIF =最高价-最低价;
(2)AHL =DIF的N1日简单平均;
(3)BHL =AHL的N1日简单平均;
(4)MASS =AHL/BHL的N2日累计之和。范例
//计算白云机场截止日2011年9月8日的梅斯线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N1:=9;
N2:=25;
v:=MaSS_v(N1,N2);
return v;
//结果:23.33
####### AR_v
算法
X1=(最高价-开盘价)的N日累计之和;
X2=(开盘价-最低价)的N日累计之和;
AR=X1/X2*100。范例
//计算白云机场截止日2011年9月8日的人气指标AR。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=26;
v:=AR_v(N);
return v;
//结果:117.86
####### BR_v
算法
若最高价>昨收盘价,X1=最高价-最昨收盘价;
若最高价<=昨收盘价,X1=0;
若最低价<昨收盘价,X2=昨收盘价-最低价;
若最低价>=昨收盘价,X2=0;
BR=(X1的N日累计之和)/(X2的N日累计之和)*100。范例
//计算白云机场截止日2011年9月8日的意愿指标BR值。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=26;
v:=BR_v(N);
return v;
//结果:84.35
####### CR_v
算法
(1)EX=(昨最高价+昨最低价)/2;
(2)若最高价>EX,X1=最高价-EX;
若最高价<=EX,X1=0;
(3)若最低价<EX,X2=EX-最低价;
若最低价>=EX,X2=0;
(4)CR=(X1的N日累计之和)/(X2的N日累计之和)*100。范例
//计算白云机场截止日2011年9月8日的带状能量线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=26;
v:=CR_v(N);
return v;
//结果:91.81
####### PSY_v
算法
心理线PSY =N日上涨天数/N*100。范例
//计算白云机场截止日2011年9月8日的心理线。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=12;
v:=PSY_v(N);
return v;
//结果:41.67
####### PCNT_v
算法
幅度比 =(收盘价-昨收盘价)/收盘价*100。范例
//计算白云机场截止日2011年9月8日的幅度比。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=10;
v:=PCNT_v(N);
return v;
//结果:3.6
####### VR_v
算法
(1)若收盘价>昨收盘价,B=成交量,L=E=0;
(2)若收盘价<昨收盘价,B=0,L=成交量,E=0;
(3)若收盘价=昨收盘价,B=0,L=0,E=成交量;
(4)EXB=B的N日累计之和;
(5)EXL=L的N日累计之和;
(6)EXE=E的N日累计之和;
(7)成交量变异率VR=(EXB2+EXE)/(EXL2+EXE)*100。范例
//计算白云机场截止日2011年9月8日的成交量变异率。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=24;
v:=VR_v(N);
return v;
//结果:110.56
####### CYR_v
算法
(1)EX =成交金额的N日指数移动平均(ema)/N日的成交量指数移动平均值(ema);
(2)市场强弱CYR =(当日EX/昨日EX-1)-1。范例
//计算白云机场截止日2011年9月8日的市场强弱。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=13;
v:=CYR_v(N);
return v;
//结果:1.12
####### WAD_v
算法
(1)若收盘价>昨收盘价,X=收盘价-昨收盘价与最低价的较小值;
若收盘价<昨收盘价,X=收盘价-昨收盘价与最高价的较大值;
若收盘价=昨收盘价,X=0;
(2)若N<>0,WAD=X的N日累计之和;
若N=0,WAD=上市以来的X累计之和。范例
//计算白云机场截止日2011年9月8日的威廉多空力度。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=23;
v:=WAD_v(N);
return v;
//结果:0.8
技术指标选股
内容
- MaGd_SS
- 中间函数
MaGd_SS
范例
SetSysParam(pn_date(),inttodate(20140123));
Return MaGd_SS("深证A股;上证A股",5,0.01,2);
//结果:
中间函数
####### 内容
- Xg_Model2_Call
- Xg_Model2_Call2
####### Xg_Model2_Call
范例
Return Xg_Model2_Call("深证A股;上证A股",
inttodate(20140123),5,10,1);
//结果:
####### Xg_Model2_Call2
范例
Return Xg_Model2_Call2("深证A股;上证A股",inttodate(20140101),
inttodate(20140123),5,10,1,1);
//结果:
趋势指标
内容
- 图形
- 当前值
- 计算公式
图形
####### 内容
- ASI
- CHO
- DMI
- DMA
- EMV
- MACD
- DPO
- UOS
- WVAD
- TRIX
- VPT
- XUECH
####### ASI
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return ASI(20);
//结果:
####### CHO
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return CHO(10,20,6);
//结果:
####### DMI
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return DMI(14);
//结果:
####### DMA
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return DMA(10,50,6);
//结果:
####### EMV
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return EMV(14,6);
//结果:
####### MACD
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return MACD(12,26,6);
//结果:
####### DPO
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20130123));
Return DPO(14,6);
//结果:
####### UOS
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20130123));
Return UOS(7,14,28,6);
//结果:
####### WVAD
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20130123));
Return WVAD(24,6);
//结果:
####### TRIX
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20130123));
Return TRIX(12,6);
//结果:
####### VPT
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20130123));
Return VPT(51,6);
//结果:
####### XUECH
范例
SetSysParam(PN_Stock(),'SZ000001');
SetSysParam(pn_date(),20130101T);
return XUECH(107,6);
结果:
当前值
####### 内容
- WVAD_v
- CCI_v
- UOS_v
- UOS_MA_v
- DMI_MDI_v
- DMI_PDI_v
- DBCD_v
- VPT_v
- CHO_v
- DMA_v
- DPO_v
- TRIX_v
- EMV_v
- ASI_v
- XDQR_XDQR_v
- MACD_DIF_v
- MACD_DEA_v
- MACD_MACD_v
- SAR_v
####### WVAD_v
算法
(1)X =(收盘价-开盘价)/(最高价-最低价)*成交量;
(2)WVAD= X的N日累计之和/10000。范例
//计算白云机场截止2011年9月8日的威廉变异离散量。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=24;
V:=WVAD_v(N);
return v;
//结果:1097.05
####### CCI_v
算法
(1)P =(最高价+最低价+收盘价)/3;
(2)V = P的N日简单平均;
(3)Q =|P-V|;
(4)AVE = Q的N日累计之和;
(5)CCI =(P-V)100 /(1.5AVE)。范例
//计算白云机场截止2011年9月8日的顺势指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:= CCI_v(N);
return v;
//结果:176.81
####### UOS_v
算法
(1)TH =最高价和昨收盘价中的较大值;
(2)TL =最低价和昨收盘价中的较小值;
(3)P =收盘价-TL;
(4)Q =TH-TL;
(5)ACC1 =P的N1日累计之和 / Q的N1日累计之和;
(6)ACC2 =P的N2日累计之和 / Q的N2日累计之和;
(7)ACC3 =P的N3日累计之和 / Q的N3日累计之和;
(8)UOS =(ACC1N2N3+ACC2N1N3+ACC3N1N2)100 /(N1N2+N1N3+N2N3)。范例
//计算白云机场截止2011年9月8日的终极指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=7;
N2:=14;
N3:=28;
v:=UOS_v(N1,N2,N3);
RestoreSystemParameters(oV);
return v;
//结果:63.61
####### UOS_MA_v
算法
(1)TH =最高价和昨收盘价中的较大值;
(2)TL =最低价和昨收盘价中的较小值;
(3)P =收盘价-TL;
(4)Q =TH-TL;
(5)ACC1 =P的N1日累计之和 / Q的N1日累计之和;
(6)ACC2 =P的N2日累计之和 / Q的N2日累计之和;
(7)ACC3 =P的N3日累计之和 / Q的N3日累计之和;
(8)UOS =(ACC1N2N3+ACC2N1N3+ACC3N1N2)100 /(N1N2+N1N3+N2N3);
(9)MAUOS =M日UOS的简单平均。范例
//计算白云机场截止2011年9月8日的终极指标的简单平均。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=7;
N2:=14;
N3:=28;
M:=6;
v:=UOS_MA_v(N1,N2,N3,M);
RestoreSystemParameters(oV);
return v;
//结果:43.54
####### DMI_MDI_v
算法
(1)P =(最高价-最低价)和 |最高价-昨收盘价)中的较大值
(2)TR =P和 |最低价-昨收盘价)中的较大值的N日累计之和;
(3)HD =最高价-昨日最高价;
(4)LD =昨日最低价-最低价;
(5)若LD>0且LD>HD,则MM =LD,否则MM =0;
(6)DMM =N日MM累计之和;
(7)MDI =DMM*100 / TR。范例
//计算白云机场截止2011年9月8日的趋向指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=12;
v:= DMI_MDI_v(N);
RestoreSystemParameters(oV);
return v;
//结果:18.67
####### DMI_PDI_v
算法
(1)P =(最高价-最低价)和 |最高价-昨收盘价)中的较大值
(2)TR =P和 |最低价-昨收盘价)中的较大值的N日累计之和;
(3)HD =最高价-昨日最高价;
(4)LD =昨日最低价-最低价;
(5)若HD>0且HD>LD,则MP =HD,否则MD =0;
(6)DMP =N日MD累计之和;
(7)PDI =DMP*100 / TR。范例
//计算白云机场截止2011年9月8日的趋向指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=12;
v:= DMI_PDI_v(N);
RestoreSystemParameters(oV);
return v;
//结果:45.78
####### DBCD_v
算法
BIAS =(收盘价-收盘价的NI日简单平均)/ 收盘价的N1日简单平均*100;
DIF =BIAS - 前N2日BIAS;
DBCD=DIF的M日平滑移动平均,权重为1。范例
//计算白云机场截止2011年9月8日的异同离差乖离率。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=5;
N2:=16;
M:=17;
v:=DBCD_v(N1,N2,M);
RestoreSystemParameters(oV);
return v;
//结果:0.37
####### VPT_v
算法
(1)P =成交量*(收盘价-昨收盘价)/昨收盘价;
(2)Z =P的N日累计之和;
(3)若N=0,则N=上市日到当前时间的交易日数,否则N以实际赋值为准。范例
//计算白云机场截止2011年9月8日的量价曲线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=51;
v:=VPT_v(N);
RestoreSystemParameters(oV);
return v;
//结果:449829.01
####### CHO_v
算法
(1)N =上市日到当前时间的交易日数;
(2)P =成交量*(2*收盘价-最高价-最低价)/(最高价+最低价);
(3)Ex =P的N日累计之和;
(4)CHO=Ex的N1日简单平均 - Ex的N2日简单平均。范例
//计算白云机场截止2011年9月13日的佳庆指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=10;
N2:=20;
v:=CHO_v(N1,N2);
RestoreSystemParameters(oV);
return v;
//结果:16787.25
####### DMA_v
算法
DMA =N1日收盘价的简单平均-N2日收盘价的简单平均。范例
//计算白云机场截止2011年9月13日的收盘价平均差。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=10;
N2:=20;
v:=DMA_v(N1,N2);
RestoreSystemParameters(oV);
return v;
//结果:0.01
####### DPO_v
算法
DPO =收盘价 - 前N/2+1日的收盘价的N日均值。范例
//计算白云机场截止2011年9月13日的区间震荡线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=20;
v:=DPO_v(N);
RestoreSystemParameters(oV);
return v;
//结果:-0.08
####### TRIX_v
算法
Ex1 =收盘价的N日指数移动平均(ema);
Ex2 =Ex1的N日指数移动平均(ema);
Ex =Ex2的N日指数移动平均(ema);
Z =(Ex - 昨日Ex)/ 昨日Ex*100。范例
//计算白云机场截止2011年9月13日的三重指数平均线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=12;
v:=TRIX_v(N);
RestoreSystemParameters(oV);
return v;
//结果:-0.19
####### EMV_v
算法
(1)Z1 =成交量的N日简单平均 / 成交量;
(2)Z2 =(最高价+最低价-昨日最高价-昨日最低价)/(最高价+最低价)*100;
(3)Z3 =Z2Z1(最高价-最低价)/最高价-最低价的N日简单平均;
(4)EMV =Z3的N日简单平均。范例
//计算白云机场截止2011年9月13日的波动指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=14;
v:=EMV_v(N);
RestoreSystemParameters(oV);
return v;
//结果:0.18
####### ASI_v
算法
(1)ZF =(收盘价-昨日收盘价)/昨日收盘价;
(2)ASI =ZF*VOL的N日累计之和。范例
//计算白云机场截止2011年9月13日的价量趋势。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=10;
v:= ASI_v(N);
RestoreSystemParameters(oV);
return v;
//结果:198368.63
####### XDQR_XDQR_v
算法
(1)P =收盘价的N1日简单平均;
(2)zf1 =(P /前N2日的(P - 1))*100;
(3)zf2 =当前股票的zf1;
(4)v1 = zf1的M日简单平均;
(5)v2 = zf2的M日简单平均;
(6)相对强弱v3 =v1-v2,v3>0,则强于大盘,v3<0,则弱于大盘。范例
//计算白云机场截止2011年9月13日的相对强弱。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=13;
N2:=7;
M:=5;
v:=XDQR_XDQR_v(N1,N2,M);
RestoreSystemParameters(oV);
return v;
//结果:0.32
####### MACD_DIF_v
算法
DIF =Short日收盘价的移动平均 - Long日收盘价的移动平均。范例
//计算白云机场截止2011年9月8日的平滑移动平均DIF线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
Short:=12;
Long:=26;
M:=9;
v:=MACD_DIF_v(Short,Long,M);
RestoreSystemParameters(oV);
return v;
//结果:-0.1
####### MACD_DEA_v
算法
(1)DIF =收盘价的Short日移动平均 - 收盘价的Long日移动平均;
(2)DEA =DIF的M日移动平均。范例
//计算白云机场截止2011年9月8日的平滑移动平均DEA线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
Short:=12;
Long:=26;
M:=9;
v:=MACD_DEA_v(Short,Long,M);
RestoreSystemParameters(oV);
return v;
//结果:-0.15
####### MACD_MACD_v
算法
(1)DIF =收盘价的Short日移动平均 - 收盘价的Long日移动平均;
(2)DEA =DIF的M日移动平均;
(3)MACD =2*(DIF - DEA)。范例
//计算白云机场截止2011年9月8日的平滑移动平均MACD线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
Short:=12;
Long:=26;
M:=9;
v:=MACD_MACD_v(Short,Long,M);
RestoreSystemParameters(oV);
return v;
//结果:0.1
####### SAR_v
范例
//计算白云机场截止2011年9月13日的抛物线指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_nday(),5);
v:=SAR_v(4,2,2,20,0);
RestoreSystemParameters(oV);
return v;
//结果:7.01
计算公式
####### 内容
- WVAD_f
- CCI_f
- UOS_f
- DMI_f
- DBCD_f
- VPT_f
- CHO_f
- DMA_f
- DPO_f
- TRIX_f
- EMV_f
- ASI_f
- XDQR_f
- MACD_f
- MACD_Ex
- SAR_f
- Xuech1_f
- Tower_f
- Gettower
- XUECH_f
####### WVAD_f
算法
(1)X =(收盘价-开盘价)/(最高价-最低价)*成交量;
(2)Z = N日X累计之和/10000;
(3)ZMA =M日Z的简单平均;
(4)Type=0,返回当前时间的威廉变异离散量Z、ZMA值;
(5)Type=1,返回当前时间往前推共nDay个威廉变异离散量Z、ZMA的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月8日的威廉变异离散量。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=24;
M:=6;
V:=WVAD_f(N,M,0);
return v;
//结果:
范例二:
//计算白云机场截止2011年9月8日的向前推共5日威廉变异离散量序列。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
SetSysParam(pn_nday(),5);
N:=24;
M:=6;
V:=WVAD_f(N,M,1);
Return v;
//结果:
####### CCI_f
算法
(1)P =(最高价+最低价+收盘价)/3;
(2)V = N日P的简单平均;
(3)Q =|P-V|;
(4)AVE = Q的N日累计之和;
(5)顺势指标 =(P-V)100 /(1.5AVE);
(6)Type=0,返回当前时间的顺势指标值(一维数组);
(7)Type=1,返回当前时间的顺势指标值。范例
//计算白云机场截止2011年9月8日的顺势指标。
oV:=BackUpSystemParameters2();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_date(),inttodate(20110908));
N:=6;
v:= CCI_f (N,1);
RestoreSystemParameters(oV);
return v;
//结果:176.81
####### UOS_f
算法
(1)TH =最高价和昨收盘价中的较大值;
(2)TL =最低价和昨收盘价中的较小值;
(3)P =收盘价-TL;
(4)Q =TH-TL;
(5)ACC1 =N1日P的累计之和 / N1日Q的累计之和;
(6)ACC2 =N2日P的累计之和 / N2日Q的累计之和;
(7)ACC3 =N3日P的累计之和 / N3日Q的累计之和;
(8)UOS =(ACC1N2N3+ACC2N1N3+ACC3N1N2)100 /(N1N2+N1N3+N2N3);
(9)MAUOS =M日UOS的简单平均;
(10)Type=0,返回当前时间的终极指标UOS、MAUOS;
(11)Type=1,返回当前时间往前推共nDay个终极指标UOS、MAUOS的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
返回结果(部分结果截图):
//计算白云机场截止2011年9月8日的终极指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=7;
N2:=14;
N3:=28;
M:=6;
v:=UOS_f(N1,N2,N3,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
//计算白云机场截止2011年9月8日的向前推共5日的终极指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N1:=7;
N2:=14;
N3:=28;
M:=6;
v:=UOS_f(N1,N2,N3,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### DMI_f
算法
(1)P =(最高价-最低价)和 |最高价-昨收盘价)中的较大值
(2)TR =P和 |最低价-昨收盘价)中的较大值的N日累计之和;
(3)HD =最高价-昨日最高价;
(4)LD =昨日最低价-最低价;
(5)若HD>0且HD>LD,则MP =HD,否则MD =0;
(6)若LD>0且LD>HD,则MM =LD,否则MM =0;
(7)DMP =N日MD累计之和;
(8)DMM =N日MM累计之和;
(9)PDI =DMP*100 / TR;
(10)MDI =DMM*100 / TR;
(11)ADX =|MDI-PDI| / (MDI+PDI)*100 的M日简单平均;
(12)ADXR =(ADX+前M日ADX)/2;
(13)Type=0,返回当前时间的PDI、MDI、ADX、ADXR;
(14)Type=1,返回当前时间往前推共nDay个PDI、MDI、ADX、ADXR的区间序列值;nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月8日的趋向指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=14;
M:=6;
v:= DMI_f(N,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月8日向前推共5日的趋向指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N:=14;
M:=6;
v:= DMI_f(N,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### DBCD_f
算法
(1)BIAS =(收盘价-NI日收盘价的简单平均)/N1日收盘价的简单平均*100;
(2)DIF =BIAS - 前N2日BIAS;
(3)DBCD=DIF的M日平滑移动平均;
(4)Type=0,返回当前时间的DBCD;
(5)Type=1,返回当前时间往前推共nDay个DBCD的区间序列值;nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月8日的异同离差乖离率。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=5;
N2:=16;
M:=17;
v:=DBCD_f(N1,N2,M,0);
RestoreSystemParameters(oV);
return v;
//结果:0.37
范例二:
///计算白云机场截止2011年9月8日向前推共5日的异同离差乖离率。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N1:=5;
N2:=16;
M:=17;
v:=DBCD_f(N1,N2,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### VPT_f
算法
(1)P =成交量*(收盘价-昨收盘价)/昨收盘价;
(2)Z =N日P的累计之和;
(3)ZMA=Z的M日简单平均;
(4)若N=0,则N=上市日到当前时间的交易日数,否则N以实际赋值为准;
(5)Type=0,返回当前时间的Z、ZMA;
(6)Type=1,返回当前时间往前推共nDay个Z、ZMA的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月8日的量价曲线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=51;
M:=6;
v:=VPT_f(N,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月8日向前推共5日的量价曲线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N:=51;
M:=6;
v:=VPT_f(N,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### CHO_f
算法
(1)N =上市日到当前时间的交易日数;
(2)P =成交量*(2*收盘价-最高价-最低价)/(最高价+最低价);
(3)Ex =N日P的累计之和;
(4)CHO=N1日Ex的简单平均 - N2日Ex的简单平均;
(5)CHOMa =M日CHO的简单平均;
(6)Type=0,返回当前时间的CHO、CHOMa;
(7)Type=1,返回当前时间往前推共nDay个Z、ZMACHO、CHOMa的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月13日的佳庆指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=10;
N2:=20;
M:=3;
v:=CHO_f(N1,N2,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月13日向前推共5日的佳庆指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N1:=10;
N2:=20;
M:=3;
v:=CHO_f(N1,N2,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### DMA_f
算法
(1)Z =N1日收盘价的简单平均-N2日收盘价的简单平均;
(2)ZMA =M日Z的简单平均;
(3)Type=0,返回当前时间的Z、ZMA;
(4)Type=1,返回当前时间往前推共nDay个Z、ZMA的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月13日的收盘价平均差。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=10;
N2:=20;
M:=3;
v:=DMA_f(N1,N2,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月13日向前推共5日的收盘价平均差。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N1:=10;
N2:=20;
M:=3;
v:=DMA_f(N1,N2,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### DPO_f
算法
(1)DPO =收盘价 - 前N/2+1日的收盘价N日均值;
(2)DPOMA =DPO的M日简单平均;
(3)Type=0,返回当前时间的DPO、DPOMA;
(4)Type=1,返回当前时间往前推共nDay个DPO、DPOMA的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月13日的区间震荡线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=20;
M:=6;
v:=DPO_f(N,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月13日向前推共5日的区间震荡线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_nday(),5);
setsysparam(pn_rate(),0);
N:=20;
M:=6;
v:=DPO_f(N,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### TRIX_f
算法
(1)Ex1 =N日收盘价的移动平均;
(2)Ex2 =N日Ex1的移动平均;
(3)Ex =N日Ex2的移动平均;
(4)TRIX =(Ex-昨日Ex)/昨日Ex*100;
(5)TRIXMA =TRIX的M日简单平均;
(6)Type=0,返回当前时间的TRIX、TRIXMA;
(7)Type=1,返回当前时间往前推共nDay个TRIX、TRIXMA的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月13日的三重指数平均线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=12;
M:=20;
v:=TRIX_f(N,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月13日向前推共5日的三重指数平均线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N:=12;
M:=20;
v:=TRIX_f(N,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### EMV_f
算法
(1)Z1 =N日成交量的简单平均 / 成交量;
(2)Z2 =(最高价+最低价-昨日最高价-昨日最低价)/(最高价+最低价)*100;
(3)Z3 =Z2Z1(最高价-最低价)最高价-最低价的/N日简单平均;
(4)EMV =Z3的N日简单平均;
(5)EMVMA =EMV的M日简单平均;
(6)Type=0,返回当前时间的EMV、EMVMA;
(7)Type=1,返回当前时间往前推共nDay个EMV、EMVMA的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月13日的波动指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=14;
M:=9;
v:=EMV_f(N,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月13日向前推共5日的波动指标。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N:=14;
M:=9;
v:=EMV_f(N,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### ASI_f
算法
(1)AA = |最高价-昨日收盘价|;
(2)BB = |最低价-昨日收盘价|;
(3)CC = |最高价-昨日最低价|;
(4)DD = |昨日收盘价-昨日开盘价|;
(5)若AA>BB且AA>CC,则R=AA+BB/2+DD/4;
(6)若BB>CC且BB>AA,则R=BB+AA/2+DD/4;
(7)若CC>AA且CC>BB,则R=CC+DD/4;
(8)X =(收盘价-昨收盘价)+(收盘价-开盘价)/2+(昨日收盘价-昨日开盘价);
(9)Y =16X / R*(AA和BB中的较大值);
(10)Z =N日Y的累计之和;
(11)Type=0,返回当前时间的价量趋势Z;
(12)Type=1,返回当前时间往前推共nDay个Z的区间序列值;
nDay由系统参数PN_nDay()设置,默认值为180。范例
范例一:
//计算白云机场截止2011年9月13日的价量趋势。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N:=10;
v:=ASI_f(N,0);
RestoreSystemParameters(oV);
return v;
//结果:3.03
范例二:
///计算白云机场截止2011年9月13日向前推共5日的价量趋势。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N:=10;
v:=EMV_f(N,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### XDQR_f
算法
(1)P =N1日收盘价的简单平均;
(2)zf1 =(P /前N2日的P - 1)*100;
(3)zf2 =当前股票的zf1;
(4)v1 = M日zf1的简单平均;
(5)v2 = M日zf2的简单平均;
(6)v3 =v1-v2,即相对强弱,v3>0,则强于大盘,v3<0,则弱于大盘;
(7)Type=0,返回当前时间的个股强度v1、大盘强度v2、相对强度v3;
(8)Type=1,返回当前时间往前推共nDay个个股强度v1、大盘强度v2、相对强度v3序列;nDay由系统参数PN_nDay()设置,默认值为180。
(9)Type=2,返回个股强度v1是否向上穿越大盘强度v2;
(10)Type=3,返回个股强度v1是否向下穿越大盘强度v2。范例
范例一:
//计算白云机场截止2011年9月13日的相对强弱。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
N1:=13;
N2:=7;
M:=5;
v:=XDQR_f(N1,N2,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月13日向前推共5日的相对强弱。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
N1:=13;
N2:=7;
M:=5;
v:=XDQR_f(N1,N2,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### MACD_f
算法
(1)DIF =Short日收盘价的移动平均 - Long日收盘价的移动平均;
(2)DEA =M日DIF的移动平均;
(3)MACD =2*(DIF - DEA);
(4)Type=0,返回当前时间的DIF、DEA、MACD;
(5)Type=1,返回当前时间往前推共nDay个DIF、DEA、MACD区间序列;nDay由系统参数PN_nDay()设置,默认值为180;
(6)Type=2,返回DIF是否上穿DEA;
(7)Type=3,返回DIF是否下穿DEA;
(8)Type=4,返回是否DIF上穿DEA且DIF>=0,DEA>=0 ;
(9)Type=5,返回是否DIF下穿DEA且DIF>=0,DEA>=0;
(10)Type=6,返回是否DIF上穿DEA且DIF<=0,DEA<=0;
(11)Type=7,返回是否DIF下穿DEA且DIF<=0,DEA<=0。范例
//计算白云机场截止2011年9月8日的平滑异同平均DIF线、EDA线和MACD线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110908));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
Short:=12;
Long:=26;
M:=9;
v:=MACD_f(Short,Long,M,0);
RestoreSystemParameters(oV);
return v;
//结果:
范例二:
///计算白云机场截止2011年9月8日向前推共5日的平滑异同平均DIF线、EDA线和MACD线。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_rate(),0);
setsysparam(pn_nday(),5);
Short:=12;
Long:=26;
M:=9;
v:=MACD_f(Short,Long,M,1);
RestoreSystemParameters(oV);
return v;
//结果:
####### MACD_Ex
算法
(1)根据每个close数据,计算每个时间点的短期移动平均数据和长期移动平均数据;
其中,短期移动平均数据放在字段['short']中,['short']=前一时间点的['short']_(shortN-1)/(shortN+1)+当前时间点的收盘close _ 2 / (shortN+1)
长期移动平均数据放在字段['long']中,['long']= 前一时间点的['long']_(longN-1)/(longN+1)+当前时间点的收盘close _ 2 / (longN+1)
(2)DIF =['short'] - ['long'];
(3)DEA =前一时间点的DEA*(M-1)/(M+1)+当前时间点的DIF*2/(m+1);
(4)MACD =2*(DIF-DEA)。范例
//利用数据表arrData中的数据计算MACD值。
Short:=12;
Long:=26;
M:=9;
arrData:=array(("date":inttodate(20180904),"close":12.10),
("date":inttodate(20180903),"close":12.31),
("date":inttodate(20180831),"close":12.21));
Return MACD_Ex(Short,Long,M,arrData);
//结果:
####### SAR_f
范例
//计算白云机场截止2011年9月13日的抛物线指标和行情状态。
oV:=BackUpSystemParameters();
setsysparam(pn_stock(),'SH600004');
setsysparam(pn_date(),inttodate(20110913));
setsysparam(pn_cycle(),cy_day());
setsysparam(pn_nday(),5);
v:=SAR_f(4,2,2,20);
RestoreSystemParameters(oV);
return v;
//结果:
####### Xuech1_f
算法VAR2 = 收盘价*成交量(手)
VAR3 = (VAR2的3日指数移动平均/成交量(手)的3日指数移动平均+VAR2的6日指数移动平均/成交量(手)的6日指数移动平均+VAR2的12日指数移动平均/成交量(手)的12日指数移动平均+VAR2的24日指数移动平均/成交量(手)的24日指数移动平均)/4的N日指数移动平均
SUP = 1.06*VAR3
SDN = VAR3*0.94
VAR4 = 收盘价的9日指数移动平均
LUP = VAR4*1.14的5日指数移动平均
LDN = VAR4*0.86的5日指数移动平均范例
// "SZ000002"在2020-09-24的通道值
SetSysParam(pn_stock(),"SZ000002");
SetSysParam(PN_Date(),20200924T);
return XUECH1_f(2,0);
返回:
####### Tower_f
范例
// "SZ000002"在20140619日的宝塔线数据
setsysparam(pn_stock(),"SZ000002");
setsysparam(pn_date(),20140619T);
setsysparam(pn_cycle(),cy_day());
return Tower_f(0);
返回:
####### Gettower
范例
//取万科A最近1000个交易日的守塔线数据
setsysparam(pn_stock(),'SZ000002');
setsysparam(pn_date(),20211220T);
r:= Nday(1000,'time',datetostr(sp_time()),'close',close());
return getTower(r);
返回结果(部分结果截图):
####### XUECH_f
算法
AA = (2*收盘价+最高价+最低价)/4的5日简单移动平均
通道1 = AA*N/100
通道2 = AA*(200-N)/100
CC = abs(2*收盘价+最高价+最低价)/4-ma(收盘价,20))/ma(收盘价,20日)
DD = ma(收盘价,CC)
通道3 = (1+M/100)*DD
通道4 = (1-M/100)*DD范例
// "SZ000002"在2020-09-24的通道值
SetSysParam(pn_stock(),"SZ000002");
SetSysParam(PN_Date(),20200924T);
return XUECH_f(102,7,0);
结果:
天软指标
内容
- CloseMorethanMa
- RegressLine
- BuyVsSellVolDiff
- BARSLAST
CloseMorethanMa
范例
SetSysParam(pn_stock(),'SH000001');
Return CloseMorethanMa(inttodate(20130501),inttodate(20130706),20,0);
//结果:
RegressLine
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return RegressLine(60);
//结果:
BuyVsSellVolDiff
范例
SetSysParam(pn_stock(),'SH000001');
Return BuyVsSellVolDiff(inttodate(20130501),inttodate(20130706));
//结果:
BARSLAST
范例
SetSysParam(PN_Stock(),'SZ000001');
SetSysParam(pn_date(),20130101T);
return BARSLAST(@close()<ma(close(),5));
结果:5
主图指标
内容
- KLineAndBoll2
- KLineAndMA
- KLineBetweenDay
- KLineData
- KLine
- KLineWithBoll
- KLineWithBidAsk
KLineAndBoll2
范例
setsysparam(pn_stock(),'SH600000');
setsysparam(pn_date(),inttodate(20140123));
return KLineAndBoll2(KLine(5,10,20,60),BOLL(5));
//结果:
KLineAndMA
范例
setsysparam(pn_stock(),'SH600000');
setsysparam(pn_date(),inttodate(20140123));
Return KLineAndMA(KLine(5,10,20,60),BOLL(5));
//结果:
KLineBetweenDay
范例
SetSysParam(pn_stock(),'SH000001');
Return KLineBetweenDay(inttodate(20130501),inttodate(20130706),5,10,20,60);
//结果:
KLineData
范例
Return KLineData("SH600206",inttodate(20130501),inttodate(20130706));
//结果:
KLine
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return KLine(5,10,20,60);
//结果:
KLineWithBoll
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return KLineWithBoll(5,10,20,60,26);
//结果:
KLineWithBidAsk
范例
SetSysParam(pn_stock(),'SH000001');
SetSysParam(pn_date(),inttodate(20140123));
Return KLineWithBidAsk(5,10,20,60);
//结果:
Alpha101_Test
范例
return Alpha101_Test('申万非银金融',20201231T);
结果: