ta.STOCH计算kdj是国外的。国内kdj用
def my_kdj(df):
df['rolling_high'] = df['high'].rolling(window = 9, min_periods = 1).max()
df['rolling_low'] = df['low'].rolling(window = 9, min_periods = 1).min()
df['fastk'] = (df['close'] - df['rolling_low']) / (df['rolling_high'] - df['rolling_low']) * 100
df['fastd'] = df['fastk'].ewm(com = 2, adjust = False).mean()
df['K'] = df['fastd']
df['D'] = df['K'].ewm(com = 2, adjust = False).mean()
df['J'] = 3 * df['K'] - 2 * df['D']
return df