技术分析指标使用说明

提供技术分析指标接口介绍及使用方法

(温馨提示:鉴于内容太多, 可使用Ctrl + F进行搜索)

感谢您使用量化回测平台,如果有使用问题,请您通过邮件的方式告诉我们,谢谢。

客服热线:0571-26695555-2-1

邮箱:service.PBOX@hundsun.com

指标因子来源

我们基于通达信、东方财富、同花顺等的公式,提供更多技术分析指标因子

下文给出了详细介绍包括公式的API、参数说明、返回值的结果及类型说明、备注(相较于上述三家结果及算法的比对)、用法注释及示例,旨在帮助您更方便、更快速的在策略研究中使用这些因子函数。

超买超卖型

ACCER-幅度涨速

ACCER(security_list, check_date, N = 8)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N

返回:

  • ACCER 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 0.0013989466754443464, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0.024078586658544048, ‘601211.XSHG’: -0.0056372951942572323}

备注:

  • 返回结果与通达信一致,东方财富和同花顺没有该指标
  • 计算方式与通达信相同,东方财富和同花顺没有该指标

用法注释:

  • 算法:先求出斜率,再对其价格进行归一

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 ACCER 值
ACCER1 = ACCER(security_list1, check_date='20170104', N = 8)
print(ACCER1[security_list1])

# 输出 security_list2 的 ACCER 值
ACCER2 = ACCER(security_list2, check_date='20170104', N = 8)
for stock in security_list2:
    print(ACCER2[stock])

ADTM-动态买卖气指标

ADTM(security_list, check_date, N = 23, M = 8)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • ADTM和MAADTM 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 0.49999999999999584, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0.83612040133779286, ‘601211.XSHG’: -0.050991501416427533}, {‘000001.XSHE’: 0.46909197819443404, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0.79181488308861514, ‘601211.XSHG’: 0.10434158941106236})

备注:

  • 返回结果与通达信,同花顺和东方财富一致
  • 计算方式与通达信,同花顺和东方财富相同

用法注释:

  1. 该指标在+1到-1之间波动;
  2. 低于-0.5时为很好的买入点,高于+0.5时需注意风险.

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 ADTM 值
ADTM1, MAADTM1 = ADTM(security_list1, check_date='20170104', N = 23, M = 8)
print(ADTM1[security_list1])
print(MAADTM1[security_list1])

# 输出 security_list2 的 ADTM 值
ADTM2, MAADTM2 = ADTM(security_list2, check_date='20170104', N = 23, M = 8)
for stock in security_list2:
    print(ADTM2[stock])
    print(MAADTM2[stock])

BIAS_QL-乖离率_传统版

BIAS_QL(security_list, check_date, N = 6, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • BIAS和BIASMA 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 48.10992396473096, ‘603177.XSHG’: nan, ‘000002.XSHE’: 76.922476397442992, ‘601211.XSHG’: 42.883942027049542}, {‘000001.XSHE’: 44.033385880780266, ‘603177.XSHG’: nan, ‘000002.XSHE’: 79.616029960653222, ‘601211.XSHG’: 32.35472793345135})

备注:

  • 返回结果与通达信和东方财富一致,同花顺没有该指标
  • 计算方式与通达信和东方财富相同,同花顺没有该指标

用法注释:

  1. 因为BIAS_QL的计算公式与BIAS36相似,而常见的炒股软件中均没有找到BIAS_QL的用法注释,所以此处使用了BIAS36的用法注释;
  2. 本指标的乖离极限值随个股不同而不同,使用者可利用参考线设定,固定其乖离范围。※一般6-12BIAS信号的可靠度比3-6BIAS佳;
  3. 当股价的正乖离扩大到一定极限时,股价会产生向下拉回的作用力;
  4. 当股价的负乖离扩大到一定极限时,股价会产生向上拉升的作用力;
  5. 本指标可设参考线。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 BIAS_QL 值
BIAS1, BIASMA1 = BIAS_QL(security_list1, check_date = '20170104', N = 6, M = 6)
print(BIAS1[security_list1]) 
print(BIASMA1[security_list1]) 

# 输出 security_list2 的 BIAS_QL 值
BIAS2, BIASMA2 = BIAS_QL(security_list2, check_date = '20170104', N = 6, M = 6)
for stock in security_list2:
    print(BIAS2[stock]) 
    print(BIASMA2[stock])

BIAS36-三六乖离

BIAS36(security_list, check_date, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • M:统计的天数 M

返回:

  • BIAS36, BIAS612和MABIAS 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 0.021666666666666501, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0.92333333333333201, ‘601211.XSHG’: -0.2083333333333357}, {‘000001.XSHE’: -0.054999999999999716, ‘603177.XSHG’: nan, ‘000002.XSHE’: 1.1916666666666735, ‘601211.XSHG’: -0.37666666666667226}, {‘000001.XSHE’: -0.020555555555556992, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0.65916666666666279, ‘601211.XSHG’: -0.17138888888888873})

备注:

  • 返回结果与通达信和东方财富一致,同花顺没有该指标
  • 计算方式与通达信和东方财富相同,同花顺没有该指标

用法注释:

  1. 本指标的乖离极限值随个股不同而不同,使用者可利用参考线设定,固定其乖离范围。※一般6-12BIAS信号的可靠度比3-6BIAS佳;
  2. 当股价的正乖离扩大到一定极限时,股价会产生向下拉回的作用力;
  3. 当股价的负乖离扩大到一定极限时,股价会产生向上拉升的作用力;
  4. 本指标可设参考线。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 BIAS36 值
BIAS36_1, BIAS612_1, ABIAS_1 = BIAS36(security_list1, check_date='20170104', M = 6)
print(BIAS36_1[security_list1]) 
print(BIAS612_1[security_list1]) 
print(ABIAS_1[security_list1]) 

# 输出 security_list2 的 BIAS36 值
BIAS36_2, BIAS612_2, ABIAS_2 = BIAS36(security_list2, check_date='20170104', M = 6)
for stock in security_list2:
    print(BIAS36_2[stock]) 
    print(BIAS612_2[stock]) 
    print(ABIAS_2[stock])

DKX-多空线

DKX(security_list, check_date, M = 10)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • M:统计的天数 M

返回:

  • DKX和MADKX 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 8.7320238095238096, ‘603177.XSHG’: nan, ‘000002.XSHE’: 18.6065, ‘601211.XSHG’: 18.081222222222227}, {‘000001.XSHE’: 8.7608388888888875, ‘603177.XSHG’: nan, ‘000002.XSHE’: 16.825250793650795, ‘601211.XSHG’: 18.38326587301588})

备注:

  • 返回结果与通达信和东方财富一致,同花顺没有该指标
  • 计算方式与通达信和东方财富相同,同花顺没有该指标

用法注释:

  1. 当多空线上穿其均线时为买入信号;
  2. 当多空线下穿其均线时为卖出信号。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 DKX 值
DKX1,MADKX1 = DKX(security_list1, check_date='20170104', M = 10)
print(DKX1[security_list1]) 
print(MADKX1[security_list1]) 

# 输出 security_list2 的 DKX 值
DKX2,MADKX2 = DKX(security_list2, check_date='20170104', M = 10)
for stock in security_list2:
    print(DKX2[stock])
    print(MADKX2[stock])

KD-随机指标KD

KD(security_list, check_date, N = 9, M1 = 3, M2 = 3)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M1:统计的天数 M1
  • M2:统计的天数 M2

返回:

  • K和D 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 76.634909558440839, ‘603177.XSHG’: nan, ‘000002.XSHE’: 31.205826728484286, ‘601211.XSHG’: 65.666306018342183}, {‘000001.XSHE’: 77.290976650878633, ‘603177.XSHG’: nan, ‘000002.XSHE’: 32.552242430383409, ‘601211.XSHG’: 64.593395785918702})

备注:

  • 返回结果与通达信,同花顺和东方财富一致
  • 计算方式与通达信,同花顺和东方财富相同

用法注释:

  1. KD的计算公式与SKDJ的不太大,而常见的炒股软件中均没有找到KD的用法注释,所以该处的用法注释使用的是公式SKDJ的;
  2. 指标>80 时,回档机率大;指标<20 时,反弹机率大;
  3. K在20左右向上交叉D时,视为买进信号;
  4. K在80左右向下交叉D时,视为卖出信号;
  5. SKDJ波动于50左右的任何讯号,其作用不大。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 KD值
K1, D1 = KD(security_list1, check_date = '20170104', N = 9, M1 = 3, M2 = 3)
print(K1[security_list1]) 
print(D1[security_list1]) 

# 输出 security_list2 的 KD 值
K2, D2 = KD(security_list2, check_date = '20170104', N = 9, M1 = 3, M2 = 3)
for stock in security_list2:
    print(K2[stock]) 
    print(D2[stock])

SKDJ-慢速随机指标

SKDJ(security_list, check_date, N = 9, M = 3)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • K和D 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 43.670179685638736, ‘603177.XSHG’: nan, ‘000002.XSHE’: 88.536829377842508, ‘601211.XSHG’: 11.706561251360608}, {‘000001.XSHE’: 39.385998813653607, ‘603177.XSHG’: nan, ‘000002.XSHE’: 83.231798914083683, ‘601211.XSHG’: 14.897182159244849})

备注:

  • 返回结果与通达信,同花顺和东方财富一致
  • 计算方式与通达信,同花顺和东方财富相同

用法注释:

  1. 指标>80 时,回档机率大;指标<20 时,反弹机率大;
  2. K在20左右向上交叉D时,视为买进信号;
  3. K在80左右向下交叉D时,视为卖出信号;
  4. SKDJ波动于50左右的任何讯号,其作用不大。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 SKDJ 值
K1, D1 = SKDJ(security_list1, check_date = '20170104', N = 9, M = 3)
print(K1[security_list1]) 
print(D1[security_list1]) 

# 输出 security_list2 的 SKDJ 值
K2, D2 = SKDJ(security_list2, check_date = '20170104', N = 9, M = 3)
for stock in security_list2:
    print(K2[stock]) 
    print(D2[stock])

MFI-资金流量指标

MFI(security_list, check_date,  N = 14)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N

返回:

  • MFI 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 49.042496052317411, ‘603177.XSHG’: nan, ‘000002.XSHE’: 82.747463608411636, ‘601211.XSHG’: 24.455594865835923}

备注:

  • 返回结果与通达信、同花顺、东方财富结果一致
  • 计算方式与同花顺、东方财富和通达信相同

用法注释:

1.MFI>80 为超买,当其回头向下跌破80 时,为短线卖出时机;
2.MFI<20 为超卖,当其回头向上突破20 时,为短线买进时机;
3.MFI>80,而产生背离现象时,视为卖出信号;
4.MFI<20,而产生背离现象时,视为买进信号。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 MFI 值
MFI1 = MFI(security_list1,check_date='20170104', N = 14)
print(MFI1[security_list1]) 

# 输出 security_list2 的 MFI 值
MFI2 = MFI(security_list2,check_date='20170104', N = 14)
for stock in security_list2:
    print(MFI2[stock])

MTM-动量线

MTM(security_list, check_date, N = 12, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • MTM的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: -0.12999999999999901, ‘603177.XSHG’: nan, ‘000002.XSHE’: 5.9499999999999993, ‘601211.XSHG’: -1.2699999999999996}

备注:

  • 返回结果与通达信、同花顺、东方财富结果一致
  • 计算方式与通达信、同花顺和东方财富和相同

用法注释:

MTM线 :当日收盘价与N日前的收盘价的差;
MTMMA线:对上面的差值求N日移动平均;
参数:N 间隔天数,也是求移动平均的天数,一般取6用法:
1.MTM从下向上突破MTMMA,买入信号;
2.MTM从上向下跌破MTMMA,卖出信号;
3.股价续创新高,而MTM未配合上升,意味上涨动力减弱;
4.股价续创新低,而MTM未配合下降,意味下跌动力减弱;
5.股价与MTM在低位同步上升,将有反弹行情;反之,从高位同步下降,将有回落走势。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 MTM 值
MTM_MTM, MTM_MTMMA = MTM(security_list1,check_date='20170104', N = 12, M = 6)
print(MTM_MTM[security_list1])
print(MTM_MTMMA[security_list1])

# 输出 security_list2 的 MTM 值
MTM_MTM, MTM_MTMMA = MTM(security_list2,check_date='20170104', N = 12, M = 6)
for stock in security_list2:
    print(MTM_MTM[stock])
    print(MTM_MTMMA[stock])

ROC-变动率指标

ROC(security_list, check_date, N = 12, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • ROC的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如: {‘000001.XSHE’: -1.4557670772676223, ‘603177.XSHG’: nan, ‘000002.XSHE’: 33.999999999999986, ‘601211.XSHG’: -6.7302596714361336}

备注:

  • 返回结果与通达信、同花顺和东方财富结果一致
  • 计算方式与通达信、同花顺和东方财富相同

用法注释:

1.本指标的超买超卖界限值随个股不同而不同,使用者应自行调整;
2.本指标的超买超卖范围,一般介于±6.5之间;
3.本指标用法请参考MTM 指标用法;
4.本指标可设参考线。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 ROC 值
ROC_ROC, ROC_MAROC = ROC(security_list1,check_date='20170104', N = 12, M = 6)
print(ROC_ROC[security_list1])
print(ROC_MAROC[security_list1]) 

# 输出 security_list2 的 ROC 值
ROC_ROC, ROC_MAROC = ROC(security_list2,check_date='20170104', N = 12, M = 6)
for stock in security_list2:
    print(ROC_ROC[stock])
    print(ROC_MAROC[stock])

MARSI-相对强弱平均线

MARSI(security_list, check_date, M1 = 10, M2 = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • M1:统计的天数 M1
  • M2:统计的天数 M2

返回:

  • RSI10和RSI6 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 48.10992396473096, ‘603177.XSHG’: nan, ‘000002.XSHE’: 76.922476397442992, ‘601211.XSHG’: 42.883942027049542}, {‘000001.XSHE’: 44.033385880780266, ‘603177.XSHG’: nan, ‘000002.XSHE’: 79.616029960653222, ‘601211.XSHG’: 32.35472793345135})

备注:

  • 返回结果与通达信一致,与同花顺和东方财富不一致
  • 计算方式与通达信相同,与同花顺计算方式本质上相同,但参数不一致,东方财富没有该指标

用法注释:

  1. RSI>20 为超买;RSI<20 为超卖;
  2. RSI 以50为中界线,大于50视为多头行情,小于50视为空头行情;
  3. RSI 在80以上形成M头或头肩顶形态时,视为向下反转信号;
  4. RSI 在20以下形成W底或头肩底形态时,视为向上反转信号;
  5. RSI 向上突破其高点连线时,买进;RSI 向下跌破其低点连线时,卖出。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 MARSI 值
RSI10_1, RSI6_1 = MARSI(security_list1, check_date = '20170104', M1 = 10, M2 = 6)
print(RSI10_1[security_list1]) 
print(RSI6_1[security_list1]) 

# 输出 security_list2 的 MARSI 值
RSI10_2, RSI6_2 = MARSI(security_list2, check_date = '20170104', M1 = 10, M2 = 6)
for stock in security_list2:
    print(RSI10_2[stock]) 
    print(RSI6_2[stock])

OSC-变动速率线

OSC(security_list, check_date, N = 20, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • OSC和MAOSC 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 7.3500000000001009, ‘603177.XSHG’: nan, ‘000002.XSHE’: -17.449999999998766, ‘601211.XSHG’: -5.150000000000432}, {‘000001.XSHE’: 10.992588074732661, ‘603177.XSHG’: nan, ‘000002.XSHE’: -6.6110853409889812, ‘601211.XSHG’: 8.2021191350369627})

备注:

  • 返回结果与通达信,同花顺和东方财富一致
  • 计算方式与通达信,同花顺和东方财富相同

用法注释:

  1. OSC 以100 为中轴线,OSC>100 为多头市场;OSC<100 为空头市场;
  2. OSC 向上交叉其平均线时,买进;OSC 向下交叉其平均线时卖出;
  3. OSC 在高水平或低水平与股价产生背离时,应注意股价随时有反转的可能;
  4. OSC 的超买超卖界限值随个股不同而不同,使用者应自行调整

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 OSC 值
OSC1, MAOSC1 = OSC(security_list1, check_date = '20170104', N = 20, M = 6)
print(OSC1[security_list1]) 
print(MAOSC1[security_list1]) 

# 输出 security_list2 的 OSC 值
OSC2, MAOSC2 = OSC(security_list2, check_date = '20170104', N = 20, M = 6)
for stock in security_list2:
    print(OSC2[stock]) 
    print(MAOSC2[stock])

UDL-引力线

UDL(security_list, check_date, N1 = 3, N2 = 5, N3 = 10, N4 = 20, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N1:统计的天数 N1
  • N2:统计的天数 N2
  • N3:统计的天数 N3
  • N4:统计的天数 N4
  • M:统计的天数 M

返回:

  • UDL和MAUDL 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如: ({‘000001.XSHE’: 8.7100833333333352, ‘603177.XSHG’: nan, ‘000002.XSHE’: 19.746000000000006, ‘601211.XSHG’: 17.816458333333333}, {‘000001.XSHE’: 8.711291666666666, ‘603177.XSHG’: nan, ‘000002.XSHE’: 18.525548611111123, ‘601211.XSHG’: 18.064673611111122})

备注:

  • 返回结果与通达信和同花顺一致,东方财富没有该指标
  • 计算方式与通达信和同花顺相同,东方财富没有该指标

用法注释:

  1. 本指标的超买超卖界限值随个股不同而不同,使用者应自行调整;
  2. 使用时,可列出一年以上走势图,观察其常态性分布范围,然后用参考线设定其超买超卖范围。通常UDL 高于某个极限时,短期股价会下跌;UDL 低于某个极限时,短期股价会上涨;
  3. 本指标可设参考线。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 UDL 值
UDL1, MAUDL1 = UDL(security_list1, check_date = '20170104', N1 = 3, N2 = 5, N3 = 10, N4 = 20, M = 6)
print(UDL1[security_list1]) 
print(MAUDL1[security_list1]) 

# 输出 security_list2 的 UDL 值
UDL2, MAUDL2 = UDL(security_list2, check_date = '20170104', N1 = 3, N2 = 5, N3 = 10, N4 = 20, M = 6)
for stock in security_list2:
    print(UDL2[stock]) 
    print(MAUDL2[stock])

WR-威廉指标

WR(security_list, check_date, N = 10, N1 = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • WR和MAWR 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如: ({‘000001.XSHE’: 57.50000000000005, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0.0, ‘601211.XSHG’: 93.706293706293721}, {‘000001.XSHE’: 55.172413793103658, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0.0, ‘601211.XSHG’: 88.157894736842152})

备注:

  • 返回结果与通达信,同花顺和东方财富一致
  • 计算方式与通达信,同花顺和东方财富相同

方法注释:

  1. WR波动于0 - 100,100置于顶部,0置于底部。
  2. 本指标以50为中轴线,高于50视为股价转强;低于50视为股价转弱
  3. 本指标高于20后再度向下跌破20,卖出;低于80后再度向上突破80,买进。
  4. WR连续触底3 - 4次,股价向下反转机率大;连续触顶3 - 4次,股价向上反转机率大。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 WR 值
WR1, MAWR1 = WR(security_list1, check_date = '20170104', N = 10, N1 = 6)
print(WR1[security_list1]) 
print(MAWR1[security_list1]) 

# 输出 security_list2 的 WR 值
WR2, MAWR2 = WR(security_list2, check_date = '20170104', N = 10, N1 = 6)
for stock in security_list2:
    print(WR2[stock]) 
    print(MAWR2[stock])

LWR-LWR威廉指标

LWR(security_list, check_date, N = 9, M1 = 3, M2 = 3)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M1:统计的天数 M1
  • M2:统计的天数 M2

返回:

  • LWR1和LWR2 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 55.650573690335541, ‘603177.XSHG’: nan, ‘000002.XSHE’: 10.13678425444178, ‘601211.XSHG’: 87.916457180768532}, {‘000001.XSHE’: 58.489680228929586, ‘603177.XSHG’: nan, ‘000002.XSHE’: 16.390638110862337, ‘601211.XSHG’: 80.912153275638602})

备注:

  • 返回结果与通达信,同花顺和东方财富一致
  • 计算方式与通达信,同花顺和东方财富相同

用法注释:

  1. LWR2<30,超买;LWR2>70,超卖。
  2. 线LWR1向下跌破线LWR2,买进参考信号;线LWR1向上突破线LWR2,卖出参考信号。
  3. 线LWR1与线LWR2的交叉发生在30以下,70以上,才有效。
  4. LWR指标不适于发行量小,交易不活跃的股票;
  5. LWR指标对大盘和热门大盘股有极高准确性。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 LWR 值
LWR1, LWR2 = LWR(security_list1, check_date = '20170104', N = 9, M1 = 3, M2 = 3)
print(LWR1[security_list1]) 
print(LWR2[security_list1]) 

# 输出 security_list2 的 LWR 值
LWR1, LWR2 = LWR(security_list2, check_date = '20170104', N = 9, M1 = 3, M2 = 3)
for stock in security_list2:
    print(LWR1[stock]) 
    print(LWR2[stock])

趋势型

CHO-佳庆指标

CHO(security_list, check_date, N1 = 10, N2 = 20, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N1:统计的天数 N1
  • N2: 统计的天数 N2
  • M: 统计的天数 M

返回:

  • CHO 和 MACHO 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: -2349.7877426190771, ‘603177.XSHG’: nan, ‘000002.XSHE’: 267047.22475180856, ‘601211.XSHG’: -1726.9088373843188}, {‘000001.XSHE’: -2304.8620185057907, ‘603177.XSHG’: nan, ‘000002.XSHE’: 292638.40931959258, ‘601211.XSHG’: -3050.487984994948})

备注:

  • 返回结果与通达信、同花顺和东方财富结果均有不大于0.1的差异
  • 计算方式与通达信、同花顺(交易量不是以手为单位)和东方财富相同

用法注释:

1.CHO 曲线产生急促的「凸起」时,代表行情即将向上或向下反转;
2.股价>90 天平均线,CHO由负转正时,买进;
3.股价<90 天平均线,CHO由正转负时,卖出;
4.本指标也可设参考线,自定超买超卖的界限值;
5.本指标须配合OBOS、ENVELOPE同时使用。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 CHO 值
CHO1,MACHO1 = CHO(security_list1,check_date='20170104', N1 = 10, N2 = 20, M = 6)
print(CHO1[security_list1]) 
print(MACHO1[security_list1]) 

# 输出 security_list2 的 CHO 值
CHO2,MACHO2 = CHO(security_list2,check_date='20170104', N1 = 10, N2 = 20, M = 6)
for stock in security_list2:
    print(CHO2[stock]) 
    print(MACHO2[stock])

CYE-市场趋势

CYE(security_list, check_date)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期

返回:

  • CYEL和CYES的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 0.22946305644790699, ‘603177.XSHG’: nan, ‘000002.XSHE’: 4.3811058515459811, ‘601211.XSHG’: -0.38592508513052126}, {‘000001.XSHE’: 0.0057132410073656359, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2.139178579978255, ‘601211.XSHG’: -0.26377299139325172})

备注:

  • 返回结果与通达信一致,东方财富和同花顺没有该指标
  • 计算方式与通达信相同,东方财富和同花顺没有该指标

用法注释:

  1. CYE指标又叫趋势指标,是计算机模拟人的感觉用数值分析的方法对即日的K线进行一次拟合和趋势的判断;
  2. CYE以 0轴为界,其上为上升趋势,否则为下降趋势.

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 CYE 值
CYEL1,CYES1 = CYE(security_list1,check_date='20170104')
print(CYEL1[security_list1]) 
print(CYES1[security_list1]) 

# 输出 security_list2 的 CYE 值
CYEL2,CYES2 = CYE(security_list2,check_date='20170104')
for stock in security_list2:
    print(CYEL2[stock]) 
    print(CYES2[stock])

DMA-平均差

DMA(security_list, check_date, N1 = 10, N2 = 50, M = 10)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N1:统计的天数 N1
  • N2: 统计的天数 N2
  • M: 统计的天数 M

返回:

  • DIF 和 DIFMA 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 0.10940000000000794, ‘603177.XSHG’: nan, ‘000002.XSHE’: 4.5221999999999927, ‘601211.XSHG’: 0.021799999999998931}, {‘000001.XSHE’: 0.20262000000000988, ‘603177.XSHG’: nan, ‘000002.XSHE’: 3.4217399999999927, ‘601211.XSHG’: 0.53958000000000261})

备注:

  • 返回结果与通达信、同花顺(名为“新DMA”)和东方财富结果一致
  • 计算方式与通达信、同花顺和东方财富相同

用法注释:

1.DMA 向上交叉其平均线时,买进;
2.DMA 向下交叉其平均线时,卖出;
3.DMA 的交叉信号比MACD、TRIX 略快;
4.DMA 与股价产生背离时的交叉信号,可信度较高;
5.DMA、MACD、TRIX 三者构成一组指标群,互相验证。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 DMA 值
DIF1,DIFMA1 = DMA(security_list1,check_date='20170104', N1 = 10, N2 = 50, M = 10)
print(DIF1[security_list1]) 
print(DIFMA1[security_list1]) 

# 输出 security_list2 的 DMA 值
DIF2,DIFMA2 = DMA(security_list2,check_date='20170104', N1 = 10, N2 = 50, M = 10)
for stock in security_list2:
    print(DIF2[stock]) 
    print(DIFMA2[stock])

DMI - 趋向指标

DMI(security_list, check_date, N=14, M = 6):

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M: 统计的天数 M

返回:

  • PDI, MDI, ADX, ADXR的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 25.688830529080601, ‘603177.XSHG’: nan, ‘000002.XSHE’: 53.19815968968976, ‘601211.XSHG’: 18.761296151049379}, {‘000001.XSHE’: 12.721819718749906, ‘603177.XSHG’: nan, ‘000002.XSHE’: 4.3611435006995558, ‘601211.XSHG’: 25.554094733429896}, {‘000001.XSHE’: 25.604986954849515, ‘603177.XSHG’: nan, ‘000002.XSHE’: 74.405711362635628, ‘601211.XSHG’: 27.156295106705297}, {‘000001.XSHE’: 24.423375009809824, ‘603177.XSHG’: nan, ‘000002.XSHE’: 68.677055698186052, ‘601211.XSHG’: 30.275031367421029})

备注:

  • 返回结果与通达信一致,与同花顺和东方财富不一致
  • 计算方式与通达信相同,与同花顺和东方财富不同

用法注释:

用法:市场行情趋向明显时,指标效果理想。
PDI(上升方向线) MDI(下降方向线) ADX(趋向平均值)
1.PDI线从下向上突破MDI线,显示有新多头进场,为买进信号;
2.PDI线从上向下跌破MDI线,显示有新空头进场,为卖出信号;
3.ADX值持续高于前一日时,市场行情将维持原趋势;
4.ADX值递减,降到20以下,且横向行进时,市场气氛为盘整;
5.ADX值从上升倾向转为下降时,表明行情即将反转。
参数:N 统计天数; M 间隔天数,一般为14、6

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 DMI 值
dmi_pdi, dmi_mdi, dmi_adx, dmi_adxr = DMI(security_list1,check_date='20170104', N= 14, M = 6)
print(dmi_pdi[security_list1]) 
print(dmi_mdi[security_list1]) 
print(dmi_adx[security_list1]) 
print(dmi_adxr[security_list1]) 

# 输出 security_list2 的 DMI 值
dmi_pdi, dmi_mdi, dmi_adx, dmi_adxr = DMI(security_list2,check_date='20170104', N= 14, M = 6)
for stock in security_list2:
    print(dmi_pdi[stock]) 
    print(dmi_mdi[stock]) 
    print(dmi_adx[stock]) 
    print(dmi_adxr[stock])

DPO-区间震荡线

DPO(security_list, check_date, N=20, M = 6):

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M : 统计的天数 M

返回:

  • DPO 和 MADPO 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如: ({‘000001.XSHE’: 0.035000000000000142, ‘603177.XSHG’: nan, ‘000002.XSHE’: 9.1530000000000129, ‘601211.XSHG’: -0.99149999999998784}, {‘000001.XSHE’: 0.0036666666666658188, ‘603177.XSHG’: nan, ‘000002.XSHE’: 6.5928333333333455, ‘601211.XSHG’: -0.79808333333332138})

备注:

  • 返回结果与通达信一致,东方财富一致,与同花顺不一致
  • 计算方式与通达信,东方财富相同,与同花顺不同

用法注释:

1.DOP>0 ,表示目前处于多头市场;DOP<0 ,表示目前处于空头市场;
2.在0 轴上方设定一条超买线,当股价波动至超买线时,会形成短期高点;
3.在0 轴下方设定一条超卖线,当股价波动至超卖线时,会形成短期低点;
4.超买超卖的范围随个股不同而不同,使用者应自行调整;
5.本指标可设参考线。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 DPO 值
DPO1,MADPO1 = DPO(security_list1,check_date='20170104', N= 20, M = 6)
print(DPO1[security_list1]) 
print(MADPO1[security_list1]) 

# 输出 security_list2 的 DPO 值
DPO2,MADPO2 = DPO(security_list2,check_date='20170104', N= 20, M = 6)
for stock in security_list2:
    print(DPO2[stock]) 
    print(MADPO2[stock])

EMV-简易波动指标

EMV(security_list, check_date, N = 14, M = 9)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • EMV和MAEMV的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: -0.19292255670566558, ‘603177.XSHG’: nan, ‘000002.XSHE’: 3.851095221636061, ‘601211.XSHG’: -0.75492717743004634}, {‘000001.XSHE’: -0.20164346999313121, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2.0612852628683846, ‘601211.XSHG’: -0.72654134699455397})

备注:

  • 返回结果与通达信、同花顺和东方财富结果一致
  • 计算方式与通达信、同花顺和东方财富相同

用法注释:

1.EMV 由下往上穿越0 轴时,视为中期买进信号;
2.EMV 由上往下穿越0 轴时,视为中期卖出信号;
3.EMV 的平均线穿越0 轴,产生假信号的机会较少;
4.当ADX 低于±DI时,本指标失去效用;
5.须长期使用EMV 指标才能获得最佳利润。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 EMV 值
EMV1,MAEMV1 = EMV(security_list1,check_date='20170104', N = 14, M = 9)
print(EMV1[security_list1]) 
print(MAEMV1[security_list1]) 

# 输出 security_list2 的 EMV 值
EMV2,MAEMV2 = EMV(security_list2,check_date='20170104', N = 14, M = 9)
for stock in security_list2:
    print(EMV2[stock]) 
    print(MAEMV2[stock])

GDX-鬼道线

GDX(security_list, check_date, N = 30, M = 9)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • 济安线、压力线和支撑线的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 8.579464236747615, ‘603177.XSHG’: nan, ‘000002.XSHE’: 21.274312299926329, ‘601211.XSHG’: 18.052914184896178}, {‘000001.XSHE’: 9.3516160180549015, ‘603177.XSHG’: nan, ‘000002.XSHE’: 23.1890004069197, ‘601211.XSHG’: 19.677676461536834}, {‘000001.XSHE’: 7.8073124554403304, ‘603177.XSHG’: nan, ‘000002.XSHE’: 19.359624192932959, ‘601211.XSHG’: 16.428151908255522})

备注:

  • 返回结果与通达信一致,东方财富和同花顺没有该指标
  • 计算方式与通达信相同,东方财富和同花顺没有该指标

用法注释:

通道理论公式,是一种用技术手段和经验判断来决定买卖股票的方法。该公式对趋势线做了平滑和修正处理,更精确的反应了股价运行规律。当股价上升到压力线时,投资者就卖出股票,而当股价下跌到支撑线时,投资者就进行相应的补进。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 GDX 值
gdx_jax, gdx_ylx, gdx_zcx = GDX(security_list1,check_date='20170104', N = 30, M = 9)
print(gdx_jax[security_list1]) 
print(gdx_ylx[security_list1]) 
print(gdx_zcx[security_list1]) 

# 输出 security_list2 的 GDX 值
gdx_jax, gdx_ylx, gdx_zcx = GDX(security_list2,check_date='20170104', N = 30, M = 9)
for stock in security_list2:
    print(gdx_jax[stock]) 
    print(gdx_ylx[stock]) 
    print(gdx_zcx[stock])

JLHB-绝路航标

JLHB(security_list, check_date, N = 7, M = 5)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • B, VAR2和绝路航标的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如: ({‘000001.XSHE’: 62.675406125612177, ‘603177.XSHG’: nan, ‘000002.XSHE’: 50.248304902948838, ‘601211.XSHG’: 48.413005376201845}, {‘000001.XSHE’: 66.875000000000057, ‘603177.XSHG’: nan, ‘000002.XSHE’: 80.0, ‘601211.XSHG’: 43.800904977375581}, {‘000001.XSHE’: 0, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0, ‘601211.XSHG’: 0})

备注:

  • 返回结果与通达信一致,同花顺和东方财富没有该指标
  • 计算方式与通达信相同,同花顺和东方财富没有该指标

用法注释:

反趋势类选股指标。综合了动量观念、强弱指标与移动平均线的优点,在计算过程中主要研究高低价位与收市价的关系,反映价格走势的强弱和超买超卖现象。在市场短期超买超卖的预测方面又较敏感。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 JLHB 值
jlhb_b, jlhb_var2, jlhb_jlhb = JLHB(security_list1,check_date='20170104', N = 7, M = 5)
print(jlhb_b[security_list1]) 
print(jlhb_var2[security_list1]) 
print(jlhb_jlhb[security_list1]) 

# 输出 security_list2 的 JLHB 值
jlhb_b, jlhb_var2, jlhb_jlhb = JLHB(security_list2,check_date='20170104', N = 7, M = 5)
for stock in security_list2:
    print(jlhb_b[stock]) 
    print(jlhb_var2[stock]) 
    print(jlhb_jlhb[stock])

JS-加速线

JS(security_list, check_date, N = 5, M1 = 5, M2 = 10, M3 = 20)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M1:统计的天数 M1
  • M2:统计的天数 M2
  • M3:统计的天数 M3

返回:

  • JS, MAJS1, MAJS2和MAJS3 的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 0.22988505747126764, ‘603177.XSHG’: nan, ‘000002.XSHE’: 4.5549738219895266, ‘601211.XSHG’: -0.37904124860646582}, {‘000001.XSHE’: 0.19895890422201745, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2.7934335630385538, ‘601211.XSHG’: -0.42736705593419566}, {‘000001.XSHE’: -0.1505260957714892, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2.2134571412225181, ‘601211.XSHG’: -0.63600837591234527}, {‘000001.XSHE’: 0.0091217971983490014, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2.2396563934453453, ‘601211.XSHG’: -0.25647045548805508})

备注:

  • 返回结果与通达信一致,同花顺和东方财富没有该指标
  • 计算方式与通达信相同,同花顺和东方财富没有该指标

用法注释:

加速线指标是衡量股价涨速的工具,加速线指标上升表明股价上升动力增加,加速线指标下降表明股价下降压力增加。
加速线适用于DMI表明趋势明显时(DMI.ADX大于20)使用:
1.如果加速线在0值附近形成平台,则表明既不是最好的买入时机也不是最好的卖入时机;
2.在加速线发生金叉后,均线形成底部是买入时机;
3.在加速线发生死叉后,均线形成顶部是卖出时机;

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 JS 值
js_jsx, js_majsx1, js_majsx2, js_majsx3 = JS(security_list1,check_date='20170104', N = 5, M1 = 5, M2 = 10, M3 = 20)
print(js_jsx[security_list1]) 
print(js_majsx1[security_list1]) 
print(js_majsx2[security_list1]) 
print(js_majsx3[security_list1]) 

# 输出 security_list2 的 JS 值
js_jsx, js_majsx1, js_majsx2, js_majsx3 = JS(security_list2,check_date='20170104', N = 5, M1 = 5, M2 = 10, M3 = 20)
for stock in security_list2:
    print(js_jsx[stock]) 
    print(js_majsx1[stock]) 
    print(js_majsx2[stock]) 
    print(js_majsx3[stock])

QACD-快速异同平均

QACD(security_list, check_date, N1 = 12, N2 = 26, M = 9)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N1:统计的天数 N1
  • N2:统计的天数 N2
  • M:统计的天数 M

返回:

  • DIF, MACD和DDIF的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 0.024474457258216731, ‘603177.XSHG’: nan, ‘000002.XSHE’: 1.9534717597632003, ‘601211.XSHG’: -0.13735007291033341}, {‘000001.XSHE’: 0.031674924406612889, ‘603177.XSHG’: nan, ‘000002.XSHE’: 1.4784672944906101, ‘601211.XSHG’: -0.020490844872803629}, {‘000001.XSHE’: -0.0072004671483961585, ‘603177.XSHG’: nan, ‘000002.XSHE’: 0.47500446527259022, ‘601211.XSHG’: -0.11685922803752978})

备注:

  • 返回结果与通达信一致,与同花顺不同(原因在于同花顺的N2取值为6),东方财富没有该公式
  • 计算方式与通达信和同花顺相同,东方财富没有该公式

用法注释:

1.DIF 向上交叉MACD,买进;DIF 向下交叉MACD,卖出;
2.DIF 连续两次向下交叉MACD,将造成较大的跌幅;
3.DIF 连续两次向上交叉MACD,将造成较大的涨幅;
4.DIF 与股价形成背离时所产生的信号,可信度较高;
5.DMA、MACD、TRIX 三者构成一组指标群,互相验证。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 QACD 值
qacd_dif, qacd_macd, qacd_ddif = QACD(security_list1,check_date='20170104',  N1 = 12, N2 = 26, M = 9)
print(qacd_dif[security_list1]) 
print(qacd_macd[security_list1]) 
print(qacd_ddif[security_list1]) 

# 输出 security_list2 的 QACD 值
qacd_dif, qacd_macd, qacd_ddif = QACD(security_list2,check_date='20170104',  N1 = 12, N2 = 26, M = 9)
for stock in security_list2:
    print(qacd_dif[stock]) 
    print(qacd_macd[stock]) 
    print(qacd_ddif[stock])

UOS-终极指标

UOS(security_list, check_date, N1 = 7, N2 = 14, N3 = 28, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N1:统计的天数 N1
  • N2:统计的天数 N2
  • N3:统计的天数 N3
  • M:统计的天数 M

返回:

  • 终极指标和MAUOS的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 57.771547164847973, ‘603177.XSHG’: nan, ‘000002.XSHE’: 70.504859217869893, ‘601211.XSHG’: 46.33057503226491}, {‘000001.XSHE’: 53.661130731923997, ‘603177.XSHG’: nan, ‘000002.XSHE’: 65.893320720410188, ‘601211.XSHG’: 46.940452580831135})

备注:

  • 返回结果与通达信,东方财富和同花顺相同
  • 计算方式与通达信,东方财富和同花顺相同

用法注释:

1.UOS 上升至50~70的间,而后向下跌破其N字曲线低点时,为短线卖点;
2.UOS 上升超过70以上,而后向下跌破70时,为中线卖点;
3.UOS 下跌至45以下,而后向上突破其N字曲线高点时,为短线买点;
4.UOS 下跌至35以下,产生一底比一底高的背离现象时,为底部特征;
5.以上各项数据会因个股不同而略有不同,请利用参考线自行修正。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的UOS值
uos_ultiInc, uos_mauos = UOS(security_list1,check_date='20170104', N1 = 7, N2 = 14, N3 = 28, M = 6)
print(uos_ultiInc[security_list1]) 
print(uos_mauos[security_list1]) 

# 输出 security_list2 的 UOS 值
uos_ultiInc, uos_mauos = UOS(security_list2,check_date='20170104', N1 = 7, N2 = 14, N3 = 28, M = 6)
for stock in security_list2:
    print(uos_ultiInc[stock]) 
    print(uos_mauos[stock])

VMACD-量平滑移动平均

VMACD(security_list, check_date, SHORT = 12, LONG = 26, MID = 9)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • SHORT:统计的天数 SHORT
  • LONG:统计的天数 LONG
  • MID:统计的天数 MID

返回:

  • DIF, DEA和MACD 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如: ({‘000001.XSHE’: -29420.22472378047, ‘603177.XSHG’: nan, ‘000002.XSHE’: 246548.71517315158, ‘601211.XSHG’: -54288.764521957521}, {‘000001.XSHE’: -34871.616925081325, ‘603177.XSHG’: nan, ‘000002.XSHE’: 403729.04101507459, ‘601211.XSHG’: -60719.532041579558}, {‘000001.XSHE’: 5451.392201300856, ‘603177.XSHG’: nan, ‘000002.XSHE’: -157180.32584192301, ‘601211.XSHG’: 6430.7675196220371})

备注:

  • 返回结果与通达信,东方财富均有不大于0.1的差异,与同花顺不一致(差别是同花顺的结果是返回结果的100倍)
  • 计算方式与通达信,东方财富完全相同,与同花顺计算方式基本相同,差别在于同花顺的VOL是以交易量为单位,不是以手为单位

用法注释:

基于成交量的MACD算法。
用法:
1.DIFF、DEA均为正,DIFF向上突破DEA,买入信号。
2.DIFF、DEA均为负,DIFF向下跌破DEA,卖出信号。
3.DEA线与K线发生背离,行情反转信号。
4.分析MACD柱状线,由红变绿(正变负),卖出信号;由绿变红,买入信号

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的VMACD值
vmacd_dif, vmacd_dea, vmacd_macd = VMACD(security_list1,check_date='20170104', SHORT = 12, LONG = 26, MID = 9)
print(vmacd_dif[security_list1]) 
print(vmacd_dea[security_list1]) 
print(vmacd_macd[security_list1]) 

# 输出 security_list2 的 VMACD 值
vmacd_dif, vmacd_dea, vmacd_macd = VMACD(security_list2,check_date='20170104', SHORT = 12, LONG = 26, MID = 9)
for stock in security_list2:
    print(vmacd_dif[stock]) 
    print(vmacd_dea[stock]) 
    print(vmacd_macd[stock])

VPT-量价曲线

VPT(security_list, check_date, N = 51, M = 6)

参数:

  • security_list: 股票列表
  • check_date: 要查询数据的日期
  • N: 统计的天数 N
  • M: 统计的天数 M

返回:

  • VPT 和 MAVPT 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 110162.20673868078, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2333294.6410979889, ‘601211.XSHG’: 213564.11670755409}, {‘000001.XSHE’: 109563.07430249352, ‘603177.XSHG’: nan, ‘000002.XSHE’: 1968746.2352547429, ‘601211.XSHG’: 216122.67977483606})

备注:

  • 返回结果与通达信有不大于0.1的差异,与东方财富不同,与同花顺不一致
  • 计算方式与通达信相同,与东方财富相同(差别在于东方财富选取的N,M分别为24和5),与同花顺相同(差别在于同花顺的VOL是以交易量为单位,不是以手为单位)

用法注释:

1.VPT 由下往上穿越0 轴时,为买进信号;
2.VPT 由上往下穿越0 轴时,为卖出信号;
3.股价一顶比一顶高,VPT 一顶比一顶低时,暗示股价将反转下跌;
4.股价一底比一底低,VPT 一底比一底高时,暗示股价将反转上涨;
5.VPT 可搭配EMV 和WVAD指标使用效果更佳。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
VPT_VPT, VPT_MAVPT = VPT(security_list1, check_date='20170104', N= 51, M = 6)
print(VPT_VPT[security_list1])
print(VPT_MAVPT[security_list1])

# 输出 security_list2 的 VPT 值
VPT_VPT, VPT_MAVPT = VPT(security_list2, check_date='20170104', N= 51, M = 6)
for stock in security_list2:
    print(VPT_VPT[stock])
    print(VPT_MAVPT[stock])

WVAD-威廉变异离散量

WVAD(security_list, check_date, N = 24, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • WVAD 和 MAWVAD的值。

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 92.062648361186916, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2329.1965559178616, ‘601211.XSHG’: 3.1691529344278888}, {‘000001.XSHE’: 33.985407654779912, ‘603177.XSHG’: nan, ‘000002.XSHE’: 1964.3494800488843, ‘601211.XSHG’: -25.500673953544354})

备注:

  • 返回结果与通达信和东方财富一致,与同花顺不同
  • 计算方式与通达信和东方财富相同,与同花顺不同

用法注释:

1.WVAD由下往上穿越0 轴时,视为长期买进信号;
2.WVAD由上往下穿越0 轴时,视为长期卖出信号;
3.当ADX 低于±DI时,本指标失去效用;
4.长期使用WVAD指标才能获得最佳利润;
5.本指标可与EMV 指标搭配使用。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 WVAD 值
wvad_wvad, wvad_mawvad = WVAD(security_list1,check_date='20170104', N = 24, M = 6)
print(wvad_wvad[security_list1]) 
print(wvad_mawvad[security_list1]) 

# 输出 security_list2 的 WVAD 值
wvad_wvad, wvad_mawvad = WVAD(security_list2,check_date='20170104', N = 24, M = 6)
for stock in security_list2:
    print(wvad_wvad[stock]) 
    print(wvad_mawvad[stock])

能量型

BRAR-情绪指标

BRAR(security_list, check_date, N=26)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N

返回:

  • BR和AR 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 90.769230769230703, ‘603177.XSHG’: nan, ‘000002.XSHE’: 210.38812785388123, ‘601211.XSHG’: 81.198910081743762}, {‘000001.XSHE’: 92.349726775956157, ‘603177.XSHG’: nan, ‘000002.XSHE’: 283.66762177650412, ‘601211.XSHG’: 81.192660550459109})

备注:

  • 返回结果与通达信和东方财富不一致,同花顺没有该指标
  • 计算方式与通达信和东方财富相同,同花顺没有该指标

用法注释:

  1. BR>400,暗示行情过热,应反向卖出;BR<40 ,行情将起死回生,应买进;
  2. AR>180,能量耗尽,应卖出;AR<40 ,能量已累积爆发力,应买进;
  3. BR 由300 以上的高点下跌至50以下的水平,低于AR 时,为绝佳买点;
  4. BR、AR、CR、VR 四者合为一组指标群,须综合搭配使用。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 BRAR 值
BR1,AR1 = BRAR(security_list1, check_date='20170104', N=26)
print(BR1[security_list1]) 
print(AR1[security_list1]) 

# 输出 security_list2 的 BRAR 值
BR2,AR2 = BRAR(security_list2, check_date='20170104', N=26)
for stock in security_list2:
    print(BR2[stock]) 
    print(AR2[stock])

CR-带状能量线

CR(security_list, check_date, N=26, M1=10, M2=20, M3=40, M4=62)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M1:统计的天数 M1
  • M2:统计的天数 M2
  • M3:统计的天数 M3
  • M4:统计的天数 M4

返回:

  • CR和MA1,MA2,MA3,MA4 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如: ({‘000001.XSHE’: 92.287917737788732, ‘603177.XSHG’: nan, ‘000002.XSHE’: 310.60606060606005, ‘601211.XSHG’: 65.852168601099407}, {‘000001.XSHE’: 140.86650665677868, ‘603177.XSHG’: nan, ‘000002.XSHE’: 263.61151123494176, ‘601211.XSHG’: 132.45402304938904}, {‘000001.XSHE’: 147.02494118319379, ‘603177.XSHG’: nan, ‘000002.XSHE’: 187.92520738936778, ‘601211.XSHG’: 138.9584146734295}, {‘000001.XSHE’: 98.715266031757878, ‘603177.XSHG’: nan, ‘000002.XSHE’: 116.68759448530741, ‘601211.XSHG’: 93.303386336228911}, {‘000001.XSHE’: 78.759338424450661, ‘603177.XSHG’: nan, ‘000002.XSHE’: 100.63420206110173, ‘601211.XSHG’: 78.912222905134882})

备注:

  • 返回结果与通达信,同花顺和东方财富均不一致
  • 计算方式与通达信,同花顺和东方财富相同

用法注释:

  1. CR>400时,其10日平均线向下滑落,视为卖出信号;CR<40买进;
  2. CR 由高点下滑至其四条平均线下方时,股价容易形成短期底部;
  3. CR 由下往上连续突破其四条平均线时,为强势买进点;
  4. CR 除了预测价格的外,最大的作用在于预测时间;
  5. BR、AR、CR、VR 四者合为一组指标群,须综合搭配使用。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 CR 值
CR1, MA1, MA2, MA3, MA4 = CR(security_list1, check_date='20170104', N=26, M1=10, M2=20, M3=40, M4=62)
print(CR1[security_list1]) 
print(MA1[security_list1]) 
print(MA2[security_list1]) 
print(MA3[security_list1]) 
print(MA4[security_list1]) 

# 输出 security_list2 的 CR 值
CR1, MA1, MA2, MA3, MA4 = CR(security_list2, check_date='20170104', N=26, M1=10, M2=20, M3=40, M4=62)
for stock in security_list2:
    print(CR1[stock]) 
    print(MA1[stock]) 
    print(MA2[stock]) 
    print(MA3[stock]) 
    print(MA4[stock])

CYR-市场强弱

CYR(security_list, check_date, N = 13, M = 5)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • CYR 和 MACYR 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: -0.054093150941103563, ‘603177.XSHG’: nan, ‘000002.XSHE’: 3.2324567390829451, ‘601211.XSHG’: -0.39420121431832378}, {‘000001.XSHE’: -0.061359574639450187, ‘603177.XSHG’: nan, ‘000002.XSHE’: 1.7008273617957137, ‘601211.XSHG’: -0.35959378850023205})

备注:

  • 返回结果与通达信和东方财富一致,同花顺没有该指标
  • 计算方式与通达信和东方财富相同,同花顺没有该指标

用法注释:

  1. CYR是成本均线派生出的指标,是13日成本均线的升降幅度;
  2. 使用CYR可以对股票的强弱进行排序,找出其中的强势和弱势股票。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 CYR 值
CYR1,MACYR1 = CYR(security_list1, check_date='20170104', N = 13, M = 5)
print(CYR1[security_list1]) 
print(MACYR1[security_list1]) 

# 输出 security_list2 的 CYR 值
CYR2,MACYR2 = CYR(security_list2, check_date='20170104', N = 13, M = 5)
for stock in security_list2:
    print(CYR2[stock]) 
    print(MACYR2[stock])

MASS-梅斯线

MASS(security_list, check_date, N1=9, N2=25, M=6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N1:统计的天数 N1
  • N2:统计的天数 N2
  • M:统计的天数 M

返回:

  • MASS和MAMASS 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 24.239711786446705, ‘603177.XSHG’: nan, ‘000002.XSHE’: 32.023209054655545, ‘601211.XSHG’: 23.609848955660624}, {‘000001.XSHE’: 23.894883731671456, ‘603177.XSHG’: nan, ‘000002.XSHE’: 31.687243323851508, ‘601211.XSHG’: 23.978558571459313})

备注:

  • 返回结果与通达信,同花顺和东方财富均不一致,原因在于get_price获取的数据与炒股软件的不一致
  • 计算方式与通达信,同花顺和东方财富相同

用法注释:

  1. MASS>27 后,随后又跌破26.5,此时股价若呈上涨状态,则卖出;
  2. MASS<27 后,随后又跌破26.5,此时股价若呈下跌状态,则买进;
  3. MASS<20 的行情,不宜进行投资。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 MASS 值
MASS1,MAMASS1 = MASS(security_list1, check_date='20170104', N1=9, N2=25, M=6)
print(MASS1[security_list1]) 
print(MAMASS1[security_list1]) 

# 输出 security_list2 的 MASS 值
MASS2,MAMASS2 = MASS(security_list2, check_date='20170104', N1=9, N2=25, M=6)
for stock in security_list2:
    print(MASS2[stock]) 
    print(MAMASS2[stock])

PCNT-幅度比

PCNT(security_list, check_date, M = 5)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • M:统计的天数 M

返回:

  • PCNT 和 MAPCNT 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: -0.81775700934579765, ‘603177.XSHG’: nan, ‘000002.XSHE’: 9.1257995735607711, ‘601211.XSHG’: -0.17261219792866017}, {‘000001.XSHE’: -0.093375782685468367, ‘603177.XSHG’: nan, ‘000002.XSHE’: 5.1789530788938016, ‘601211.XSHG’: -0.6614506214203465})

备注:

  • 返回结果与通达信一致,东方财富和同花顺没有该指标
  • 计算方式与通达信相同,东方财富和同花顺没有该指标

用法注释:

  1. PCNT 重视价格的涨跌幅度,排除观察涨跌跳动值;
  2. 较高的PCNT 值,表示该股波动幅度大;
  3. 较低的PCNT 值,表示该股波动幅度小。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 PCNT 值
PCNT1,MAPCNT1 = PCNT(security_list1, check_date='20170104', M=5)
print(PCNT1[security_list1]) 
print(MAPCNT1[security_list1]) 

# 输出 security_list2 的 PCNT 值
PCNT2,MAPCNT2 = PCNT(security_list2, check_date='20170104', M=5)
for stock in security_list2:
    print(PCNT2[stock]) 
    print(MAPCNT2[stock])

PSY-心理线

PSY(security_list, check_date,  N = 12, M = 6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • PSY 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 50.0, ‘603177.XSHG’: nan, ‘000002.XSHE’: 58.333333333333336, ‘601211.XSHG’: 33.333333333333329}

备注:

  • 返回结果与通达信、同花顺和东方财富结果均一致
  • 计算方式与通达信、同花顺和东方财富相同

用法注释:

1.PSY>75,形成M头时,股价容易遭遇压力;
2.PSY<25,形成W底时,股价容易获得支撑;
3.PSY 与VR 指标属一组指标群,须互相搭配使用。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 PSY 值
PSY_PSY, PSY_PSYMA = PSY(security_list1,check_date='20170104',  N = 12, M = 6)
print(PSY_PSY[security_list1])
print(PSY_PSYMA[security_list1])

# 输出 security_list2 的 PSY 值
PSY_PSY, PSY_PSYMA = PSY(security_list2,check_date='20170104',  N = 12, M = 6)
for stock in security_list2:
    print(PSY_PSY[stock])
    print(PSY_PSYMA[stock])

VR-成交量变异率

VR(security_list, check_date, N=26, M=6)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • VR和MAVR 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 131.42761741216233, ‘603177.XSHG’: nan, ‘000002.XSHE’: 213.15765431976482, ‘601211.XSHG’: 84.984239389082546}, {‘000001.XSHE’: 133.5803410407361, ‘603177.XSHG’: nan, ‘000002.XSHE’: 182.61022230207126, ‘601211.XSHG’: 117.87968865084336})

备注:

  • 返回结果与通达信和东方财富一致,与同花顺不一致
  • 计算方式与通达信和东方财富相同,与同花顺中的VR指标不同

用法注释:

  1. VR>450,市场成交过热,应反向卖出;
  2. VR<40 ,市场成交低迷,人心看淡的际,应反向买进;
  3. VR 由低档直接上升至250,股价仍为遭受阻力,此为大行情的前兆;
  4. VR 除了与PSY为同指标群外,尚须与BR、AR、CR同时搭配研判

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 VR 值
VR1,MAVR1 = VR(security_list1, check_date='20170104', N=26, M=6)
print(VR1[security_list1]) 
print(MAVR1[security_list1]) 

# 输出 security_list2 的 VR 值
VR2,MAVR2 = VR(security_list2, check_date='20170104', N=26, M=6)
for stock in security_list2:
    print(VR2[stock])
    print(MAVR2[stock])

成交量型

AMO-成交金额

AMO(security_list, check_date, M1 = 5, M2 = 10)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • M1:统计的天数 M1
  • M2:统计的天数 M2

返回:
- AMOW,AMO1和AMO2 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 42858.215500999999, ‘603177.XSHG’: nan, ‘000002.XSHE’: 528895.0784, ‘601211.XSHG’: 26720.7556}, {‘000001.XSHE’: 36852.956986600002, ‘603177.XSHG’: nan, ‘000002.XSHE’: 391033.63072000002, ‘601211.XSHG’: 30396.797399999999}, {‘000001.XSHE’: 40629.7649418, ‘603177.XSHG’: nan, ‘000002.XSHE’: 432376.88320000004, ‘601211.XSHG’: 36740.013179999994})

备注:

  • 返回结果与通达信一致,东方财富和同花顺没有该指标
  • 计算方式与通达信相同,东方财富和同花顺没有该指标
  • 本函数未显示VOLSTICK,其在通达信中是柱状线的图形

用法注释:

  1. 成交金额大,代表交投热络,可界定为热门股;
  2. 底部起涨点出现大成交金额,代表攻击量;
  3. 头部地区出现大成交金额,代表出货量;
  4. 观察成交金额的变化,比观察成交手数更具意义,因为成交手数并未反应股价的涨跌的后所应支出的实际金额。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 AMO 值
AMOW,AMO1,AMO2 = AMO(security_list1, check_date='20170104', M1 = 5, M2 = 10)
print(AMOW[security_list1]) 
print(AMO1[security_list1]) 
print(AMO2[security_list1]) 

# 输出 security_list2 的 AMO 值
AMOW,AMO1,AMO2 = AMO(security_list2, check_date='20170104', M1 = 5, M2 = 10)
for stock in security_list2:
    print(AMOW[stock]) 
    print(AMO1[stock]) 
    print(AMO2[stock])

OBV-累积能量线

OBV(security_list, check_date, N = 30)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N

返回:

  • OBV 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 7606250650.0, ‘603177.XSHG’: nan, ‘000002.XSHE’: 10161140224.0, ‘601211.XSHG’: 3422411336.0}

备注:

  • 返回结果与通达信、同花顺、东方财富结果均不一致

用法注释:

1.股价一顶比一顶高,而OBV 一顶比一顶低,暗示头部即将形成;
2.股价一底比一底低,而OBV 一底比一底高,暗示底部即将形成;
3.OBV 突破其N字形波动的高点次数达5 次时,为短线卖点;
4.OBV 跌破其N字形波动的低点次数达5 次时,为短线买点;
5.OBV 与ADVOL、PVT、WAD、ADL同属一组指标群,使用时应综合研判。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']
# 计算并输出 security_list1 的 OBV 值
OBV1 = OBV(security_list1,check_date='20170104',  N = 30)
print(OBV1[security_list1]) 

# 输出 security_list2 的 OBV 值
OBV2 = OBV(security_list2,check_date='20170104',  N = 30)
for stock in security_list2:
    print(OBV2[stock])

VOL-成交量

VOL(security_list, check_date, M1=5, M2=10)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N:统计的天数 N
  • M:统计的天数 M

返回:

  • VOL 和 MAVOL 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 500351.22999999998, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2333030.52, ‘601211.XSHG’: 153571.64999999999}, {‘000001.XSHE’: 430683.87, ‘603177.XSHG’: nan, ‘000002.XSHE’: 1890989.6699999999, ‘601211.XSHG’: 172379.274}, {‘000001.XSHE’: 474050.94499999995, ‘603177.XSHG’: nan, ‘000002.XSHE’: 2246594.1269999999, ‘601211.XSHG’: 205083.77899999998})

备注:

  • 返回结果与通达信,同花顺和东方财富均不一致,原因是get_price获取的源数据与炒股软件不一致
  • 计算方式与通达信,同花顺和东方财富相同

用法注释:

  1. 成交量大,代表交投热络,可界定为热门股;
  2. 底部起涨点出现大成交量(成交手数),代表攻击量;
  3. 头部地区出现大成交量(成交手数),代表出货量;
  4. 观察成交金额的变化,比观察成交手数更具意义,因为成交手数并未反应股价的涨跌的后所应支出的实际金额。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 VOL 值
VOL1,MAVOL11,MAVOL12 = VOL(security_list1, check_date='20170104', M1=5, M2=10)
print(VOL1[security_list1]) 
print(MAVOL11[security_list1]) 
print(MAVOL12[security_list1]) 

# 输出 security_list2 的 VOL 值
VOL2,MAVOL21,MAVOL22 = VOL(security_list2, check_date='20170104', M1=5, M2=10)
for stock in security_list2:
    print(VOL2[stock]) 
    print(MAVOL21[stock]) 
    print(MAVOL22[security_list1])

VRSI-相对强弱量

VRSI(security_list, check_date, N1=6, N2=12, N3=24)

参数:

  • security_list:股票列表
  • check_date:要查询数据的日期
  • N1:统计的天数 N1
  • N2:统计的天数 N2
  • N3:统计的天数 N3

返回:

  • RSI1,VRSI2和VRSI3 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 50.467938637493823, ‘603177.XSHG’: nan, ‘000002.XSHE’: 50.382520845028509, ‘601211.XSHG’: nan}, {‘000001.XSHE’: 49.322460708038193, ‘603177.XSHG’: nan, ‘000002.XSHE’: 51.166143930198224, ‘601211.XSHG’: nan}, {‘000001.XSHE’: 49.251191741159232, ‘603177.XSHG’: nan, ‘000002.XSHE’: 51.867549823141722, ‘601211.XSHG’: nan})

备注:

  • 返回结果与通达信和同花顺一致,东方财富没有该指标
  • 计算方式与通达信和同花顺相同,

用法注释:

  1. VRSI>20 为超买;VRSI<20 为超卖;
  2. VRSI 以50为中界线,大于50视为多头行情,小于50视为空头行情;
  3. VRSI 在80以上形成M头或头肩顶形态时,视为向下反转信号;
  4. VRSI 在20以下形成W底或头肩底形态时,视为向上反转信号;
  5. VRSI 向上突破其高点连线时,买进;VRSI 向下跌破其低点连线时,卖出。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 VRSI 值
VRSI1,VRSI2,VRSI3  = VRSI(security_list1, check_date='20170104', N1=6, N2=12, N3=24)
print(VRSI1[security_list1]) 
print(VRSI2[security_list1]) 
print(VRSI3[security_list1]) 

# 输出 security_list2 的 VRSI 值
VRSI1,VRSI2,VRSI3 = VRSI(security_list2, check_date='20170104', N1=6, N2=12, N3=24)
for stock in security_list2:
    print(VRSI1[stock]) 
    print(VRSI2[stock]) 
    print(VRSI3[stock])

均线型

AMV-成本价均线

AMV(security_list, check_date, M = 13)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • M:统计的天数 M

返回:

  • AMV的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 8.2675000000000001, ‘603177.XSHG’: nan, ‘000002.XSHE’: 18.232499999999998, ‘601211.XSHG’: 16.314999999999998}

备注:

  • 由于复权因子不同的原因,返回结果与通达信和同花顺结果有微小差异,东方财富没有该指标
  • 计算方式与通达信,同花顺相同

用法注释:

  • 成本价均线不同于一般移动平均线系统,成本价均线系统首次将成交量引入均线系统,充分提高均线系统的可靠性。同样对于成本价均线可以使用月均线系统(5,10,20,250)和季均线系统(20,40,60,250),另外成本价均线还可以使用自身特有的均线系统(5,13,34,250),称为市场平均建仓成本均线,简称成本价均线。在四个均线中参数为250的均线为年度均线,为行情支撑均线。成本均线不容易造成虚假信号或骗线,比如某日股价无量暴涨,移动均线会大幅拉升,但成本均线却不会大幅上升,因为在无量的情况下市场持仓成本不会有太大的变化。依据均线理论,当短期均线站在长期均线之上时叫多头排列,反之就叫空头排列。短期均线上穿长期均线叫金叉,短期均线下穿长期均线叫死叉。均线的多头排列是牛市的标志,空头排列是熊市的标志。均线系统一直是市场广泛认可的简单而可靠的分析指标,其使用要点是尽量做多头排列的股票,回避空头排列的股票。34日成本线是市场牛熊的重要的分水岭。一旦股价跌破34日成本线,则常常是最后的出逃机会。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 AMV 值
AMV1 = AMV(security_list1,check_date='20170104', M=13)
print(AMV1[security_list1]) 

# 输出 security_list2 的 AMV 值
AMV2 = AMV(security_list2,check_date='20170104', M=13)
for stock in security_list2:
    print(AMV2[stock])

ALLIGAT-鳄鱼线

ALLIGAT(security_list, check_date)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期

返回:

  • 上唇 牙齿 下颚 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 8.2959999999999976, ‘603177.XSHG’: nan, ‘000002.XSHE’: 18.943000000000001, ‘601211.XSHG’: 16.442000000000004}, {‘000001.XSHE’: 8.3268749999999994, ‘603177.XSHG’: nan, ‘000002.XSHE’: 17.969375000000003, ‘601211.XSHG’: 16.434999999999999}, {‘000001.XSHE’: 8.4411538461538456, ‘603177.XSHG’: nan, ‘000002.XSHE’: 15.414615384615388, ‘601211.XSHG’: 16.79269230769231})

备注:

  • 返回结果与通达信相同,同花顺和东方财富没有该指标
  • 计算方式与通达信相同

用法注释:

  • 鳄鱼线是运用分形几何学和非线性动力学的一组平均线(实际上就是一种比较特别的均线)。它分为蓝、红、绿三条。
    蓝线被称为鳄鱼的颚部,红线被称为鳄鱼的牙齿,绿色被称为鳄鱼的唇吻。
    它们的构造方法如下:
    颚部——13根价格线的平滑移动均线,并将数值向未来方向移动8根价格线;
    牙齿——8根价格线的平滑移动平均线,并将数值向未来方向移动5根价格线;
    唇吻——5根价格线的平滑移动均线,并将数值向未来方向移动3根价格线。
    鳄鱼线的基本使用方法是:
    当颚部、牙齿、唇吻纠缠在一起时,我们便进入了观望期(鳄鱼休息了)
    当唇吻(绿)在牙齿(红)以上,牙齿在颚部(蓝)以上时,我们便进入了多头市场(颚鱼要开始吃牛肉了)
    当唇吻在牙齿以下,牙齿在颚部以下时,我便进入了空头市场(鳄鱼要开始吃熊肉了)

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 ALLIGAT 值
up1, teeth1, down1 = ALLIGAT(security_list1,check_date='20170104')
print(up1[security_list1])
print(teeth1[security_list1])
print(down1[security_list1])

# 输出 security_list2 的 ALLIGAT 值
up2, teeth2, down2 = ALLIGAT(security_list2,check_date='20170104')
for stock in security_list2:
    print(up2[stock])
    print(teeth2[stock])
    print(down2[stock])

EXPMA-指数平均线

EXPMA(security_list, check_date, N = 12)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数 N

返回:

  • EXPMA的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 8.3341666666666665, ‘603177.XSHG’: nan, ‘000002.XSHE’: 19.265000000000001, ‘601211.XSHG’: 16.537499999999998}

备注:

  • 返回结果与通达信和同花顺和东方财富一致
  • 计算方式与同花顺、东方财富和通达信相同

用法注释:

  1. EXPMA 一般以观察12日和50日二条均线为主;
  2. 12日指数平均线向上交叉50日指数平均线时,买进;
  3. 12日指数平均线向下交叉50日指数平均线时,卖出;
  4. EXPMA 是多种平均线计算方法的一;
  5. EXPMA 配合MTM 指标使用,效果更佳。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 EXPMA 值
EXPMA1 = EXPMA(security_list1,check_date='20170104', N = 12)
print(EXPMA1[security_list1]) 

# 输出 security_list2 的 EXPMA 值
EXPMA2 = EXPMA(security_list2,check_date='20170104', N = 12)
for stock in security_list2:
    print(EXPMA2[stock])

BBIBOLL-多空布林线

BBIBOLL(security_list, check_date, N = 11, M = 6)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数
  • M:统计的天数

返回:

  • BBIBOLL UPR DWN 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 8.3691666666666649, ‘603177.XSHG’: nan, ‘000002.XSHE’: 19.480520833333337, ‘601211.XSHG’: 16.675729166666663}, {‘000001.XSHE’: 8.5978513909597396, ‘603177.XSHG’: nan, ‘000002.XSHE’: 24.940210721576193, ‘601211.XSHG’: 17.285976571029227}, {‘000001.XSHE’: 8.1404819423735901, ‘603177.XSHG’: nan, ‘000002.XSHE’: 14.020830945090481, ‘601211.XSHG’: 16.065481762304099})

备注:

  • 返回结果与通达信和同花顺一致,东方财富没有该指标
  • 计算方式与通达信和同花顺相同

用法注释:

  1. 为BBI与BOLL的迭加;
  2. 高价区收盘价跌破BBI线,卖出信号;
  3. 低价区收盘价突破BBI线,买入信号;
  4. BBI线向上,股价在BBI线之上,多头势强;
  5. BBI线向下,股价在BBI线之下,空头势强。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 BBIBOLL 值
bbi1, upr1, dwn1 = BBIBOLL(security_list1,check_date='20170104', N = 11, M = 6)
print(bbi1[security_list1]) 
print(upr1[security_list1]) 
print(dwn1[security_list1]) 

# 输出 security_list2 的 BBIBOLL 值
bbi2, upr2, dwn2 = BBIBOLL(security_list2,check_date='20170104', N = 11, M = 6)
for stock in security_list2:
    print(bbi2[stock]) 
    print(upr2[stock]) 
    print(dwn2[stock])

HMA-高价平均线

HMA(security_list, check_date, N = 12)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数 N

返回:

  • HMA的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 8.3641666666666676, ‘603177.XSHG’: nan, ‘000002.XSHE’: 19.754999999999999, ‘601211.XSHG’: 16.634166666666665}

备注:

  • 返回结果与通达信一致,东方财富和同花顺没有该指标
  • 计算方式与通达信相同

用法注释:

  • 一般移动平均线以收盘价为计算基础,高价平均线是以每日最高价为计算基础。目前市场上许多投资人将其运用在空头市场,认为它的压力效应比传统平均线更具参考价值。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 HMA 值
HMA1 = HMA(security_list1,check_date='20170104', N = 12)
print(HMA1[security_list1]) 

# 输出 security_list2 的 HMA 值
HMA2 = HMA(security_list2,check_date='20170104', N = 12)
for stock in security_list2:
    print(HMA2[stock])

LMA-低价平均线

LMA(security_list, check_date, N = 12)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数 N

返回:

  • LMA的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 8.2675000000000001, ‘603177.XSHG’: nan, ‘000002.XSHE’: 18.232499999999998, ‘601211.XSHG’: 16.314999999999998}

备注:

  • 返回结果与通达信一致,东方财富和同花顺没有该指标
  • 计算方式与通达信相同

用法注释:

  • 一般移动平均线以收盘价为计算基础,低价平均线是以每日最低价为计算基础。目前市场上许多投资人将其运用在多头市场,认为它的支撑效应比传统平均线更具参考价值。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 LMA 值
LMA1 = LMA(security_list1,check_date='20170104', N = 12)
print(LMA1[security_list1]) 

# 输出 security_list2 的 LMA 值
LMA2 = LMA(security_list2,check_date='20170104', N = 12)
for stock in security_list2:
    print(LMA2[stock])

VMA-变异平均线

VMA(security_list, check_date, N = 12)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • timeperiod:统计的天数

返回:

  • VMA的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 8.3202083333333334, ‘603177.XSHG’: nan, ‘000002.XSHE’: 18.979166666666668, ‘601211.XSHG’: 16.474166666666669}

备注:

  • 返回结果与通达信和同花顺一致,东方财富没有该指标
  • 计算方式与通达信和同花顺相同

用法注释:

  1. 股价高于平均线,视为强势;股价低于平均线,视为弱势;
  2. 平均线向上涨升,具有助涨力道;平均线向下跌降,具有助跌力道;
  3. 二条以上平均线向上交叉时,买进;
  4. 二条以上平均线向下交叉时,卖出;
  5. VMA 比一般平均线的敏感度更高,消除了部份平均线落后的缺陷。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 VMA 值
VMA1 = VMA(security_list1,check_date='20170104', N = 12)
print(VMA1[security_list1]) 

# 输出 security_list2 的 VMA 值
VMA2 = VMA(security_list2,check_date='20170104', N = 12)
for stock in security_list2:
    print(VMA2[stock])

路径型

ENE-轨道线

ENE(security_list,check_date,N=25,M1=6,M2=6):

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数
  • M1:统计的天数
  • M2:统计的天数

返回:

  • UPPER LOWER ENE的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 8.9341039999999996, ‘603177.XSHG’: nan, ‘000002.XSHE’: 17.686311999999997, ‘601211.XSHG’: 17.851672000000001}, {‘000001.XSHE’: 7.9226959999999993, ‘603177.XSHG’: nan, ‘000002.XSHE’: 15.684087999999997, ‘601211.XSHG’: 15.830727999999999}, {‘000001.XSHE’: 8.4283999999999999, ‘603177.XSHG’: nan, ‘000002.XSHE’: 16.685199999999998, ‘601211.XSHG’: 16.841200000000001})

备注:

  • 返回结果与通达信和东方财富一致,同花顺没有该指标
  • 计算方式与东方财富和通达信相同

用法注释:

  1. 股价上升穿越轨道线上限时,回档机率大;
  2. 股价下跌穿越轨道线下限时,反弹机率大;
  3. 股价波动于轨道线内时,代表常态行情,此时,超买超卖指标可发挥效用;
  4. 股价波动于轨道线外时,代表脱轨行情,此时,应使用趋势型指标。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 ENE 值
up1, low1, ENE1 = ENE(security_list1,check_date='20170104',N=25,M1=6,M2=6)
print(up1[security_list1]) 
print(low1[security_list1]) 
print(ENE1[security_list1]) 

# 输出 security_list2 的 ENE 值
up2, low2, ENE2 = ENE(security_list2,check_date='20170104',N=25,M1=6,M2=6)
for stock in security_list2:
    print(up2[stock]) 
    print(low2[stock]) 
    print(ENE2[stock])

MIKE-麦克支撑压力

MIKE(security_list, check_date, N = 10)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数 N

返回:

  • STOR MIDR WEKR WEKS MIDS STOS 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 8.6416666666666675, ‘603177.XSHG’: nan, ‘000002.XSHE’: 26.2775, ‘601211.XSHG’: 17.473333333333329}, {‘000001.XSHE’: 8.5164999999999988, ‘603177.XSHG’: nan, ‘000002.XSHE’: 23.604055555555551, ‘601211.XSHG’: 17.071111111111108}, {‘000001.XSHE’: 8.3913333333333338, ‘603177.XSHG’: nan, ‘000002.XSHE’: 20.930611111111112, ‘601211.XSHG’: 16.668888888888887}, {‘000001.XSHE’: 8.1854999999999993, ‘603177.XSHG’: nan, ‘000002.XSHE’: 15.899777777777777, ‘601211.XSHG’: 16.035555555555558}, {‘000001.XSHE’: 8.1048333333333336, ‘603177.XSHG’: nan, ‘000002.XSHE’: 13.542388888888889, ‘601211.XSHG’: 15.804444444444448}, {‘000001.XSHE’: 8.024166666666666, ‘603177.XSHG’: nan, ‘000002.XSHE’: 11.185, ‘601211.XSHG’: 15.573333333333336})

备注:

  • 返回结果与通达信与东方财富一致,与同花顺不一致
  • 计算方式与通达信和东方财富相同,与同花顺不同

用法注释:

  1. MIKE指标共有六条曲线,上方三条压力线,下方三条支撑线;
  2. 当股价往压力线方向涨升时,其下方支撑线不具参考价值;
  3. 当股价往支撑线方向下跌时,其上方压力线不具参考价值;

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 MIKE 值
stor1, midr1, wekr1, weks1, mids1, stos1 = MIKE(security_list1,check_date='20170104', N = 10)
print(stor1[security_list1]) 
print(midr1[security_list1]) 
print(wekr1[security_list1]) 
print(weks1[security_list1]) 
print(mids1[security_list1]) 
print(stos1[security_list1]) 

# 输出 security_list2 的 MIKE 值
stor2, midr2, wekr2, weks2, mids2, stos2 = MIKE(security_list2,check_date='20170104', N = 10)
for stock in security_list2:
    print(stor2[stock]) 
    print(midr2[stock]) 
    print(wekr2[stock]) 
    print(weks2[stock]) 
    print(mids2[stock]) 
    print(stos2[stock])

PBX-瀑布线

PBX(security_list, check_date, N = 9)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数 N

返回:

  • PBX的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:{‘000001.XSHE’: 8.4039531237966347, ‘603177.XSHG’: nan, ‘000002.XSHE’: 17.843806850286313, ‘601211.XSHG’: 16.843910079955958}

备注:

  • 返回结果与通达信和同花顺一致,东方财富没有该指标
  • 计算方式与通达信和同花顺相同

用法注释:

  1. 股价上升穿越轨道线上限时,回档机率大;
  2. 股价下跌穿越轨道线下限时,反弹机率大;
  3. 股价波动于轨道线内时,代表常态行情,此时,超买超卖指标可发挥效用;
  4. 股价波动于轨道线外时,代表脱轨行情,此时,应使用趋势型指标。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 PBX 值
PBX1 = PBX(security_list1,check_date='20170104', N = 9)
print(PBX1[security_list1]) 

# 输出 security_list2 的 PBX 值
PBX2 = PBX(security_list2,check_date='20170104', N = 9)
for stock in security_list2:
    print(PBX2[stock])

XS-薛斯通道

XS(security_list, check_date, N = 13)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数 N

返回:

  • SUP SDN LUP LDN 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 8.919597907192415, ‘603177.XSHG’: nan, ‘000002.XSHE’: 19.023175426273021, ‘601211.XSHG’: 17.912385099606233}, {‘000001.XSHE’: 7.9098321063781789, ‘603177.XSHG’: nan, ‘000002.XSHE’: 16.869608396883621, ‘601211.XSHG’: 15.884567918518734}, {‘000001.XSHE’: 9.5082405240369283, ‘603177.XSHG’: nan, ‘000002.XSHE’: 21.585636157538445, ‘601211.XSHG’: 18.877898148622897}, {‘000001.XSHE’: 7.1728832023436473, ‘603177.XSHG’: nan, ‘000002.XSHE’: 16.283900960950056, ‘601211.XSHG’: 14.241221410364643})

备注:

  • 返回结果与通达信一致,与东方财富不同,同花顺没有该指标
  • 计算方式与通达信相同,与东方财富不同。

用法注释:

  • 薛斯建立于薛斯的循环理论的基础上,属于短线指标。在薛斯通道中,股价实际上是被短期小通道包容着在长期大通道中上下运行,基本买卖策略是当短期小通道接近长期大通道时,预示着趋势的近期反转。在上沿接近时趋势向下反转,可扑捉短期卖点。在下沿接近时趋势向上反转,可捕捉短期买点。研究这个方法可以在每一波行情中成功地逃顶捉底,寻求最大限度的赢利。薛斯通道的研判法则:
    1. 长期大通道是反映该股票的长期趋势状态,趋势有一定惯性,延伸时间较长,反映股票大周期,可以反握 股票整体趋势,适于中长线投资;
    2. 短期小通道反映该股票的短期走势状态,包容股票的涨跌起伏,有效地滤除股票走势中的频繁振动,但保留了股票价格在大通道内的上下波动,反映股票小周期,适于中短线炒作;
    3. 长期大通道向上,即大趋势总体向上 ,此时短期小通道触及(或接近长期大通道底部时,即买压增大,有反弹的可能。而短期小通道触及长期大通道顶部,既卖压增大,形态出现回调或盘整,有向长期大通道靠近的趋势。如果K线走势与短期小通道走势亦吻合得很好,那么更为有效;
    4. 长期大通道向上,而短期小通道触及长期大通道顶此时该股为强力拉长阶段,可适当观望,待短期转平转头向下时,为较好出货点,但穿透区为风险区应注意反转信号,随时出货;
    5. 长期大通道向下,即大趋势向下,此时短期小通道或价触顶卖压增加,有再次下跌趋势。而触底形态即买增大,有缓跌调整或止跌要求,同时价格运动将趋向近长期大通道上沿。回调宜慎重对待,待确认反转后方可买入;
    6. 长期大通道向下,而短期小通道向下穿透长期大通道线,此时多为暴跌过程,有反弹要求,但下跌过程会续,不宜立即建仓,应慎重,待长期大通道走平且有上趋势,短期小通道回头向上穿回时,是较好的低位仓机会;
    7. 当长期大通道长期横向走平时,为盘整行情,价格沿道上下震荡,此时为调整、建仓、洗盘阶段,预示着一轮行情的出现,短线炒家可逢高抛出,逢低买入。以短期小通道强力上穿长期大通道,且长期大通道转向,表明强劲上涨行情开始。若以短期小通道向下透长期大通道,且长期大通道向下转向,表明下跌将续。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 XS 值
sup1, sdn1, lup1, ldn1 = XS(security_list1,check_date='20170104', N = 13)
print(sup1[security_list1]) 
print(sdn1[security_list1]) 
print(lup1[security_list1]) 
print(ldn1[security_list1]) 

# 输出 security_list2 的 XS 值
sup2, sdn2, lup2, ldn2 = XS(security_list2,check_date='20170104', N = 13)
for stock in security_list2:
    print(sup2[stock]) 
    print(sdn2[stock]) 
    print(lup2[stock]) 
    print(ldn2[stock])

XS2-薛斯通道2

XS2(security_list, check_date, N = 102, M = 7)

参数:

  • security_list:股票列表
  • check_date: 要查询数据的日期
  • N:统计的天数
  • M:统计的天数

返回:

  • PASS1 PASS2 PASS3 PASS4 的值

返回结果类型:

  • 字典(dict):键(key)为股票代码,值(value)为数据。
  • 如:({‘000001.XSHE’: 8.4950699999999948, ‘603177.XSHG’: nan, ‘000002.XSHE’: 20.858490000000007, ‘601211.XSHG’: 16.910580000000024}, {‘000001.XSHE’: 8.1619299999999946, ‘603177.XSHG’: nan, ‘000002.XSHE’: 20.040510000000005, ‘601211.XSHG’: 16.247420000000023}, {‘000001.XSHE’: 8.902368598745646, ‘603177.XSHG’: nan, ‘000002.XSHE’: 22.024829980205435, ‘601211.XSHG’: 18.300698543678497}, {‘000001.XSHE’: 7.7375727073209815, ‘603177.XSHG’: nan, ‘000002.XSHE’: 19.143076524851448, ‘601211.XSHG’: 15.9062146220757})

备注:

  • 返回结果与通达信一致,东方财富和同花顺没有该指标
  • 计算方式与通达信和相同。

用法注释:

  • 特点:

    1. 根据通道形态找出波动的短周期,长周期是多少。
    2. 根据周期预测股票的后期走势。
    3. 股价的波动周期的各底是买入时机,股价的波动各顶是卖出时机。
  • 用法:

    1. 当股价运行到短周期通道的下轨时是短线买入机会,当股价运行到短周期通道的上轨时是短线的卖出时机。
    2. 当股价运行到长周期的下轨时是中长线买入时机,而当股价运行到长周期的上轨时是中长线的卖出时机。
    3. 当短周期运行到长周期的下轨时,从下向上突破长周期的下轨时是买入时机,而当短周期运行到长周期的上轨时,从上向下突破长周期的上轨时为卖出时机。

示例:

# 定义股票池列表
security_list1 = '000001.XSHE'
security_list2 = ['000001.XSHE','000002.XSHE','601211.XSHG','603177.XSHG']

# 计算并输出 security_list1 的 XS2 值
pass1, pass2, pass3, pass4 = XS2(security_list1,check_date='20170104',N=102,M=7)
print(pass1[security_list1]) 
print(pass2[security_list1]) 
print(pass3[security_list1]) 
print(pass4[security_list1]) 

# 输出 security_list2 的 XS2 值
pass_1, pass_2, pass_3, pass_4 = XS2(security_list2,check_date='20170104', N=102,M=7)
for stock in security_list2:
    print(pass_1[stock]) 
    print(pass_2[stock]) 
    print(pass_3[stock]) 
    print(pass_4[stock])