Soalan kesalahan panggilan penunjuk KAMA dalam Python

Penulis:xaifer48, Dicipta: 2021-11-19 23:17:10, Dikemas kini: 2021-11-20 09:10:32

import talib def main (: LastBarTime = 0 while ((true): records = exchange.GetRecords (dalam bahasa Inggeris) BarTime = rekod[-1][Time] ext.PlotRecords ((records, " ") if LastBarTime!= BarTime: kama = talib.KAMA ((records, 30) Log ((kama[30]) Log ((kama[kama.length-1]) LastBarTime = BarTime Saya cuba penunjuk KAMA, dengan perkataan JS dapat berjalan, dengan perkataan py, saya mendapat kesalahan pada baris 9, in main TypeError: Argument real has incorrect type (expected numpy.ndarray, got OOO00) .

Selain itu, saya sendiri menulis kod pelaksanaan untuk penunjuk KAMA mengikut definisi: Arah ((DIR) = harga penutupan - harga penutupan sebelum hari n Kadar turun naik ((VIR) = sum ((abs ((harga penutupan - harga penutupan pada hari dagangan sebelumnya), n) Kecekapan (ER) = arah / kadar turun naik Jadi kita boleh katakan bahawa kelajuan adalah 2 / (n1 + 1). Kelajuan perlahan adalah 2 / (n2 + 1) Kelayakan (CS) = kecekapan * (cepat - perlahan) + perlahan Kerat (CQ) = licin * licin KAMA = purata indeks bertimbal (Permata Pindah Dinamik) (harga penutupan, pekali), 2) (langkah terakhir yang terdapat dalam perkenalan ini dikira dengan cara ini: KAMA semasa = KAMA sebelumnya + SC x (Harga - KAMA sebelumnya)

Saya telah mencari untuk masa yang lama dan tidak melihat di mana yang pertama KAMA yang datang dari langkah terakhir, apabila anda mengira nilai KAMA pertama, tidak ada yang pertama KAMA nilai? Sila tunjukkan apa yang perlu dilakukan.


Lebih lanjut

Mimpi kecil``talib.KAMA ((records.Close,30) `` Contoh panggilan Python terdapat dalam dokumentasi FMZ API. /upload/asset/16abd34635f22397a31c.png

xaifer48Terima kasih.

Mimpi kecilAnda boleh membuat parameter yang diperlukan oleh fungsi untuk membina data.

xaifer48Boleh, terima kasih semua. Saya juga ingin bertanya, adakah parameter yang dihantar ini juga merupakan suatu array? Jika saya sendiri menentukan sebuah array sebagai parameter, adakah saya boleh mengira KAMA? Mengapa ia ditulis sebagai records.Close, tanpa tanda bawah? Contohnya records[i].Close.