Chiến lược theo dõi xu hướng biểu đồ cân bằng

Tác giả:ChaoZhang, Ngày: 2024-02-27 16:41:02
Tags:

一目均衡图趋势追踪策略

Thông tin chi tiết

Ichimoku Cloud Trend Following Strategy là một chiến lược phân tích kỹ thuật. Nó sử dụng năm đường chỉ số trên biểu đồ cân bằng để xác định hướng xu hướng thị trường, mức hỗ trợ kháng cự và thời gian vào.

Nguyên tắc

Các chỉ số cốt lõi của chiến lược bao gồm:

  1. Đường chuyển đổi: giá trị trung bình của mức cao và thấp trong 9 ngày gần đây, phản ánh xu hướng ngắn hạn.
  2. Đường chuẩn: Trung bình của mức cao và thấp trong 26 ngày gần đây, phản ánh xu hướng trung bình và dài hạn.
  3. Đường tiên tiến A: giá trị trung bình của đường chuyển đổi và đường chuẩn, di chuyển 26 ngày, đánh giá hỗ trợ và kháng cự trung hạn.
  4. Đường B: Đường B là đường trung bình của mức cao và thấp trong 52 ngày gần đây, chuyển vị trí 26 ngày, đánh giá mức hỗ trợ và kháng cự dài hạn.
  5. Đường ngẫu nhiên: Giá di chuyển 26 ngày, phản ánh xu hướng chuyển động.

Khi đường chuyển đổi đi qua đường chuẩn, tín hiệu mua; đi xuống là tín hiệu bán. Dòng động ở trên giá và màu mây xanh lá cây là xu hướng đa đầu, nếu không là đầu trống.

Chiến lược đánh giá hướng xu hướng dựa trên mối quan hệ giữa đường chuyển đổi và đường chuẩn. Ví dụ, đường chuyển đổi vượt qua đường chuẩn lên và được đánh giá là đi nhiều đầu, khi đó sẽ tạo ra tín hiệu mua nếu đáp ứng các điều kiện trên giá theo đường dẫn.

Dừng lỗ hoặc dừng giá dựa trên đường A hoặc đường cơ sở. Nếu chọn đường cơ sở, dừng lỗ và hòa vốn khi giá giảm qua đường cơ sở.

Phân tích ưu thế

Chiến lược này có những lợi thế sau:

  1. Sử dụng nhiều chỉ số tổng hợp để nâng cao độ chính xác.
  2. Các đường dây tiên phong có thể xác định trước mức hỗ trợ và kháng cự.
  3. Các công cụ này được sử dụng để xác minh động lực xu hướng theo dây chuyền và ngăn chặn sự đột phá giả.
  4. Đường chuẩn là một chỉ số xu hướng trong thời gian trung bình và dài, giúp giảm giao dịch tiếng ồn.

Rủi ro và tối ưu hóa

Rủi ro chính của chiến lược này là dễ dàng tạo ra tín hiệu sai.

  1. Điều chỉnh các tham số chu kỳ trung bình, tối ưu hóa độ nhạy của chỉ số.
  2. Thêm các chỉ số hoặc bộ lọc đồ họa khác, chẳng hạn như MACD, Brainstorming.
  3. Giảm tần suất giao dịch, theo dõi xu hướng đường dài và trung bình.

Tóm lại

Chiến lược biểu đồ cân bằng đầu tiên là một chiến lược đa chỉ số tổng hợp để đánh giá xu hướng thị trường, xem xét cả động lực ngắn hạn và xu hướng dài hạn. Mối quan hệ giữa đường chuyển đổi và đường chuẩn xác định thời điểm mua bán thị trường, đường chuẩn làm đường dừng lỗ để khóa lợi nhuận, có thể kiểm soát rủi ro một cách hiệu quả. Chiến lược này phù hợp với giao dịch theo dõi xu hướng đường dài và đường trung gian.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Ichimoku Cloud - BitBell", shorttitle="Ichimoku Cloud - BitBell", overlay=true)
conversionPeriods = input.int(9, minval=1, title="Conversion Line Length")
basePeriods = input.int(26, minval=1, title="Base Line Length")
laggingSpan2Periods = input.int(52, minval=1, title="Leading Span B Length")
displacement = input.int(26, minval=1, title="Lagging Span")
donchian(len) => math.avg(ta.lowest(len), ta.highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = math.avg(conversionLine, baseLine)
leadLine1bbbbb = math.avg(conversionLine, baseLine)[displacement - 1]
plot(leadLine1bbbbb)
leadLine2 = donchian(laggingSpan2Periods)
leadLine2bbbbbb = donchian(laggingSpan2Periods)[displacement - 1]
plot(leadLine2bbbbbb)

support = leadLine1bbbbb > leadLine2bbbbbb
Resistance = leadLine1bbbbb < leadLine2bbbbbb


TrailStop = input.string(title='Choose Trail Line', options=["ConversionLine", "BaseLine"], defval="ConversionLine")





var stopLong = 0.0
var stopShort = 0.0
var TagetLong = 0.0
var TargetShort = 0.0


if close > leadLine1bbbbb and close > leadLine2bbbbbb and conversionLine[1] <= baseLine[1] and conversionLine > baseLine and close > conversionLine and support
	strategy.entry("Long",strategy.long)
	stopLong := conversionLine
// if close < stopLong and strategy.position_size > 0 
// 	strategy.close("Long")
// 	stopLong := 0.0
if (close < conversionLine and strategy.position_size > 0) and (TrailStop == 'ConversionLine')
	strategy.close("Long")
	stopLong := 0.0
if (close < baseLine and strategy.position_size > 0) and (TrailStop == 'BaseLine')
	strategy.close("Long")
	stopLong := 0.0

if close < leadLine1bbbbb and close < leadLine2bbbbbb and conversionLine[1] >= baseLine[1] and conversionLine < baseLine and close < conversionLine and Resistance
	strategy.entry("Short",strategy.short)
	stopShort := conversionLine
// if close > stopShort and strategy.position_size < 0 
// 	strategy.close("Short")
// 	stopShort := 0.0
if (close > conversionLine and strategy.position_size < 0) and (TrailStop == 'ConversionLine')
	strategy.close("Short")
	stopShort := 0.0
if (close > baseLine and strategy.position_size < 0) and (TrailStop == 'BaseLine')
	strategy.close("Short")
	stopShort := 0.0
// if close >= 1.0006 * strategy.position_avg_price and strategy.position_size > 0 
// 	strategy.close("Long")
// 	stopLong := 0.0
plot(conversionLine, color=#2962FF, title="Conversion Line")
plot(baseLine, color=#B71C1C, title="Base Line")
plot(close, offset = -displacement + 1, color=#43A047, title="Lagging Span")
p1 = plot(leadLine1, offset = displacement - 1, color=#A5D6A7,
	 title="Leading Span A")
p2 = plot(leadLine2, offset = displacement - 1, color=#EF9A9A,
	 title="Leading Span B")
plot(leadLine1 > leadLine2 ? leadLine1 : leadLine2, offset = displacement - 1, title = "Kumo Cloud Upper Line", display = display.none) 
plot(leadLine1 < leadLine2 ? leadLine1 : leadLine2, offset = displacement - 1, title = "Kumo Cloud Lower Line", display = display.none) 
fill(p1, p2, color = leadLine1 > leadLine2 ? color.rgb(67, 160, 71, 90) : color.rgb(244, 67, 54, 90))

Nhiều hơn nữa