Chiến lược chi phí trung bình hàng ngày kết hợp với tín hiệu chạm EMA


Ngày tạo: 2024-01-16 15:30:17 sửa đổi lần cuối: 2024-01-16 15:30:17
sao chép: 1 Số nhấp chuột: 846
1
tập trung vào
1617
Người theo dõi

Chiến lược chi phí trung bình hàng ngày kết hợp với tín hiệu chạm EMA

Tổng quan

Chiến lược Pine Script thực hiện một chiến lược chi phí trung bình hàng ngày trên nền tảng TradingView, kết hợp với các tín hiệu cảm ứng của chỉ số EMA để xác định điểm vào. Chiến lược này tuân theo quy tắc đầu tư chi phí trung bình, mua với số tiền cố định mỗi ngày để phân tán rủi ro. Đồng thời, thông qua tín hiệu cảm ứng của EMA để hướng dẫn thời điểm vào cụ thể.

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

Chiến lược này có một số đặc điểm:

  1. Luật đầu tư chi phí trung bình hàng ngày

    • Mua hàng ngày với số tiền cố định, bất kể thị trường tăng hay giảm
    • Phân tán đầu tư dài hạn, giảm rủi ro trong đầu tư đơn lẻ
  2. Chỉ số EMA xác định điểm nhập cảnh

    • Khi EMA 5, 10 và 20 ngày trên giá đóng cửa, kích hoạt mua
    • Đường EMA là hỗ trợ, nên tránh điều chỉnh ngắn hạn
  3. Cơ chế dừng lỗ động

    • Hạn chế thanh toán khi giá đóng cửa giảm xuống dưới đường trung bình di chuyển đơn giản ngày 20
    • Tránh thiệt hại
  4. Giới hạn vị trí tối đa

    • Tối đa 300 giao dịch được cho phép, kiểm soát quy mô và rủi ro vị trí
    • Phòng chống thiếu hụt vốn do đầu tư quá mức

Cụ thể, chiến lược này đặt một số tiền cố định mỗi ngày, số lượng cổ phiếu có thể mua được được tính theo giá đóng cửa trong ngày. Dựa trên đó, nếu giá đóng cửa vào ngày hôm đó vượt qua bất kỳ EMA nào trong các ngày 5, 10 và 20, nó sẽ kích hoạt tín hiệu mua. Một khi vị trí tích lũy đạt đến giới hạn tối đa 300, sẽ không có hoạt động mua mới. Ngoài ra, nếu giá đóng cửa giảm xuống SMA ngày 20 hoặc đến ngày rút lui được thiết lập trước, thì sẽ thanh toán lỗ hổng. Chiến lược này cũng vẽ đường EMA của các chu kỳ khác nhau trên biểu đồ giá, để phân tích trực quan.

Phân tích lợi thế

Chiến lược này có một số lợi thế:

  1. Phân phối đầu tư, giảm rủi ro đầu tư đơn lẻ

    • Đầu tư nhỏ, tiền cố định mỗi ngày, dù có thăng trầm
    • Không có vấn đề về sự tái hợp
  2. EMA kết hợp, tránh điều chỉnh ngắn hạn

    • EMA trên đeo như một tín hiệu mua, tránh mua trong thời gian rút lui
    • Tiếp tục mua hàng loạt và phân tán rủi ro trong thời gian rút lui
  3. Động lực dừng lỗ, kiểm soát lỗ

    • Thiết lập đường dừng lỗ, có thể dừng lỗ kịp thời
    • Ngăn ngừa thiệt hại lớn
  4. Giới hạn vị trí tối đa, kiểm soát rủi ro

    • Vị trí tối đa có thể được thiết lập trước để ngăn chặn đầu tư quá mức
    • Đầu tư trong phạm vi khả năng chịu đựng của ETP
  5. EMA trực quan, dễ dàng đánh giá

    • Đường vẽ các chu kỳ EMA khác nhau trên biểu đồ giá
    • Dễ dàng và dễ dàng để người điều khiển theo dõi
  6. Độ cao tùy chỉnh

    • Có thể tùy chỉnh số tiền đầu tư, chu kỳ EMA, đường dừng lỗ, v.v.
    • Điều chỉnh theo sở thích rủi ro cá nhân

Phân tích rủi ro

Chiến lược này cũng có một số rủi ro cần lưu ý:

  1. Rủi ro hệ thống khó tránh được

    • Hành động thiên nga đen có thể gây thiệt hại lớn hơn
    • Đầu tư phân tán có thể làm giảm rủi ro, không thể tránh hoàn toàn
  2. Rủi ro của khoản đầu tư cố định

    • Lưu ý: Tiết kiệm một khoản tiền cố định mỗi ngày, có thể hối hận khi giá tăng mạnh
    • Tối ưu hóa số tiền đầu tư có thể được điều chỉnh động
  3. EMA không thể phản ứng với tình huống cực đoan

    • EMA phản ứng chậm với các sự kiện bất ngờ và không thể ngăn chặn thiệt hại kịp thời
    • Có thể xem xét kết hợp với các chỉ số như KD, BOLL để xác định các hành vi cực đoan
  4. Giới hạn vị trí cũng hạn chế khả năng kiếm tiền

    • Các vị trí có giới hạn, không thể tăng lên vô hạn
    • Cần cân nhắc toàn diện, cân bằng giữa rủi ro và lợi ích
  5. Thiết lập điểm dừng đòi hỏi kinh nghiệm và kỹ năng

    • Đi quá gần sẽ dễ bị phá vỡ, đi quá xa sẽ không kịp thời.
    • Cần cân bằng bằng cách thử nghiệm lặp lại

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

Chiến lược này có thể được tối ưu hóa thêm:

  1. Tăng năng động điều chỉnh số tiền đầu tư hàng ngày

    • Có thể điều chỉnh động theo các chỉ số cụ thể
    • Tiếp theo, các nhà đầu tư sẽ tăng đầu tư khi họ thấy tốt và giảm khi họ thấy tồi tệ.
  2. Kết hợp nhiều tiêu chí để đánh giá

    • Ngoài EMA, các chỉ số khác như KD, BOLL cũng có thể được đưa vào.
    • Cải thiện khả năng phán đoán về hành vi cực đoan
  3. Sử dụng chỉ số trung bình di chuyển

    • EMA phản ứng chậm với các sự kiện bất ngờ, có thể xem xét sử dụng DEMA, TEMA, v.v.
    • Nhanh chóng nắm bắt các xu hướng mới
  4. Động lực điều chỉnh vị trí tối đa

    • Có thể điều chỉnh động vị trí tối đa tùy theo lợi nhuận chiến lược
    • Lớn vị thế khi định giá hợp lý
  5. Sử dụng dừng dần dần

    • Chiến lược hiện tại là dừng lỗ trực tiếp, có thể sử dụng thanh toán dần dần
    • Phòng chống nguy cơ bị sao chép

Tóm tắt

Nhìn chung, chiến lược chi phí trung bình hàng ngày kết hợp với tín hiệu cảm ứng EMA, thực hiện ý tưởng đầu tư theo đợt dài hạn. So với một lần mở một vị trí lớn, có thể phân tán rủi ro, tránh ăn mừng ở điểm cao. Tham gia của EMA cũng tránh được một phần rủi ro do điều chỉnh ngắn hạn, áp dụng các biện pháp ngăn chặn để kiểm soát tổn thất tối đa. Đồng thời, vẫn cần chú ý đến rủi ro của thiên bạch đen và sự tiếc nuối của số tiền đầu tư cố định không thể nắm bắt đầy đủ cơ hội.

Mã nguồn chiến lược
/*backtest
start: 2024-01-08 00:00:00
end: 2024-01-15 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Daily DCA Strategy with Touching EMAs", overlay=true, pyramiding=10000)

// Customizable Parameters
daily_investment = input(50000, title="Daily Investment")
start_year = input(2022, title="Start Year")
start_month = input(1, title="Start Month")
start_day = input(1, title="Start Day")
end_year = input(2023, title="End Year")
end_month = input(12, title="End Month")
end_day = input(1, title="End Day")
trade_count_limit = input(10000, title="Pyramiding Limit")
enable_sell = input(true, title="Enable Sell")

start_date = timestamp(start_year, start_month, start_day)
var int trade_count = 0

// Calculate the number of shares to buy based on the current closing price
shares_to_buy = daily_investment / close

// Check if a new day has started and after the start date
isNewDay = dayofmonth != dayofmonth[1] and time >= start_date

// Buy conditions based on EMA crossovers
ema5_cross_above = crossover(close, ema(close, 5))
ema10_cross_above = crossover(close, ema(close, 10))
ema20_cross_above = crossover(close, ema(close, 20))
ema50_cross_above = crossover(close, ema(close, 50))
ema100_cross_above = crossover(close, ema(close, 100))
ema200_cross_above = crossover(close, ema(close, 200))

if isNewDay and (ema5_cross_above or ema10_cross_above or ema20_cross_above or ema50_cross_above or ema100_cross_above or ema200_cross_above) and trade_count < trade_count_limit
    strategy.entry("Buy", strategy.long, qty=shares_to_buy)
    trade_count := trade_count + 1

// Dynamic sell conditions (optional)
sell_condition =  true

if enable_sell and sell_condition
    strategy.close_all()

// EMA Ribbon for visualization
plot(ema(close, 5), color=color.red, title="EMA 5")
plot(ema(close, 10), color=color.orange, title="EMA 10")
plot(ema(close, 20), color=color.yellow, title="EMA 20")
plot(ema(close, 50), color=color.green, title="EMA 50")
plot(ema(close, 100), color=color.blue, title="EMA 100")
plot(ema(close, 200), color=color.purple, title="EMA 200")