Đường trung bình động khó hiểu

Duong Trung Binh Dong Kho Hieu



Trước khi bắt đầu chủ đề của chúng tôi, hãy để chúng tôi hiểu đường trung bình động là gì. Trong thống kê, đường trung bình là một kỹ thuật để tính toán và phân tích các điểm dữ liệu. Nó tính toán các điểm dữ liệu bằng cách tạo ra một chuỗi giá trị trung bình của các tập con khác nhau từ một tập dữ liệu đầy đủ. Vì vậy, đường trung bình động là một phép đo để nắm bắt sự thay đổi điển hình của một chuỗi thông tin theo thời gian. Di chuyển là một trong những chỉ báo phân tích kỹ thuật linh hoạt và được sử dụng thường xuyên. Vì nó rất đơn giản để sử dụng, các nhà đầu tư chuyên nghiệp sử dụng nó như một phương tiện của một bộ dữ liệu nhất định trong thống kê. Chúng tôi cũng có thể tính toán đường trung bình động trong một khoảng thời gian ngắn hơn bằng cách sử dụng nó trên dữ liệu hàng ngày hoặc theo phút. ngày và chia kết quả cho mười. Vào ngày tiếp theo, chúng tôi cũng sẽ tính giá trong mười ngày qua, nghĩa là chúng tôi sẽ không tính giá của ngày đầu tiên. Nó sẽ được thay thế bằng giá của chúng tôi ngày hôm qua. Dữ liệu thay đổi theo cách này với mỗi ngày chuyển động, nó được gọi là đường trung bình động vì lý do này. Mục đích của đường trung bình là xác định thời điểm bắt đầu của một xu hướng, sau đó theo dõi tiến trình của nó và cũng báo cáo sự đảo chiều của nó trong trường hợp nó xảy ra. Công thức tính đường trung bình là Ft = (Dt1 + Dt2 + Dt3… + Dtn) / n. Trong đó Dt là Cầu trong khoảng thời gian t và Ft là Dự báo trong thời gian t.

Cú pháp:

Chúng ta có thể tính toán đường trung bình động theo nhiều cách khác nhau như sau:

Phương pháp 1:

NumPy. cumsum ( )

Nó trả về tổng các phần tử trong mảng đã cho. Chúng ta có thể tính toán đường trung bình động bằng cách chia đầu ra của cumsum () cho kích thước của mảng.







Phương pháp 2:

NumPy. . trung bình ( )

Nó có các thông số sau.



a: dữ liệu ở dạng mảng được tính trung bình.



axis: kiểu dữ liệu của nó là int và nó là một tham số tùy chọn.





weight: nó cũng là một mảng và tham số tùy chọn. Nó có thể có hình dạng giống như hình dạng 1-D. Trong trường hợp là một chiều, nó phải có độ dài bằng chiều dài của mảng “a”.

Lưu ý rằng dường như không có hàm tiêu chuẩn nào trong NumPy để tính toán đường trung bình động vì vậy nó có thể được thực hiện bằng một số phương pháp khác.



Phương pháp 3:

Một phương pháp khác có thể được sử dụng để tính toán đường trung bình là:

ví dụ. cây dây leo ( một , Trong , cách thức = 'đầy' )

Trong cú pháp này, a là chiều đầu vào đầu tiên và v là giá trị chiều đầu vào thứ hai. Chế độ là giá trị tùy chọn, nó có thể đầy đủ, giống nhau và hợp lệ.

Ví dụ # 01:

Bây giờ, để giải thích thêm về đường trung bình động trong Numpy, chúng ta hãy đưa ra một ví dụ. Trong ví dụ này, chúng ta sẽ lấy giá trị trung bình động của một mảng bằng hàm biến đổi của NumPy. Vì vậy, chúng ta sẽ lấy một mảng “a” với 1,2,3,4,5 là các phần tử của nó. Bây giờ, chúng ta sẽ gọi hàm np.convolve và lưu trữ đầu ra của nó trong biến “b” của chúng ta. Sau đó, chúng ta sẽ in ra giá trị của biến “b”. Hàm này sẽ tính tổng di chuyển của mảng đầu vào của chúng ta. Chúng tôi sẽ in đầu ra để xem liệu đầu ra của chúng tôi có chính xác hay không.

Sau đó, chúng tôi sẽ chuyển đổi đầu ra của mình thành đường trung bình bằng cách sử dụng cùng một phương pháp biến đổi. Để tính toán đường trung bình, chúng ta sẽ chỉ cần chia tổng di chuyển cho số lượng mẫu. Nhưng vấn đề chính ở đây là vì đây là đường trung bình động nên số lượng mẫu liên tục thay đổi tùy thuộc vào vị trí mà chúng tôi đang ở. Vì vậy, để giải quyết vấn đề đó, chúng ta sẽ chỉ cần tạo một danh sách các mẫu số và chúng ta cần chuyển giá trị này thành giá trị trung bình.

Với mục đích đó, chúng tôi đã khởi tạo một biến khác 'denom' cho mẫu số. Nó đơn giản để hiểu danh sách bằng cách sử dụng thủ thuật phạm vi. Mảng của chúng tôi có năm phần tử khác nhau nên số lượng mẫu ở mỗi nơi sẽ tăng từ một đến năm và sau đó giảm xuống từ năm thành một. Vì vậy, chúng tôi chỉ cần thêm hai danh sách với nhau và chúng tôi sẽ lưu trữ chúng trong tham số 'denom' của chúng tôi. Bây giờ, chúng ta sẽ in biến này để kiểm tra xem hệ thống đã cung cấp cho chúng ta các mẫu số thực hay chưa. Sau đó, chúng tôi sẽ chia tổng di chuyển của chúng tôi với các mẫu số và in nó bằng cách lưu trữ đầu ra trong biến “c”. Hãy để chúng tôi thực thi mã của chúng tôi để kiểm tra kết quả.

nhập khẩu numpy như ví dụ.

một = [ 1 , hai , 3 , 4 , 5 ]

b = ví dụ. cây dây leo ( một , ví dụ. ones_like ( một ) )

in ( 'Tổng di chuyển' , b )

Tên = danh sách ( phạm vi ( 1 , 5 ) ) + danh sách ( phạm vi ( 5 , 0 , - 1 ) )

in ( 'Mẫu số' , Tên )

c = ví dụ. cây dây leo ( một , ví dụ. ones_like ( một ) ) / Tên

in ( 'Đường trung bình động' , c )

Sau khi thực thi thành công mã của chúng tôi, chúng tôi sẽ nhận được kết quả sau. Trong dòng đầu tiên, chúng tôi đã in 'Tổng di chuyển'. Chúng ta có thể thấy rằng chúng ta có '1' ở đầu và '5' ở cuối mảng, giống như chúng ta đã có trong mảng ban đầu. Phần còn lại của các số là tổng của các phần tử khác nhau trong mảng của chúng ta.

Ví dụ: sáu trên chỉ mục thứ ba của mảng đến từ việc thêm 1,2 và 3 từ mảng đầu vào của chúng tôi. Mười trên chỉ số thứ tư đến từ 1,2,3 và 4. Mười lăm đến từ tổng tất cả các số lại với nhau, v.v. Bây giờ, trong dòng thứ hai của đầu ra, chúng ta đã in ra các mẫu số của mảng của chúng ta.

Từ kết quả đầu ra của chúng tôi, chúng tôi có thể thấy rằng tất cả các mẫu số đều chính xác, có nghĩa là chúng tôi có thể chia chúng với mảng tổng di chuyển của chúng tôi. Bây giờ, hãy chuyển đến dòng cuối cùng của đầu ra. Ở dòng cuối cùng, chúng ta có thể thấy rằng phần tử đầu tiên của Mảng Đường trung bình động của chúng tôi là 1. Trung bình của 1 là 1 vì vậy phần tử đầu tiên của chúng tôi là chính xác. Mức trung bình của 1 + 2/2 sẽ là 1,5. Chúng ta có thể thấy rằng phần tử thứ hai của mảng đầu ra của chúng ta là 1,5 nên giá trị trung bình thứ hai cũng đúng. Trung bình của 1,2,3 sẽ là 6/3 = 2. Nó cũng làm cho đầu ra của chúng tôi chính xác. Vì vậy, từ kết quả đầu ra, chúng ta có thể nói rằng chúng ta đã tính thành công đường trung bình động của một mảng.

Sự kết luận

Trong hướng dẫn này, chúng ta đã tìm hiểu về đường trung bình động: đường trung bình động là gì, công dụng của nó và cách tính đường trung bình động. Chúng tôi đã nghiên cứu nó một cách chi tiết từ cả quan điểm toán học và lập trình. Trong NumPy, không có chức năng hoặc quy trình cụ thể nào để tính toán đường trung bình. Nhưng có những hàm khác với sự trợ giúp của chúng ta có thể tính toán đường trung bình. Chúng tôi đã làm một ví dụ để tính toán đường trung bình động và mô tả từng bước trong ví dụ của chúng tôi. Đường trung bình động là một cách tiếp cận hữu ích để dự báo kết quả trong tương lai với sự trợ giúp của dữ liệu hiện có.