Vấn đề gọi chỉ số KAMA trong Python

Tác giả:xaifer48, Tạo: 2021-11-19 23:17:10, Cập nhật: 2021-11-20 09:10:32

import talib def main (: LastBarTime = 0 while ((true): records = exchange.GetRecords BarTime = records[-1][Time] ext.PlotRecords ((records, " ") if LastBarTime!= BarTime: kama = talib.KAMA ((records, 30) Log ((kama[30]) Log ((kama[kama.length-1]) LastBarTime = BarTime Một lần thử chỉ số KAMA, với từ JS có thể chạy lên, với từ py báo lỗi numpyline 9, in main TypeError: Argument numpyreal has incorrect type (expected numpy.ndarray, got OOO00)

Ngoài ra, tôi đã viết mã thực hiện của chỉ số KAMA theo định nghĩa của chỉ số: Định hướng ((DIR) = Giá đóng cửa - Giá đóng cửa trước ngày n Tỷ lệ biến động ((VIR) = sum ((abs ((giá đóng cửa - giá đóng cửa ngày giao dịch trước), n) Hiệu suất (ER) = hướng / tỷ lệ biến động Vì vậy, chúng ta có thể làm điều này. Tốc độ chậm = 2 / (n2 + 1) Chất lỏng (CS) = hiệu quả * (nhanh - chậm) + chậm Các hệ số (CQ) = trơn tru * trơn tru KAMA = chỉ số trọng số trung bình (Động động trung bình) (Giá đóng cửa, hệ số), 2) (Bước cuối cùng có giới thiệu được tính theo cách này: hiện tại KAMA = KAMA trước + SC x (Giá - KAMA trước)

Bạn đã tìm kiếm rất lâu và không thấy vị trí của vị trí KAMA đầu tiên trong bước cuối cùng, và khi tính giá trị KAMA đầu tiên, không có giá trị KAMA trước đó, phải không? Các bạn hãy chỉ cho tôi cách làm nhé.


Thêm nữa

Giấc mơ nhỏ``talib.KAMA ((records.Close,30) `` Ví dụ về các cuộc gọi Python có trong tài liệu API FMZ. /upload/asset/16abd34635f22397a31c.png

xaifer48Cảm ơn.

Giấc mơ nhỏBạn có thể tạo ra các tham số mà các hàm yêu cầu.

xaifer48Nếu tôi tự xác định một mảng là một mảng, tôi có thể tính KAMA không? Tại sao lại viết như records.Close, không cần phải có dấu dưới? ví dụ như records[i].Close.