Kết hợp tín hiệu - II
Ở bài trước, bạn đã xấp xỉ một tín hiệu sigFormula bằng cách so sánh giá trị của hai tín hiệu khác. Ở bài cuối này, bạn sẽ tiến thêm một bước bằng cách dùng trực tiếp hàm sigFormula() để tạo ra một tín hiệu sigFormula.
Mục tiêu bài này rất đơn giản. Bạn muốn vào vị thế khi cả longfilter và longthreshold cùng trở thành true tại cùng một thời điểm. Ý tưởng là: bạn không muốn liên tục mở vị thế miễn là điều kiện vẫn đúng, nhưng bạn muốn nắm giữ vị thế khi có nhịp điều chỉnh trong một xu hướng tăng.
Viết một hàm sigFormula đơn giản như việc viết đối số của một "câu lệnh if" trong base R bên trong hàm formula(). Trong trường hợp này, bạn muốn tạo một tín hiệu tên longentry, đúng khi cả longfilter và longthreshold cùng chuyển sang true tại cùng thời điểm.
Hoàn thành bài này, bạn sẽ có bức tranh đầy đủ về cách các tín hiệu hoạt động trong quantstrat!
Bài tập này là một phần của khóa học
Giao dịch tài chính với R
Hướng dẫn bài tập
- Dùng
add.signal()để tạo tín hiệusigFormulađúng khi cảlongfiltervàlongthresholdđều đúng. - Đặt
crossbằngTRUE. - Gán nhãn tín hiệu mới là
longentry.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Add a sigFormula signal to your code specifying that both longfilter and longthreshold must be TRUE, label it longentry
add.signal(strategy.st, name = "___",
# Specify that longfilter and longthreshold must be TRUE
arguments = list(formula = "___ & ___",
# Specify that cross must be TRUE
cross = ___),
# Label it longentry
label = "___")