iT邦幫忙

0

ta-lib的算出來的KD值跟看盤軟體不同

  • 分享至 

  • xImage

程式碼如下
https://ithelp.ithome.com.tw/upload/images/20210801/20018576liizUlBx3a.jpg
以日月光為例,也確認資料都正確,close價格都對
https://ithelp.ithome.com.tw/upload/images/20210801/20018576zoMPA6dqy2.jpg
可是算出來的KD值卻跟看盤軟體或者玩股網之類的網站不同

https://ithelp.ithome.com.tw/upload/images/20210801/20018576j66OlDsSEm.jpg
也沒有把周末計算在內,不懂問題出在那哩,還請先進指點一下
謝謝

後來gooole倒是國外跟我們的計算方式不同,所以才有差別
https://zhuanlan.zhihu.com/p/40204328
https://ithelp.ithome.com.tw/articles/10224666
後來帶公式算 還是有差一點點
另外一個大陸網站的https://inf.news/zh-tw/economy/4ec2a66c7d32bcdf2023fdf9db50453f.html
寫法有點不一樣 但帶出來的K值跟上面是一樣的 但還是跟下單軟體有差一點
後來拼拼貼貼如下這樣就貼出來了 所以問題解決了 只能手動算KD如下了
df['MinLow'] = df['Low'].rolling(9, min_periods=9).min()
# 填充NaN資料
#df['MinLow'].fillna(value = df['Low'].expanding().min(), inplace = True)
df['MaxHigh'] = df['High'].rolling(9, min_periods=9).max()
#df['MaxHigh'].fillna(value = df['High'].expanding().max(), inplace = True)
df['RSV'] = (df['Close'] - df['MinLow']) / (df['MaxHigh'] - df['MinLow']) * 100
df["K"] = df['RSV'].ewm(com=2, adjust=False).mean()
df["D"] = df["K"].ewm(com=2, adjust=False).mean()
df["J"] = 3 * df["K"] - 2 * df["D"]
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
軒尼斯
iT邦新手 4 級 ‧ 2021-08-01 19:03:12

SlowK值的算法有兩種:
1‧SMA簡單移動平均
SMA
https://en.wikipedia.org/wiki/Stochastic_oscillator

2.EMA指數移動平均:
EMA
α
https://zh.wikipedia.org/wiki/%E9%9A%8F%E6%9C%BA%E6%8C%87%E6%A0%87

https://www.jianshu.com/p/7e29ee578306
https://zhuanlan.zhihu.com/p/40098124

應該先確認你想要的是那一種? XQ用的是EMA

我想要用的是台灣的算法就是了
我上面已經有流言找到答案了 就自己拼拼貼貼貼出來的

我要發表回答

立即登入回答