Bỏ qua

Chiến lược thanh khoảng giá trong cTrader

Biểu đồ khoảng giá được xây dựng để thể hiện một khoảng biến động giá cụ thể bất kể mất bao lâu để giá thực hiện biến động đó. Điều này lọc bỏ các biến động giá nhỏ hơn kích thước khoảng, giúp dễ dàng hình dung xu hướng hơn. Trong cTrader, quy trình phát triển các chiến lược giao dịch tự động đưa ra quyết định dựa trên thanh khoảng giá cũng giống như quy trình tạo các chiến lược như vậy dựa trên nến theo thời gian tiêu chuẩn. Trong bài viết này và video tương ứng, chúng tôi sẽ trình bày cách bạn có thể phát triển và backtest một chiến lược đơn giản dựa trên thanh khoảng giá.

Xác định tín hiệu mua và bán

Chúng ta sẽ tóm tắt ngắn gọn logic giao dịch của mình.

  • Tín hiệu mua - xảy ra khi một thanh khoảng giá tăng theo sau một thanh khoảng giá giảm và đóng cửa trên giá mở cửa của thanh giảm.
  • Tín hiệu bán - xảy ra khi một thanh khoảng giá giảm theo sau một thanh khoảng giá tăng và đóng cửa dưới giá mở cửa của thanh tăng.

Cách diễn giải tín hiệu mua là khi một xu hướng giảm gặp phải kháng cự mạnh, đó là lúc nên mua với kỳ vọng sẽ có sự phục hồi. Thiết lập ngược lại áp dụng cho tín hiệu bán: một xu hướng tăng gặp phải kháng cự, và chúng ta phải tận dụng điều này bằng cách đặt lệnh bán.

Tạo một cBot ví dụ

Chúng ta có thể bắt đầu tạo cBot của mình. Trước tiên, chúng ta sẽ xác định các tham số cần thiết.

1
2
3
4
5
6
7
8
[Parameter(DefaultValue = 10000)]
public double Volume { get; set; }

[Parameter(DefaultValue = 20)]
public double StopLoss { get; set; }

[Parameter(DefaultValue = 20)]
public double TakeProfit { get; set; }

Chúng ta có thể lập trình tín hiệu mua của mình như sau.

1
2
3
4
if (Bars.Last(0).Close > Bars.Last(0).Open && Bars.Last(1).Close < Bars.Last(1).Open && Bars.Last(0).Close > Bars.Last(1).Open)
{
    ExecuteMarketOrder(TradeType.Buy, SymbolName, Volume,InstanceId, StopLoss, TakeProfit);
}

Tín hiệu bán của chúng ta trông như sau.

1
2
3
4
if (Bars.Last(0).Close < Bars.Last(0).Open && Bars.Last(1).Close > Bars.Last(1).Open && Bars.Last(0).Close < Bars.Last(1).Open)
{
    ExecuteMarketOrder(TradeType.Sell, SymbolName, Volume,InstanceId, StopLoss, TakeProfit);
}

Backtest chiến lược

Sau khi xây dựng cBot mới, chúng ta chuyển sang tab Backtesting và chạy backtest. Đây là kết quả.

Ghi chú

Các chiến lược thanh khoảng giá sử dụng cùng cấu trúc dữ liệu như các chiến lược dựa trên nến. Ví dụ, chúng ta đã sử dụng bộ sưu tập Bars để truy xuất các thanh khoảng giá; chúng ta cũng sẽ sử dụng cùng bộ sưu tập khi cố gắng truy xuất nến. Tính năng này của cTrader cho phép bạn phát triển các chiến lược có thể được kiểm tra và chạy trên bất kỳ loại biểu đồ nào mà không cần bất kỳ sửa đổi nào.

Trong hướng dẫn này, chúng tôi đã trình bày cách bạn có thể nhanh chóng phát triển một chiến lược đơn giản dựa trên biểu đồ khoảng giá. Chúng tôi cũng đề xuất rằng các chiến lược như vậy có thể được tái sử dụng tự do trên các biểu đồ chứa nến dựa trên thời gian.