Tài nguyên đang được tải lên... tải...

MA99 Chiến lược dừng lỗ động và động

Tác giả:ChaoZhang, Ngày: 2024-04-29 16:59:41
Tags:SMAMA99

img

Tổng quan

Chiến lược này dựa trên đường trung bình di chuyển đơn giản (MA99) 99 giai đoạn để xác định tín hiệu giao dịch. Khi giá chạm MA99, một vị trí có thể được mở mà không cần xác nhận từ hai nến. Đặt dừng lỗ sử dụng cách tiếp cận năng động, có nghĩa là khi giá vượt qua MA99 và được xác nhận trong nến tiếp theo, vị trí được đóng để dừng lỗ. Chiến lược này nhằm mục đích nắm bắt biến động giá xung quanh MA99 trong khi kiểm soát rủi ro thông qua dừng lỗ năng động.

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

  1. Tính toán MA99 trung bình di chuyển đơn giản 99 thời gian.
  2. Xác định xem giá hiện tại có chạm vào MA99 hay không, tức là giá thấp nhất nhỏ hơn hoặc bằng với MA99 và giá cao nhất lớn hơn hoặc bằng với MA99.
  3. Nếu giá chạm vào MA99 và giá đóng là trên MA99, mua dài; nếu giá chạm vào MA99 và giá đóng là dưới MA99, mua ngắn.
  4. Đối với các vị trí dài, nếu giá đóng giảm xuống dưới MA99 và được xác nhận lại trong nến tiếp theo, đóng vị trí; đối với các vị trí ngắn, nếu giá đóng vượt quá MA99 và được xác nhận lại trong nến tiếp theo, đóng vị trí.
  5. Mỗi khi một vị trí được mở, đặt giá MA99 hiện tại là giá dừng lỗ; đặt lại giá dừng lỗ sau mỗi vị trí được đóng.

Ưu điểm chiến lược

  1. Đơn giản và dễ sử dụng: Chiến lược này dựa trên một chỉ số duy nhất, MA99, với các quy tắc rõ ràng và đơn giản dễ hiểu và thực hiện.
  2. Stop-loss động: So với stop-loss cố định, stop-loss động có thể thích nghi tốt hơn với những thay đổi của thị trường và kiểm soát rủi ro kịp thời.
  3. Theo dõi xu hướng: MA99 đại diện cho xu hướng trung hạn đến dài hạn.
  4. Giảm tiếng ồn: So với việc sử dụng các đường trung bình động ngắn hơn, đường trung bình động 99 thời gian có thể lọc hiệu quả tiếng ồn biến động ngắn hạn.

Rủi ro chiến lược

  1. Tối ưu hóa tham số: Chiến lược này chỉ sử dụng tham số 99, có thể không phải là tham số tối ưu.
  2. Thị trường hỗn loạn: Trong thị trường hỗn loạn, giá có thể thường xuyên dao động xung quanh MA99, có khả năng dẫn đến giao dịch và lỗ thường xuyên.
  3. Sự đảo ngược xu hướng: Khi xu hướng đảo ngược và giá vượt qua MA99, chiến lược này có thể tiếp tục giữ các vị trí theo hướng sai, dẫn đến tổn thất.
  4. Chi phí trượt: Giao dịch thường xuyên có thể gây ra chi phí trượt và giao dịch cao hơn, ảnh hưởng đến lợi nhuận chiến lược.

Hướng dẫn tối ưu hóa chiến lược

  1. Giới thiệu bộ lọc xu hướng: Khi xác định tín hiệu đầu vào, các chỉ số xu hướng khác như MACD, ADX, v.v., có thể được kết hợp để xác nhận sức mạnh và hướng xu hướng, cải thiện chất lượng đầu vào.
  2. Tối ưu hóa các tham số: Tối ưu hóa các tham số như thời gian MA và điều kiện dừng lỗ để tìm ra sự kết hợp các tham số tốt nhất và cải thiện độ bền chiến lược.
  3. Tích hợp kích thước vị trí: Điều chỉnh kích thước vị trí một cách năng động dựa trên các yếu tố như sức mạnh xu hướng thị trường và biến động để kiểm soát rủi ro rút vốn.
  4. Xem xét chi phí giao dịch: Khi backtesting và giao dịch trực tiếp, hãy xem xét các yếu tố chi phí như trượt giao dịch và hoa hồng để đánh giá hiệu suất thực tế của chiến lược.

Tóm lại

Chiến lược MA99 Touch and Dynamic Stop-Loss mở các vị trí dựa trên mối quan hệ giữa giá và MA99 và sử dụng stop-loss động để kiểm soát rủi ro. Chiến lược này đơn giản và dễ sử dụng, có khả năng theo xu hướng trung và dài hạn, nhưng có thể phải đối mặt với vấn đề giao dịch thường xuyên trong các thị trường hỗn loạn. Bằng cách giới thiệu các chỉ số khác để lọc, tối ưu hóa các tham số, quản lý vị trí và xem xét chi phí, hiệu suất và độ bền của chiến lược này có thể được cải thiện hơn nữa.


/*backtest
start: 2023-04-23 00:00:00
end: 2024-04-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/


//@version=5
strategy("MA99 Temas ve Dinamik Stop-Loss Stratejisi", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// MA99 hesaplayalım
ma99 = ta.sma(close, 99)
plot(ma99, color=color.blue, title="MA99")

// Fiyatın MA99'a temas edip etmediğini kontrol edelim
priceTouchedMA99 = (low <= ma99 and high >= ma99)

// Long ve short koşullarını tanımlayalım
longCondition = priceTouchedMA99 and close > ma99
shortCondition = priceTouchedMA99 and close < ma99

var float longStopLoss = na
var float shortStopLoss = na

var int longStopTriggered = 0
var int shortStopTriggered = 0

// Alım veya satım sinyallerine göre işlemleri başlatalım ve stop-loss ayarlayalım
if (longCondition)
    strategy.entry("Long Entry", strategy.long)
    longStopLoss := ma99
    longStopTriggered := 0

if (shortCondition)
    strategy.entry("Short Entry", strategy.short)
    shortStopLoss := ma99
    shortStopTriggered := 0

// Stop-loss koşullarını ve iki mum kuralını kontrol edelim
if (not na(longStopLoss))
    if (close < longStopLoss)
        longStopTriggered := 1
    else
        longStopTriggered := 0

    if (longStopTriggered[1] == 1 and close < longStopLoss)  // Bir önceki mumda tetiklendi ve hala altında
        strategy.close("Long Entry", comment="Stop Loss Long")
        longStopLoss := na
        longStopTriggered := 0

if (not na(shortStopLoss))
    if (close > shortStopLoss)
        shortStopTriggered := 1
    else
        shortStopTriggered := 0

    if (shortStopTriggered[1] == 1 and close > shortStopLoss)  // Bir önceki mumda tetiklendi ve hala üstünde
        strategy.close("Short Entry", comment="Stop Loss Short")
        shortStopLoss := na
        shortStopTriggered := 0

Có liên quan

Thêm nữa