
Ý tưởng chính của chiến lược này là sử dụng đường trung bình di chuyển và dải Brin để đánh giá xu hướng giá và tạo ra tín hiệu giao dịch. Cụ thể, trước tiên tính toán phạm vi biến động thực tế trung bình ATR trong một chu kỳ nhất định, sau đó kết hợp giá cao nhất và giá thấp nhất để có được kênh giới hạn. Nếu giá phá vỡ kênh, hãy để giá đóng cửa bằng giá trong kênh.
Chiến lược này đầu tiên tính toán phạm vi biến động ATR, sau đó kết hợp với giá cao nhất và giá thấp nhất, để có được kênh giới hạn. Giá gần sẽ chỉ bị giới hạn trong giá kênh khi giá phá vỡ kênh. Sau đó, giá gần bị giới hạn sẽ tìm kiếm đường trung bình di chuyển, đường trung bình này được gọi là đường trung bình của người giao dịch xu hướng.
Trọng tâm của chiến lược này là định hướng xu hướng theo trung bình của các nhà giao dịch xu hướng, nó thể hiện hướng xu hướng trung và dài hạn. Phương thức của dây đai Brin là lọc một số phá vỡ giả, làm cho tín hiệu giao dịch đáng tin cậy hơn. Toàn bộ chiến lược kết hợp theo dõi xu hướng và đánh giá phá vỡ, tạo thành một hệ thống xu hướng mạnh mẽ hơn.
Phản ứng:
Chiến lược này nói chung là một hệ thống theo dõi xu hướng mạnh mẽ. Nó có thể đánh giá xu hướng thị trường trên đường dài và trung bình và tạo ra tín hiệu giao dịch kết hợp với dải Brin.
/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 16/10/2018
// This is plots the indicator developed by Andrew Abraham
// in the Trading the Trend article of TASC September 1998
// It was modified, result values wass averages.
// And draw two bands above and below TT line.
////////////////////////////////////////////////////////////
strategy(title="Trend Trader Bands Backtest", overlay = true)
Length = input(21, minval=1),
LengthMA = input(21, minval=1),
BandStep = input(20),
Multiplier = input(3, minval=1)
reverse = input(false, title="Trade reverse")
avgTR = wma(atr(1), Length)
highestC = highest(Length)
lowestC = lowest(Length)
hiLimit = highestC[1]-(avgTR[1] * Multiplier)
loLimit = lowestC[1]+(avgTR[1] * Multiplier)
ret = 0.0
ret := iff(close > hiLimit and close > loLimit, hiLimit,
iff(close < loLimit and close < hiLimit, loLimit, nz(ret[1], 0)))
nResMA = ema(ret, LengthMA)
pos = 0.0
pos := iff(close < nResMA - BandStep , -1,
iff(close > nResMA + BandStep, 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 )
barcolor(pos == -1 ? red: pos == 1 ? green : blue )
plot(nResMA, color= blue , title="Trend Trader AVR")
plot(nResMA+BandStep, color= red , title="Trend Trader UpBand")
plot(nResMA-BandStep, color= green, title="Trend Trader DnBand")