
Hiệu quả phân đoạn phân cực (Polarized Fractal Efficiency, PFE) là một chiến lược giao dịch đo lường hiệu quả của chuyển động giá bằng cách áp dụng các khái niệm về hình học phân đoạn và lý thuyết hỗn loạn. Phong trào giá là xuyên tuyến và hiệu quả, khoảng cách giữa hai điểm càng ngắn thì hiệu quả của chuyển động giá càng cao.
Chỉ số trung tâm của chiến lược giao dịch PFE là hiệu quả phân tách cực (PFE). Chỉ số này được tính dựa trên công thức sau:
PFE = sqrt(pow(close - close[Length], 2) + 100)
Trong đó, Length là khoảng thời gian cửa sổ xem lại, tham số này được đặt bằng cách nhập. PFE thực sự là thước đo chiều dài của giá trong thời gian Length, nó sử dụng khoảng cách Euclidean (đường thẳng) để đo gần.
Để đánh giá hiệu quả của chuyển động giá, chúng ta cần một chuẩn mực để so sánh. Mức chuẩn này là chiều dài của con đường giá kết nối theo thứ tự thực tế trong khoảng thời gian Length, được gọi là C2C ((Close to Close), và công thức tính toán như sau:
C2C = sum(sqrt(pow((close - close[1]), 2) + 1), Length)
Vì vậy, chúng ta có thể tính toán hiệu quả phân dạng của biến động giá xFracEff:
xFracEff = iff(close - close[Length] > 0, round((PFE / C2C) * 100) , round(-(PFE / C2C) * 100))
Nếu giá tăng, điểm số là tích cực, nếu giảm, thì là âm. Giá trị tuyệt đối càng lớn, nghĩa là vận động càng kém hiệu quả.
Để tạo ra tín hiệu giao dịch, chúng tôi tính xEMA, tức là chỉ số di chuyển trung bình của xFracEff. Và thiết lập các kênh mua và bán:
xEMA = ema(xFracEff, LengthEMA)
BuyBand = input(50)
SellBand = input(-50)
Khi xEMA trên đi qua BuyBand tạo ra tín hiệu mua; khi xEMA dưới đi qua SellBand tạo ra tín hiệu bán.
Chiến lược giao dịch PFE có những ưu điểm sau:
Chiến lược giao dịch PFE cũng có những rủi ro sau:
Chiến lược giao dịch PFE có thể được tối ưu hóa theo các khía cạnh sau:
Chiến lược giao dịch PFE dựa trên hình học phân tách và lý thuyết hỗn độn, đưa ra một phương pháp mới để đo lường hiệu quả của chuyển động giá. So với các chỉ số kỹ thuật thông thường, phương pháp này có lợi thế riêng của nó, nhưng cũng phải đối mặt với một số vấn đề về độ trễ thời gian, tối ưu hóa tham số, chất lượng tín hiệu.
/*backtest
start: 2024-01-07 00:00:00
end: 2024-01-14 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 29/09/2017
// The Polarized Fractal Efficiency (PFE) indicator measures the efficiency
// of price movements by drawing on concepts from fractal geometry and chaos
// theory. The more linear and efficient the price movement, the shorter the
// distance the prices must travel between two points and thus the more efficient
// the price movement.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="PFE (Polarized Fractal Efficiency)", shorttitle="PFE (Polarized Fractal Efficiency)")
Length = input(9, minval=1)
LengthEMA = input(5, minval=1)
BuyBand = input(50, step = 0.1)
SellBand = input(-50, step = 0.1)
reverse = input(false, title="Trade reverse")
hline(BuyBand, color=green, linestyle=line, title = "TopBand")
hline(SellBand, color=red, linestyle=line, title = "LowBand")
PFE = sqrt(pow(close - close[Length], 2) + 100)
C2C = sum(sqrt(pow((close - close[1]), 2) + 1), Length)
xFracEff = iff(close - close[Length] > 0, round((PFE / C2C) * 100) , round(-(PFE / C2C) * 100))
xEMA = ema(xFracEff, LengthEMA)
pos = iff(xEMA < SellBand, -1,
iff(xEMA > BuyBand, 1, nz(pos[1], 0)))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1, 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xEMA, color=blue, title="PFE")