编写想法:
在市场中,判断顶部和底部是极为复杂且充满挑战的任务,许多人都试图通过不同的方法来实现这一目标,但成功率往往参差不齐。其中,MACD指标作为一款被广泛使用的技术分析工具,经常被用于监控市场的顶部和底部。能不能改进一下去掉现在的钝化情况呢。
思路逻辑:
打算通过计算多个指标来辅助判断顶底,改进一下MACD的效果。
1. 计算基本价格变动指标ZF_1:计算当前收盘价相对于前一日收盘价的百分比变动,即日涨跌幅。
ZF_2:计算当前收盘价相对于过去18天内最低价和最高价的相对位置,用于衡量股价在短期内的相对强弱。
2. 计算平滑移动平均线(SMA)JX_1 和 JX_2:分别计算ZF_2的9日和3日SMA,用于平滑价格变动趋势,减少市场噪音。
3. 构造主要交易信号指标(JQJX)JQJX:基于JX_1和JX_2的加权差计算得到,用于生成交易信号。
JQJX_XS:判断JQJX是否较前一交易日上涨,用于辅助判断趋势方向。
4. 计算长期价格及成交量相关指标ZQZD 和 ZDCJL:分别计算过去50天内最低价对应的周期数和该周期内的成交量总和,用于评估长期低价区域的支撑力度。
ZQZG 和 ZGCJL:类似地,计算过去50天内最高价相关的指标,评估高价区域的压力。
ZQZF 和 ZQCCL、ZQZF_1 和 ZQCCL_1:分别计算相对于长期开盘价的百分比变动和成交量占比,用于进一步分析长期价格变动和成交量情况。
5. 构造EMA(指数移动平均)指标序列JQJX_1 到 JQJX_7:对JX_1及其EMA值进行多层EMA计算,形成不同周期的平滑曲线,用于识别更细致的价格趋势变化。
6. 构造信号ZF_ZX 和 ZF_ZX_1:计算短期(20天)内的价格相对强弱及其SMA平滑值,用于进一步分析短期趋势。
JQJX_ZF 和 JQJX_ZX:基于ZF_ZX_1的EMA和加权差构造新的交易信号指标。
JC 和 SC:分别定义多头信号和空头信号的条件,当JQJX_ZX上穿ZF_ZX_1且ZF_ZX_1小于2.1且收盘价高于开盘价时,视为看多信号;反之,当ZF_ZX_1上穿JQJX_ZX且ZF_ZX_1大于2.5且收盘价低于开盘价时,视为看空信号。
注意:这段代码分享旨在帮助交易者学习编写指标公式案例,个人想法,仅供参考
效果展示:
从图中可以看出,该指标的顶底提示相对较为及时。
源码展示: