1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Giao dịch tài chính với R

Connected

Bài tập

Chạy chiến lược của bạn

Chúc mừng bạn đã tạo một chiến lược trong quantstrat! Ôn lại một chút: chiến lược của bạn dùng ba chỉ báo riêng biệt và năm tín hiệu riêng biệt. Chiến lược yêu cầu cả ngưỡng của chỉ báo DVO_2_126 phải dưới 20 và SMA50 phải lớn hơn SMA200. Chiến lược sẽ bán khi DVO_2_126 cắt lên trên 80, hoặc khi SMA50 cắt xuống dưới SMA200.

Để chiến lược hoạt động đúng, bạn đã chỉ định năm tín hiệu:

  1. sigComparison cho trường hợp SMA50 lớn hơn SMA200;
  2. sigThreshold với cross đặt là FALSE cho DVO_2_126 nhỏ hơn 20;
  3. sigFormula để liên kết chúng và đặt cross là TRUE;
  4. sigCrossover với SMA50 nhỏ hơn SMA200; và
  5. sigThreshold với cross đặt là TRUE cho DVO_2_126 lớn hơn 80.

Chiến lược đầu tư $100,000 (giá trị initeq của bạn) vào mỗi giao dịch, và có thể có một chút bình quân giá theo đô la nếu DVO_2_126 dao động quanh mức 20 (mặc dù hiệu ứng này nhìn chung không đáng kể so với phân bổ ban đầu).

Trong chương cuối này, bạn sẽ học cách xem kết quả thực tế của danh mục. Nhưng trước hết, để tạo ra kết quả, bạn cần chạy chiến lược và điền thêm một số đoạn mã khung để đảm bảo quantstrat ghi nhận mọi thứ. Mã trong bài tập này là phần bạn sẽ cần sao chép và dán cho các lần sau.

Hướng dẫn

100 XP
  • Dùng applyStrategy() để áp dụng chiến lược (strategy.st) lên danh mục (portfolio.st). Lưu kết quả vào đối tượng out.
  • Chạy các hàm cần thiết để ghi nhận kết quả của chiến lược, gồm updatePortf() và đặt daterange, cũng như updateAcct() và updateEndEq().
  • Dựa trên thông tin này, thử tìm ngày của giao dịch cuối cùng.