量化投资以python为工具 (python量化炒股入门与实战)

python量化低吸最佳指标,python量化金融编程从入门到精通

MACD广泛用于分析股票,货币,加密和其他资产的图表

MACD是交易股票,货币,加密货币等的常用技术指标。

MACD的基础知识

MACD在许多不同的交易圈中使用和讨论。移动平均线收敛差异(MACD)是趋势跟踪指标。通过从12周期EMA中减去26周期EMA,可以非常简单地计算MACD。我们之前在这里的文章中讨论了EMA 。MACD可以通过几种不同的方式使用和解释,以便为交易者提供潜在的价值并洞察他们的交易决策。

有用的策略

MACD通常用于分析交叉,发散和陡坡(正或负)的周期。与MACD线(从16周期EMA中减去12周期EMA)一起,图表通常包括在MACD顶部绘制的信号线。该信号线是MACD的9天EMA。

在看涨交叉中,就像在移动平均线中一样,当MACD超过信号线时会出现买入信号。当MACD穿过信号线以下时出现看跌信号。如果出现高倾斜MACD的交叉,则可能是超买或超卖情况的迹象,这取决于交叉是分别看涨还是看跌。MACD是了解价格走势强弱的重要指标。弱势运动可能会纠正,强势运动可能会继续。

分歧也很容易理解。当MACD建立高价或低价偏离价格的高点或低点时,它会建立分歧。当MACD在MACD有两个上涨低点且资产价格出现两个低点时,看涨背离已经到位。分歧可用于发现变化的趋势。交易者总是在寻找竞争优势,预测趋势变化可能非常有利可图。当然,分歧并不完全可靠,只应作为额外的信息使用,而不是价格方向的唯一指示。

陡坡可能表示超买或超卖情况。在这种情况下,股票的走势可能很快就会失去动力并看到当前方向的修正或逆转。

MACD还有以下作用:

一、帮助判断底部

当股价与MACD面积(或DIF值)出现底背离时,通常预示着底部的出现,此时需要关注抄底买入的机会。

python量化低吸最佳指标,python量化金融编程从入门到精通

二、帮助判断顶部

当股价与MACD面积(或DIF值)出现顶背离时,通常预示着顶部的出现,此时需要考虑逃顶卖出。

python量化低吸最佳指标,python量化金融编程从入门到精通

三、帮助判断回调结束

股价进入多方区域后,会出现回调,回调结束后,股价通常会继续上涨或加速上涨。本书配套提供的看盘指标公式可即时显示“回调结束”信号。

python量化低吸最佳指标,python量化金融编程从入门到精通

四、帮助判断反弹结束

股价进入空方区域后,会出现反弹,反弹结束后,股价通常会继续下跌或加速下跌。本书配套的看盘指标公式也可即时显示“反弹结束”信号。

python量化低吸最佳指标,python量化金融编程从入门到精通

0轴,重要的多空分界线

MACD在红柱跟绿柱转换之间,有一个分界线,这个分界线就是MACD0轴线。上了0轴的股票说明了一个事实,那就是它已经由弱转强了,完成了趋势的扭转。

事实上,MACD上0轴的过程,就是股价站上均线的过程。因为朋友们不要忘记,MACD的设计思路就是对均线的一个平滑优化。细心的朋友可能会发现,MACD与0轴的关系与股价和MA60的关系大体一致。MA60压在头顶上当然操作起来不爽啦,所以在0轴之上根据MACD进行操作,相当于在一个均线发散多头的市场中赚钱,风险将大大降低。

MACD这么厉害,赶紧看python怎么来实现。

Python实现

我们一如既往地选择股票并收集数据。像往常一样,我们将对AMD进行分析并使用IEX API来获取数据。IEX一直是我非常可靠的数据来源,但您可以使用Quandl或您喜欢的任何其他数据源。

import pandas as pd 
import numpy as np 
from datetime import datetime 
import matplotlib.pyplot as plt 
import pyEX as p
ticker =' 
AMD'timeframe ='6m'
df = p.chartDF(ticker,timeframe)
df = df [['close']] 
df.reset_index(level = 0,
inplace = True)df.columns = ['ds','y']
plt.plot(df.ds,df.y,label ='AMD')
plt.show()

python量化低吸最佳指标,python量化金融编程从入门到精通

AMD从2018年末到现在(2019年初)。

exp1 = df.y.ewm(span = 12,adjust = False).mean()
exp2 = df.y.ewm(span = 26,adjust = False).mean()
macd = exp1-exp2 
exp3 = macd.ewm(span = 9,adjust = False).mean()
plt.plot(df.ds,macd,label ='AMD MACD',color ='#EBD2BE')
plt.plot(df.ds,exp3,label ='Signal Line',color ='#E5A4CB')
plt。 legend(loc ='左上角')
plt.show()

这允许我们绘制MACD与信号线的关系图。看看你是否能发现看涨和看跌的交叉!

python量化低吸最佳指标,python量化金融编程从入门到精通

MACD与信号线

检查下图。你纠正了吗?请记住,当MACD越过信号线时会发生看涨交叉,而当MACD穿过信号线时会出现看跌交叉。

python量化低吸最佳指标,python量化金融编程从入门到精通

看涨交叉以绿色代表,看跌交叉以红色代表。

以上示例是使用MACD研究交叉的简单方法。接下来,让我们研究力量并检查超买或超卖情况。

我们首先实现指数移动平均线和MACD。

exp1 = df.y.ewm(span = 12,adjust = False).mean()
exp2 = df.y.ewm(span = 26,adjust = False).mean()
exp3 = df.y.ewm(span = 9,adjust = False).mean()
macd = exp1-exp2
plt.plot(df.ds,df.y,label ='AMD')
plt.plot(df.ds,macd,label ='AMD MACD',color ='orange')
plt.plot(df.ds,exp3 ,label ='信号线',color ='Magenta')
plt.legend(loc ='左上')
plt.show()

python量化低吸最佳指标,python量化金融编程从入门到精通

蓝线代表AMD股价,橙线代表MACD

通过将其与股票价格分开绘制并更清楚地看到陡峭的斜坡,我们可以将这个MACD线向上吹一点。

python量化低吸最佳指标,python量化金融编程从入门到精通

MACD从2018年末到现在(2019年初)。

让我们回顾一下我们之前对超买和超卖的讨论。随着时间的推移,我们可以看到MACD保持平稳。但有些时候MACD曲线比其他曲线更陡峭。这些都是超买或超卖情况。我们用绿色圆圈代表我们的超卖情况,用红色圆圈代表超买。您可以看到MACD显示超买或超卖后不久,动能放缓,股价反应相应。

python量化低吸最佳指标,python量化金融编程从入门到精通

绿色圆圈对应看涨背离,红色对应看跌背离

绿色圆圈对应看涨背离,红色对应看跌背离

我们简要讨论了MACD并在Python中实现它,以检查它在交叉和超买/超卖条件下的使用。希望这篇文章能帮助您在交易工具箱中添加另一个工具!

有关MACD的更详细信息:

请google 或百度,MACD - 维基百科.

当然,中国的股票还是建议tushare。请查看历史:

python数据分析防止解禁股风险