Я пытался построить график ST C, используя уравнение fintas .
period_fast = 23
period_slow = 50
period = 10
EMA_fast = pd.Series(
ohlc["close"].ewm(ignore_na=False, span=period_fast, adjust=adjust).mean(),
name="EMA_fast",
)
EMA_slow = pd.Series(
ohlc["close"].ewm(ignore_na=False, span=period_slow, adjust=adjust).mean(),
name="EMA_slow",
)
MACD = pd.Series((EMA_fast - EMA_slow), name="MACD")
STOK = (
(MACD - MACD.rolling(window=period).min())
/ (MACD.rolling(window=period).max() - MACD.rolling(window=period).min())
) * 100
STOD = STOK.rolling(window=period).mean()
return pd.Series(
100 * (MACD - (STOK * MACD)) / ((STOD * MACD) - (STOK * MACD)),
name="{0} period STC.".format(period),
)
Я получаю данные из: https://api.binance.com/api/v3/klines?symbol=BTCUSDC&interval=1h
Глядя на ERDBT C, вы можете видеть, что значения должны быть от 0 до 100 ERDBT C с ST C на графике
Однако я получаю значения ниже 0 и очень намного больше 100. Когда я строю график, я получаю следующее: Графический график ST C
Мне интересно, есть ли что-то, чего мне не хватает, чтобы иметь возможность построить график ST C? Возможно, значения нормальные, и сценарий построения графиков каким-то образом превращает их в график от 0 до 100? Я правильно ввел данные, так как могу правильно построить свечи: Подсвечник
Кажется, у меня просто проблема с ST C