Thực hiện MACD trong Python

Tác giả:Tốt, Tạo: 2019-04-08 10:56:11, Cập nhật:

MACD là một chỉ số kỹ thuật được sử dụng phổ biến trong giao dịch cổ phiếu, tiền tệ, tiền điện tử, v.v.

Cơ bản của MACD

MACD được sử dụng và thảo luận trong nhiều vòng giao dịch khác nhau. Divergence Convergence Moving Average (MACD) là một chỉ số theo xu hướng. MACD có thể được tính rất đơn giản bằng cách trừ EMA 26 giai đoạn khỏi EMA 12 giai đoạn. Chúng tôi đã thảo luận về EMA trong bài viết của chúng tôi ở đây. MACD có thể được sử dụng và giải thích theo một số cách khác nhau để cung cấp cho các nhà giao dịch tiềm năng giá trị và cái nhìn sâu sắc về các quyết định giao dịch của họ.

Các chiến lược hữu ích

MACD thường được sử dụng bằng cách phân tích chéo, chênh lệch và các giai đoạn dốc dốc (tích cực hoặc âm). Cùng với đường MACD (từ trừ EMA 12 giai đoạn từ EMA 16 giai đoạn), biểu đồ thường sẽ bao gồm một đường tín hiệu được vẽ trên đỉnh của MACD.

Trong giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch giao dịch.

Sự khác biệt cũng rất dễ hiểu. Khi MACD thiết lập một mức cao hoặc thấp khác biệt từ mức cao hoặc thấp trong giá, nó thiết lập sự khác biệt. Sự khác biệt tăng là khi MACD có hai mức thấp tăng trên MACD với hai mức thấp giảm trên giá tài sản. Sự khác biệt có thể được sử dụng để tìm một xu hướng thay đổi. Các nhà giao dịch luôn tìm kiếm lợi thế cạnh tranh và dự đoán sự thay đổi xu hướng có thể rất có lợi. Tất nhiên, sự khác biệt không hoàn toàn đáng tin cậy và chỉ nên được sử dụng như một thông tin bổ sung, chứ không phải là chỉ dẫn về hướng giá duy nhất.

Độ dốc dốc có thể báo hiệu tình huống mua quá mức hoặc bán quá mức. Trong tình huống như vậy, xu hướng của cổ phiếu có thể sẽ sớm mất hơi nước và thấy sự điều chỉnh hoặc đảo ngược từ hướng hiện tại.

Thực hiện Python

Chúng tôi bắt đầu như thường lệ bằng cách chọn một cổ phiếu và thu thập dữ liệu. Như thường lệ, chúng tôi sẽ phân tích trên AMD và sử dụng API IEX để lấy dữ liệu. IEX luôn là một nguồn dữ liệu rất đáng tin cậy đối với tôi, nhưng bạn có thể sử dụng Quandl hoặc bất kỳ nguồn dữ liệu nào khác mà bạn thích.

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()

imgAMD từ cuối năm 2018 đến nay (sớm năm 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='upper left')
plt.show()

Điều này cho phép chúng tôi vẽ đường MACD so với đường tín hiệu.

imgMACD so với đường tín hiệu Hãy kiểm tra biểu đồ bên dưới. Bạn có đúng không? Hãy nhớ, một giao thoa tăng xảy ra khi MACD vượt qua trên đường tín hiệu và một giao thoa giảm xảy ra khi MACD vượt qua dưới đường tín hiệu.

imgCrossover tăng được thể hiện bằng màu xanh lá cây, crossover giảm được thể hiện bằng màu đỏ. Ví dụ trên là một cách đơn giản để sử dụng MACD để nghiên cứu các giao lộn.

Chúng ta bắt đầu bằng cách thực hiện các chỉ số trung bình động và 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='Signal Line', color='Magenta')
plt.legend(loc='upper left')
plt.show()

imgĐường màu xanh lá cây đại diện cho giá cổ phiếu AMD, đường màu cam đại diện cho MACD Chúng ta có thể tăng đường MACD lên một chút bằng cách vẽ nó tách biệt với giá cổ phiếu và nhìn thấy các độ dốc dốc rõ ràng hơn.

imgMACD từ cuối năm 2018 đến nay (sáng năm 2019). Chúng ta hãy nhớ lại cuộc thảo luận của chúng ta về mua quá nhiều và bán quá nhiều từ trước đây. Chúng ta có thể thấy MACD vẫn khá phẳng theo thời gian. Nhưng có một số thời điểm mà đường cong MACD dốc hơn những người khác. Đây là những trường hợp của các điều kiện mua quá nhiều hoặc bán quá nhiều. Chúng ta đại diện cho các điều kiện bán quá nhiều của chúng ta với các vòng tròn màu xanh lá cây và mua quá nhiều với các vòng tròn màu đỏ. Bạn có thể thấy rằng ngay sau khi MACD hiển thị một điều kiện mua quá nhiều hoặc bán quá nhiều, đà tăng chậm lại và giá cổ phiếu phản ứng phù hợp.

imgVòng tròn màu xanh lá cây tương ứng với chênh lệch tăng, màu đỏ tương ứng với chênh lệch giảm Chúng tôi đã thảo luận ngắn gọn về MACD và thực hiện nó trong Python để kiểm tra việc sử dụng nó trong các điều kiện chéo và mua quá mức / bán quá mức. Hy vọng bài viết này đã giúp bạn thêm một công cụ khác vào hộp công cụ giao dịch của mình!


Thêm nữa