2013-02-09 28 views
6

Tôi hiện đang sử dụng quantmod Lớp phủ ZigZag và tôi nhận thấy nó được tính toán hơi khác một chút so với lớp phủ gốc. Tôi đã chứng minh sự khác biệt trong số picture của RDWR sử dụng ZigZag (5%) với quantmod và một chương trình khác. như bạn có thể thấy quantmod thiếu tất cả các điểm cao và điểm cao đáng kể. bạn cũng có thể thấy sự khác biệt khá rõ ràng khi sử dụng StockCharts.lớp phủ Quantmod ZigZag thay thế

Tôi nghĩ rằng đó là vì cách thức quantmod làm mịn xu hướng. thuật toán nên sử dụng cả hai giá trị thấp & thấp và không chỉ là giá trung bình hoặc một số hồi quy khác. tôi đã tự hỏi nếu quantmod hoặc có thể TTR cung cấp lớp phủ ZigZag thay thế sẽ tạo ra kết quả mong muốn (minh họa ở phần trên của hình ảnh).

Cảm ơn.

mã để hiển thị quantmod đầu ra trong hình là

s<-get(getSymbols('rdwr'))["2012-07::"] 
chart_Series(s) 
add_TA(ZigZag(s,5),on=1) 
+2

FWIW, nó hoạt động với 'chartSeries' như thế này:' chartSeries (s); addZigZag (5) ', hoặc trong một bước' chartSeries (s, TA = "addZigZag (5)") '. Tôi nghĩ rằng vẫn còn một số công việc phải được thực hiện trên khung 'chart_Series' ... – GSee

+1

Đúng vậy! z <-na.omit (ZigZag (s, 5)); z <-rbind (z [findPeaks (z)], z [findValleys (z)]); z; GIẢI THÍCH! (không nhận ra chúng có triển khai khác nhau cho các lớp phủ trong hàm biểu đồ mới). BTW, làm thế nào tôi có thể vẽ lớp phủ cũ với chart_Series (@agstudy chỉ giải quyết cho tôi một vấn đề khác bằng cách di chuyển đến các chức năng thử nghiệm) – haki

Trả lời

5

Vấn đề là ?ZigZag nói đầu vào phải là một cao/loạt giá thấp và bạn cung cấp một loạt OHLCVA. Nó hoạt động chính xác nếu bạn cung cấp một chuỗi cao/thấp.

s <- getSymbols('rdwr', auto.assign=FALSE) 
chart_Series(s, subset="2012-07::") 
add_TA(ZigZag(s[,2:3],5),on=1) 

enter image description here

+0

1, nhưng 'ZigZag' là một chút mơ hồ. Nó nói 'HL' nên là một" đối tượng có thể cưỡng chế với xts hoặc ma trận và * chứa * hoặc là một chuỗi giá cao-thấp, hoặc một loạt giá đóng. " [nhấn mạnh thêm]. Cho rằng quantmod thường tập hợp các đầu vào với những thứ như 'HLC',' Cl', vv, có vẻ như hợp lý để mong đợi ZigZag làm việc với một đối tượng OHLCVA. – GSee

+0

@GSee: * thở dài * Tôi có thể thấy điều đó có thể gây nhầm lẫn như thế nào. –