Chiến lược giao dịch Fibonacci Retracement trong Python

Các công cụ giao dịch Fibonacci được sử dụng để xác định mức hỗ trợ / kháng cự hoặc xác định các mục tiêu giá. Sự hiện diện của chuỗi Fibonacci đã thu hút sự chú ý của các nhà phân tích kỹ thuật khi sử dụng Fibonacci cho giao dịch.

Chuỗi Fibonacci

Chuỗi Fibonacci là một chuỗi các số, bắt đầu bằng số không và một, trong đó mỗi số là tổng của hai số trước đó.

Fibonacci Sequence nos

Chuỗi Fibonacci là 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610 ……
được mở rộng đến vô cùng và có thể được tóm tắt bằng cách sử dụng công thức dưới đây:

n = X n-1 + X n-2

Một số thông tin thú vị về dãy Fibonacci là gì?

Có một số thuộc tính thú vị của dãy Fibonacci. Chia bất kỳ số nào trong chuỗi theo số trước đó; tỷ lệ luôn là khoảng 1.618 .

X n / X n-1 = 1,618
55/34 = 1,618
89/55 = 1,618
144/89 = 1,618

1,618 được gọi là tỷ lệ vàng.

Tương tự, chia bất kỳ số nào trong chuỗi theo số tiếp theo; tỷ lệ luôn xấp xỉ 0,618.

X n / X n + 1 = 0,618
34/55 = 0,618
55/89 = 0,618
89/144 = 0,618

0,618 được thể hiện bằng tỷ lệ phần trăm là 61,8%.
Căn bậc hai của 0.618 là 0.786 (78.6%).

Tính nhất quán tương tự được tìm thấy khi bất kỳ số nào trong chuỗi được chia cho sau đó hai vị trí.

X n / X n + 2 = 0,382
13/34 = 0,382
21/55 = 0,382
34/89 = 0,382

0,382 được biểu thị bằng phần trăm là 38,2%

Ngoài ra, có sự nhất quán khi bất kỳ số nào trong dãy được chia cho một số ở vị trí thứ ba bên phải.

X n / X n + 3 = 0,236
21/89 = 0,236
34/144 = 0,236
55/233 = 0,236

0,236 được biểu thị theo tỷ lệ phần trăm là 23,6%.

Tỷ lệ 23,6%, 38,2%, 61,8% và 78,6% được gọi là tỷ lệ Fibonacci.

Chiến lược giao dịch với Fibonacci retracement

Các tỷ lệ Fibonacci, 23,6%, 38,2% và 61,8%, có thể được áp dụng cho phân tích chuỗi thời gian để tìm mức hỗ trợ. Bất cứ khi nào giá di chuyển lên hoặc xuống một cách đáng kể, nó thường có xu hướng pulback trở lại trước khi nó tiếp tục di chuyển theo hướng ban đầu. Ví dụ: nếu giá cổ phiếu đã tăng từ 200 đô la đến 250 đô la, thì có khả năng nó sẽ quay trở lại mức 230 đô la trước khi nó tiếp tục tăng lên. Mức thoái lui $ 230 được dự báo bằng cách sử dụng các tỷ lệ Fibonacci.

Chúng tôi có thể tính ra mứ 230 đô la bằng cách sử dụng toán học đơn giản
Trênh lệch = $ 250 – $ 200 = $ 50
38,2% của sự trênh lệch = 38,2% * 50 = $ 19,1
Dự báo giảm về mức = $ 250 – $ 19,1 = $ 230,9

Bất kỳ mức giá nào dưới $ 230 cung cấp một cơ hội tốt cho để tham gia mua vào các vị thế mới theo hướng của xu hướng. Tương tự, chúng tôi có thể tính toán 23,6%, 61,8% và các tỷ lệ Fibonacci khác.

Làm thế nào để tìm mức Fibonacci Retracement?

Như chúng ta đã biết, sự hồi phục là những biến động giá đi ngược lại xu hướng ban đầu. Để đánh dấu di chuyển, chúng tôi cần chọn mức cao nhất và thấp nhất trên biểu đồ.

Lấy một ví dụ về Exxon Mobil để hiểu cấu trúc Fibonacci retracement

# Để nhập giá cổ phiếu
từ dữ liệu nhập pandas_datareader dưới dạng pdr
# Dánh dấu
nhập khẩu matplotlib.pyplot như plt
df = pdr.get_data_google ('XOM', '2017-08-01', '2017-12-31')
fig, ax = plt.subplots ()
ax.plot (df.Close, color = 'black')

Tìm mức Fibonacci Retracement

Như ta đã thấy từ biểu đồ, giá có sự chuyển dịch tăng đáng kể trong giá từ tháng 9/2017 đến cuối tháng 10 năm 2017. Trong trường hợp này, giá tối thiểu là 76 đô la và giá tối đa là 84 đô la. 8 đô la là tổng số di chuyển.

price_min = 76 # df.Close.min ()
price_max = 84 # df.Close.max ()

Mức thoái lui cho tỷ lệ Fibonacci 23,6%, 38,2% và 61,8% được tính như sau:

# Fibonacci Levels xem xét xu hướng ban đầu khi di chuyển lên trên
diff = price_max - price_min
level1 = price_max - 0.236 * khác
level2 = price_max - 0.382 * khác
level3 = price_max - 0.618 * khác

in "Cấp", "Giá"
in "0", price_max
in "0.236", cấp 1
in "0,382", mức 2
in "0,618", mức 3
in "1", price_min

ax.axhspan (level1, price_min, alpha = 0.4, color = 'lightsalmon')
ax.axhspan (level2, level1, alpha = 0,5, color = 'palegoldenrod')
ax.axhspan (level3, level2, alpha = 0.5, color = 'palegreen')
ax.axhspan (price_max, level3, alpha = 0.5, color = 'powderblue')

plt.ylabel ("Giá")
plt.xlabel ("Ngày")
plt.legend (loc = 2)
plt.show ()

Đầu ra:Đầu ra

Tìm biểu đồ mức Fibonacci Retracement

Mức thoái lui đầu tiên ở mức 23,6% là 82,10 đô la, mức thoái lui thứ hai ở mức 38,6% là 80,90 đô la và mức thoái lui tiếp theo là 61,8% là 79,05 đô la. Vào giữa tháng 11, giá cổ phiếu Exxon Mobil đã giảm xuống còn 80,40 USD, (giảm xuống dưới ngưỡng thoái lui 38,6%) và sau đó tiếp tục xu hướng tăng.

Làm thế nào để sử dụng chiến lược giao dịch Fibonacci retracement?

Các mức thoái lui có thể được sử dụng trong một tình huống mà bạn muốn mua một cổ phiếu cụ thể nhưng bạn đã không thể mua vì sự tăng giá mạnh của cổ phiếu. Trong tình huống như vậy, hãy đợi giá điều chỉnh về các mức thoái lui Fibonacci như 23,6%, 38,2% và 61,8% và sau đó mua cổ phiếu. Tỷ lệ 38,2% và 61,8% là mức hỗ trợ quan trọng nhất.

Chiến lược giao dịch Fibonacci retracement này hiệu quả hơn trong một khoảng thời gian dài hơn và giống như bất kỳ chỉ số nào, sử dụng chiến lược với các chỉ báo kỹ thuật khác như RSI, MACD và các mẫu nến có thể cải thiện xác suất thành công.

Chúc may mắn với giao dịch Fibonacci 🙂


Code hiển thị với dữ liệu giao dịch phái sinh Vn30F1m ngày 02/10/2018

 
# IMPORTING IMPORTANT LIBRARIES
import csv
import pandas as pd
# To plot
import matplotlib.pyplot as plt

dataset = pd.read_csv('vn30f1m_1.csv', usecols=[1,2])
OHLC_avg = dataset.mean(axis = 1)
HLC_avg = dataset[['3']].mean(axis = 1)
close_val = dataset[['3']]
# Draw
fig, ax = plt.subplots()
ax.plot(close_val, color='black')

price_min = close_val.min()
price_max = close_val.max()

# Fibonacci Levels considering original trend as upward move
diff = price_max - price_min
level1 = price_max - 0.236 * diff
level2 = price_max - 0.382 * diff
level3 = price_max - 0.618 * diff

print ("Level", "Price")
print ("0 ", price_max)
print ("0.236", level1)
print ("0.382", level2)
print ("0.618", level3)
print ("1 ", price_min)

ax.axhspan(level1, price_min, alpha=0.4, color='lightsalmon')
ax.axhspan(level2, level1, alpha=0.5, color='palegoldenrod')
ax.axhspan(level3, level2, alpha=0.5, color='palegreen')
ax.axhspan(price_max, level3, alpha=0.5, color='powderblue')

plt.ylabel("Price")
plt.xlabel("Date")
plt.legend(loc=2)
plt.show()

Kết quả

Tải file CSV dữ liệu giao dịch trong ngày 02/10/2018 vn30f1m_1 - Tại đây

Nguồn: https://www.quantinsti.com/blog/fibonacci-retracement-trading-strategy-python/