Я хочу создать диаграмму постоянной объема в Python. Вот пример с постоянным объемом 50 и некоторыми образцами данных: < /p>
import pandas as pd
import numpy as np
date_rng = pd.date_range(start='2024-01-01', end='2024-12-31 23:00:00', freq='h')
# Create a dataframe with the date range
df = pd.DataFrame(date_rng, columns=['timestamp'])
# Add the 'price' column with random floating numbers between 70 and 100
df['price'] = np.round(np.random.uniform(70, 100, size=(len(date_rng))), 2)
# Add the 'volume' column with random integers between 1 and 10
df['volume'] = np.random.randint(1, 11, size=(len(date_rng)))
constantvolume = 50
df['cumsum'] = np.cumsum(df['volume'])
df['mod'] = df['cumsum']/ constantvolume
df['whole'] = np.ceil(df['mod'])
df['next_num'] = df['whole'].shift(-1) - df['whole']
df['mod2'] = df[df['next_num'] > 0]['cumsum'] % constantvolume
df['mod2'] = df['mod2'].fillna(0)
dfa = df.groupby(df['whole']).agg({'price': ['min', 'max', 'last', 'first'], 'timestamp': 'first', 'volume': 'sum'})
dfa.columns = ['low', 'high', 'close', 'open', 'timestamp', 'volume']
dfa['timestamp'] = pd.to_datetime(dfa['timestamp'])
dfa.set_index('timestamp', inplace=True)
dfa
< /code>
Теперь это очень близко к тому, что я хочу сделать. Единственная проблема заключается в том, что объем в каждой строке не является определенным количеством 50, потому что Cumsum не всегда добавляет к 50. , посмотрите, есть ли том = до определенного постоянного тома, если да, хорошо, если нет, то разделите следующую строку с той же меткой времени и той же ценой, но разделите громкость на две части, чтобы мод был нулевым, а затем движется дальше. /p>
Желаемый результат заключается в том, что в окончательном рамке Data The Volume = ConstantVolume во всех рядах, за исключением последней строки, где он может быть другой. < /p>
единственный способ, которым я могу придумать, это цикл, который я не думаю, что это лучший путь и будет очень медленным, поскольку фактический флажок данных как 1 млн строк ...
Подробнее здесь: https://stackoverflow.com/questions/794 ... -in-python
Постоянная объемная диаграмма в Python ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Постоянная ошибка выражения, когда постоянная функция вызывается из другой
Anonymous » » в форуме C++ - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Постоянная ошибка выражения, когда постоянная функция вызывается из другой
Anonymous » » в форуме C++ - 0 Ответы
- 2 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Диаграмма Альтаира пуста в раскрывающемся списке, когда отображается другая диаграмма
Anonymous » » в форуме Python - 0 Ответы
- 112 Просмотры
-
Последнее сообщение Anonymous
-