Tài nguyên đang được tải lên... tải...

Chiến lược giao dịch khối lượng Delta với mức Fibonacci

Tác giả:ChaoZhang, Ngày: 2024-05-15 10:45:58
Tags:

img

Tổng quan

Chiến lược này là một chiến lược giao dịch dựa trên khối lượng Delta và Fibonacci Retracement. Nó xác định xu hướng thị trường bằng cách so sánh khối lượng người mua và người bán trong một khoảng thời gian, trong khi sử dụng các đường rút lại Fibonacci để xác định các điểm vào và ra. Khi khối lượng của người mua vượt quá khối lượng của người bán và giá vượt qua đường rút lại Fibonacci 61,8%, nó đi vào một vị trí dài; khi khối lượng của người bán vượt quá khối lượng của người mua và giá giảm xuống dưới đường rút lại Fibonacci 38,2%, nó đóng vị trí.

Nguyên tắc chiến lược

  1. Tính toán khối lượng của người mua và khối lượng của người bán trong thời gian được chỉ định và lưu trữ chúng trong mảng.
  2. Tính toán khối lượng Delta, đó là khối lượng của người mua trừ đi khối lượng của người bán.
  3. Tính toán giá cao nhất và thấp nhất cho thời gian được chỉ định, và tính toán các đường khôi phục Fibonacci 38,2% và 61,8% dựa trên chúng.
  4. Khi khối lượng Delta lớn hơn 0 ( khối lượng của người mua lớn hơn khối lượng của người bán) và giá đóng cao hơn đường khôi phục Fibonacci 61,8%, mở một vị trí dài.
  5. Khi khối lượng Delta nhỏ hơn 0 ( khối lượng của người bán lớn hơn khối lượng của người mua) và giá đóng thấp hơn đường khôi phục Fibonacci 38,2%, đóng vị trí.

Ưu điểm chiến lược

  1. Bằng cách kết hợp các kích thước khối lượng và giá, nó có thể đánh giá toàn diện hơn xu hướng thị trường.
  2. Sử dụng các đường Fibonacci như các điểm vào và ra có hỗ trợ kỹ thuật rõ ràng.
  3. Chỉ số khối lượng Delta có thể phản ánh mối quan hệ cung và cầu trên thị trường, đó là một chỉ số hàng đầu.
  4. Các thông số có thể điều chỉnh và áp dụng cho các thị trường và loại giao dịch khác nhau.

Rủi ro chiến lược

  1. Trong thị trường dao động, việc gia nhập và thoát thường xuyên có thể dẫn đến chi phí giao dịch cao hơn.
  2. Nếu thị trường dao động mạnh, giá có thể nhanh chóng vượt qua các đường Fibonacci, dẫn đến việc bỏ lỡ các điểm vào và ra tốt nhất.
  3. Chiến lược dựa trên dữ liệu lịch sử để tính toán. Đối với các giống giao dịch mới niêm yết hoặc các tình huống thiếu dữ liệu, nó có thể ảnh hưởng đến hiệu quả của chiến lược.

Định hướng tối ưu hóa chiến lược

  1. Xem xét việc giới thiệu các chỉ số kỹ thuật khác, chẳng hạn như đường trung bình động, RSI, v.v., để xác nhận xu hướng và các điểm nhập / xuất.
  2. Đối với các thị trường và loại giao dịch khác nhau, tối ưu hóa thời gian tính toán và các tham số của Delta Volume và Fibonacci Retracement.
  3. Sau khi nhập vào một vị trí, thiết lập dừng lỗ hoặc lấy lợi nhuận để kiểm soát rủi ro và khóa lợi nhuận.
  4. Kết hợp với các chỉ số tâm lý thị trường, chẳng hạn như Chỉ số sợ hãi và tham lam, để điều chỉnh chiến lược một cách năng động.

Tóm lại

Bằng cách kết hợp các đường Delta Volume và Fibonacci Retracement, chiến lược này đi vào khi một xu hướng đang hình thành và thoát ra khi xu hướng có thể đảo ngược, để nắm bắt xu hướng chính của thị trường. Tuy nhiên, nó có thể phải đối mặt với rủi ro giao dịch thường xuyên trong thị trường dao động, vì vậy nó cần được tối ưu hóa với các chỉ số khác và các biện pháp kiểm soát rủi ro. Nhìn chung, chiến lược có suy nghĩ rõ ràng, hợp lý nghiêm ngặt và có thể được sử dụng như một chiến lược cơ bản để phát triển và áp dụng hơn nữa.


/*backtest
start: 2023-05-09 00:00:00
end: 2024-05-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Delta Volume with Fibonacci Levels Strategy", overlay=true)

// Input pour la période de calcul du volume et du delta
N = input(14, title="Période du Delta Volume")
fibLength = input(21, title="Fibonacci Lookback Period")

// Choix de la barre pour l'entrée et la sortie des trades
entryPriceType = input.string("close", title="Entry Price Type", options=["open", "close"])
exitPriceType = input.string("close", title="Exit Price Type", options=["open", "close"])

// Correction des dates de début et de fin pour le backtest
startDate = input(defval = timestamp("2021-01-01"), title = "Start Date")
endDate = input(defval = timestamp("2022-01-01"), title = "End Date")

// Calcul des volumes des acheteurs et des vendeurs
buyerVolume = array.new_float()
sellerVolume = array.new_float()

// Mise à jour des volumes à chaque bougie
buyVol = close > open ? volume : 0
sellVol = close < open ? volume : 0
array.unshift(buyerVolume, buyVol)
array.unshift(sellerVolume, sellVol)

// Gardez seulement les N dernières valeurs pour le delta volume
if array.size(buyerVolume) > N
    array.pop(buyerVolume)
if array.size(sellerVolume) > N
    array.pop(sellerVolume)

// Calcul du delta de volume
sumBuyerVolume = array.sum(buyerVolume)
sumSellerVolume = array.sum(sellerVolume)
deltaVolume = sumBuyerVolume - sumSellerVolume

// Calcul du plus haut et du plus bas pour Fibonacci
highestPrice = ta.highest(high, fibLength)
lowestPrice = ta.lowest(low, fibLength)

// Fibonacci Levels
fib382 = lowestPrice + (highestPrice - lowestPrice) * 0.5
fib618 = lowestPrice + (highestPrice - lowestPrice) * 0.786


// Vérification des dates pour le backtest
bool isInDateRange = true

// Conditions d'entrée et de sortie
entryPrice = entryPriceType == "open" ? open : close
exitPrice = exitPriceType == "open" ? open : close

// Acheter quand le volume des acheteurs dépasse celui des vendeurs, le prix est au-dessus du niveau 61.8% de Fibonacci
if isInDateRange and deltaVolume > 0 and entryPrice > fib618
    strategy.entry("Buy", strategy.long)

// Vendre quand le volume des vendeurs dépasse celui des acheteurs, le prix est en dessous du niveau 38.2% de Fibonacci
if isInDateRange and deltaVolume < 0 and exitPrice < fib382
    strategy.close("Buy")

// Affichage des niveaux de Fibonacci et du delta de volume
plot(fib382, color=color.red, title="Fibonacci 38.2%")
plot(fib618, color=color.green, title="Fibonacci 61.8%")
plot(deltaVolume, color=deltaVolume > 0 ? color.green : color.red, title="Delta Volume")


Thêm nữa