macd二次翻红选股指标公式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
macd二次翻红选股指标公式
MACD(Moving Average Convergence Divergence,即移动MACD(Moving Average Convergence Divergence,即移动平均收敛/发散)是一种常用的技术分析指标,用于研究股票价格的趋势。
二次翻红选股指标是指在MACD指标中,当MACD线从下方向上穿过零轴,然后再向下穿过零轴,最后再次向上穿过零轴时,被认为是一个买入信号。
MACD二次翻红选股指标公式如下:
1. 计算EMA(指数移动平均):EMA12 = 前一日EMA12 * 11/13 + 今日收盘价 * 2/13
EMA26 = 前一日EMA26 * 25/27 + 今日收盘价 * 2/27
2. 计算DIF(差离值):DIF = EMA12 - EMA26
3. 计算DEA(讯号线):DEA = 前一日DEA * 8/10 + DIF * 2/10
4. 计算MACD柱状图:MACD = (DIF - DEA) * 2
5. 判断二次翻红条件:当MACD线从下方向上穿过零轴,然后再向下穿过零轴,最后再次向上穿过零轴时,认为是一个买入信号。
以下是一个简单的Python代码示例,用于计算MACD二次翻红选股指标:
python
import pandas as pd
import numpy as np
def calculate_ema(prices, days):
ema = [0] * len(prices)
ema[0] = prices[0]
multiplier = 2 / (days + 1)
for i in range(1, len(prices)):
ema[i] = (prices[i] - ema[i - 1]) * multiplier + ema[i - 1] return ema
def calculate_macd(prices, short_days=12, long_days=26):
short_ema = calculate_ema(prices, short_days)
long_ema = calculate_ema(prices, long_days)
dif = [short_ema[i] - long_ema[i] for i in range(len(prices))] dea = calculate_ema(dif, 9)
macd = [dif[i] - dea[i] for i in range(len(prices))]
return dif, dea, macd
def find_buy_signals(macd):
buy_signals = []
for i in range(len(macd)):
if macd[i][-1] > 0 and macd[i][-2] < 0 and macd[i][-3] < 0: buy_signals.append(i)
return buy_signals
# 示例数据
prices = [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119]
buy_signals = find_buy_signals(calculate_macd(prices))
print("买入信号位置:", buy_signals)
请注意,这个示例仅用于演示目的,实际应用中需要根据具体的股票数据进行调整。