Type/to search
8
Follow
0
Followers
Xin trợ giúp về lỗi gọi chỉ báo KAMA trong python
Help
Created 2021-11-19 23:17:10  Updated 2021-11-20 09:10:32
 4
 1088

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
TypeError: Argument 'real' has incorrect type (expected numpy.ndarray, got OOO00)

Ngoài ra, tôi đã viết một đoạn mã để thực hiện chỉ số KAMA theo định nghĩa của chỉ số:
Hướng (DIR) = Giá đóng cửa - Giá đóng cửa n ngày trước
Độ biến động (VIR) = tổng(abs(giá đóng cửa - giá đóng cửa của ngày giao dịch trước đó), n)
Hiệu quả (ER) = Hướng / Độ biến động
Nhanh = 2 / (n1 + 1)
Chậm = 2 / (n2 + 1)
Độ mượt (CS) = Hiệu suất * (Nhanh - Chậm) + Chậm
Hệ số (CQ) = Làm mịn * Làm mịn
KAMA = chỉ số trung bình cân nặng ((Dynamic Moving Average ((giá đóng cửa, hệ số), 2) (bước cuối cùng này được tính theo cách này: KAMA hiện tại = KAMA trước + SC x (Price - KAMA trước))

Tôi đã tìm kiếm rất lâu và không thấy cái KAMA trước đó ở đâu trong bước cuối cùng, khi tôi tính giá trị KAMA đầu tiên, giá trị KAMA trước đó không tồn tại, đúng không?
Xin các vị chỉ dẫn cho chúng tôi xem chúng tôi phải làm gì.

Related Recommendations
Comment
All comments (4)

    talib.KAMA(records.Close,30)
    FMZ API文档上有Python调用的例子。
    img

    5 years ago

    可以了,谢谢梦总。还想请教一下,这个传入的参数也是一个数组么?如果我自己定义一个数组作为参数,也可以计算KAMA么?
    为啥是写成records.Close,不用带下标么?比如records[i].Close。求指点,谢谢!

    5 years ago

    把数据构造成函数要求的参数即可。报错信息上提示的:expected numpy.ndarray,

    5 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)