Type/to search
8
Follow
0
Followers
파이썬에서 KAMA 지표 호출 오류에 대한 도움 요청
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
KAMA 지표를 시도해봤는데, JS 단어로 실행할 수 있고, py 단어로 잘못 보답한다.

그리고 제가 직접 KAMA의 구현 코드를 작성했습니다. KAMA의 정의에 따라:
방향(DIR) = 종가 - n일 전 종가
변동성(VIR) = sum(abs(종가 - 전 거래일 종가), n)
효율성(ER) = 방향성 / 변동성
빠름 = 2 / (n1 + 1)
느림 = 2 / (n2 + 1)
부드러움(CS) = 효율성 * (빠름 - 느림) + 느림
계수(CQ) = 평활화 * 평활화
KAMA = 지수 가중 평균 ((진동 이동 평균 ((폐쇄 가격, 인수), 2) (마지막 단계는 어떤 소개가 있는 이 계산에 따라 계산된다: 현재 KAMA = 이전 KAMA + SC x (Price - 이전 KAMA)

그리고 마지막 단계의 <unk>이 이전 KAMA<unk>이 어디서 왔는지도 몰랐습니다. 첫 번째 KAMA값을 계산할 때, 이전 KAMA 값이 존재하지 않았습니까? 제 알고리즘이 잘못되었습니까?
"이런 일이 벌어진다면, 어떻게 해야 할 것인가?"

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)