Chiến lược dao động trung bình TEMA cao và thấp


Ngày tạo: 2023-11-15 17:49:52 sửa đổi lần cuối: 2023-11-15 17:49:52
sao chép: 0 Số nhấp chuột: 655
1
tập trung vào
1617
Người theo dõi

Chiến lược dao động trung bình TEMA cao và thấp

Tổng quan

Chiến lược này sử dụng ba chỉ số TEMA, VWMACD và HMA để nắm bắt xu hướng giảm giá của Bitcoin. Lập luận chính của nó là phá giá khi giá trên VWMACD vượt qua 0 đường, giá thấp hơn đường trung bình HMA và đường ngắn TEMA thấp hơn đường dài TEMA.

Nguyên tắc

Đầu tiên, tính toán VWMACD (~ và MACD thông thường chỉ khác nhau về cách tính toán đường trung bình di chuyển) và vẽ nó thành một biểu đồ cột. Sau đó thêm HMA làm bộ lọc xu hướng. Sau đó, tạo và thêm đường nhanh TEMA (~ 5 chu kỳ) và đường chậm TEMA (~ 8 chu kỳ) và tính toán chênh lệch của cả hai và vẽ nó ở gần trục 0.

Các quy tắc nhập cảnh cụ thể là: Khi VWMACD thấp hơn 0 trục, giá thấp hơn đường trung bình HMA và đường nhanh TEMA thấp hơn đường chậm TEMA thì trống.

Các quy tắc cụ thể là: Khi VWMACD đi qua 0-axis, giá cao hơn đường trung bình HMA hoặc đường nhanh TEMA đi qua đường chậm TEMA.

Phân tích lợi thế

  • Sử dụng ba chỉ số kết hợp để tăng độ tin cậy của tín hiệu giao dịch
  • VWMACD có thể nhận diện các xu hướng khác với các phán đoán chính xác hơn
  • HMAfilt là bộ lọc xu hướng để tránh bị lừa bởi tiếng ồn
  • TEMA Portfolio, nắm bắt điểm đảo ngược ngắn hạn
  • Sử dụng các tham số chu kỳ ngắn, phù hợp với giao dịch tần số cao, để nắm bắt các xu hướng giảm ngắn hạn

Phân tích rủi ro

  • Gói đa chỉ số, thiết lập tham số phức tạp, cần kinh nghiệm để điều chỉnh
  • Mặc dù có bộ lọc HMA, nhưng vẫn cần ngăn chặn đột phá giả mạo trong thị trường chấn động
  • Các tham số chu kỳ ngắn dễ bị nhiễu bởi tiếng ồn thị trường, có tín hiệu sai
  • Cần kiểm soát chặt chẽ để tránh thiệt hại lớn hơn dự kiến
  • Cần chú ý đến việc kiểm soát chi phí giao dịch, giao dịch tần số cao dễ bị mất phí xử lý

Hướng tối ưu hóa

  • Có thể thử nghiệm các tổ hợp tham số của các chu kỳ khác nhau để tìm tham số tốt nhất
  • Các chỉ số khác có thể được thêm vào như RSI, KD và các phán quyết hỗ trợ khác
  • Có thể sử dụng các tham số thích ứng theo các tình huống thị trường khác nhau
  • Có thể tối ưu hóa các chiến lược dừng lỗ, chẳng hạn như dừng lỗ khi giá di chuyển
  • Có thể kết hợp các chỉ số năng lượng, tránh đột phá giả của năng lượng không đủ

Tóm tắt

Chiến lược này sử dụng sự kết hợp của VWMACD, HMA và TEMA nhanh, Ziel trong việc nắm bắt xu hướng giảm ngắn hạn của Bitcoin. Ưu điểm của nó là tín hiệu đáng tin cậy, phù hợp với giao dịch tần số cao. Nhưng cũng có các tham số điều chỉnh phức tạp, dễ bị nhiễu nhiễu và các rủi ro khác. Bằng cách tiếp tục tối ưu hóa các tham số, thêm các chỉ số phụ trợ, chiến lược có thể làm cho chiến lược ổn định và đáng tin cậy hơn.

Mã nguồn chiến lược
/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="TEMA_HMA_VWMACD short strategy", shorttitle="Short strategy", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.018, currency='USD')
startP = timestamp(input(2017, "Start Year"), input(12, "Month"), input(17, "Day"), 0, 0)
end   = timestamp(9999,1,1,0,0)
_testPeriod() =>
    iff(time >= startP and time <= end, true, false)
    

slow = input(13, "Short period")
fast = input(21, "Long period")
signal = input(5, "Smoothing period")

Fast = ema( volume * close, fast ) / ema( volume, fast ) 
Slow = ema( volume * close, slow ) / ema( volume, slow ) 
Macd = Slow - Fast 
Signal = ema(Macd, signal) 
Hist=Macd-Signal
plot(Hist, color=color.silver, linewidth=1, style=plot.style_histogram)
plot(0, color=color.red)

length = input(400, minval=1, title = "HMA")
hullma = wma(2*wma(close, length/2)-wma(close, length), floor(sqrt(length)))

tema_length_1 = input(5, "Fast moving TEMA")
tema_length_2 = input(8, "Slow moving TEMA")


tema(sec, length)=>
    tema1= ema(sec, length)
    tema2= ema(tema1, length)
    tema3= ema(tema2, length)
    tema = 3*tema1-3*tema2+tema3

tema1 = tema(hlc3, tema_length_1)
tema2 = tema(hlc3, tema_length_2)

threshold  = 0
tm = tema1 - tema2
plot_fast = plot(tm, color = tm > 0 ? color.green : color.red)
plot(threshold, color=color.purple)

up =  crossover(tm, 0) 
down = crossunder(tm, 0)

longCondition =  (Hist < 0) and hullma > close and (tema1 < tema2)  and _testPeriod() 
strategy.entry('BUY', strategy.short, when=longCondition)  
 
shortCondition =  (Hist > 0) or hullma < close or up
strategy.close('BUY', when=shortCondition)


// Take profit  
tp = input(1, type=input.float, title='Take Profit (%)')  
sl = input(4, type=input.float, title='Stop Loss (%)')  
strategy.exit('XLong', from_entry='BUY', profit=(close * (tp/100) * (1/syminfo.mintick)), loss=(close * (sl/100) * (1/syminfo.mintick)))