59 lines
3.4 KiB
Markdown
59 lines
3.4 KiB
Markdown
# Анализ данных Bitcoin
|
||
|
||
## Описание проекта
|
||
Программа анализирует исторические данные Bitcoin (цены и объемы торгов) и визуализирует ключевые метрики с помощью библиотек Python.
|
||
|
||
## Технологии
|
||
- **Python 3.x**
|
||
- **pandas** - загрузка и обработка данных
|
||
- **numpy** - математические операции
|
||
- **matplotlib** - построение графиков
|
||
- **seaborn** - визуализация
|
||
- **tqdm** - отображение прогресса загрузки
|
||
|
||
## Процесс работы программы
|
||
|
||
### 1. Загрузка данных
|
||
- Программа считывает CSV файл `btcusd_1-min_data.csv` [кликабельно](https://www.kaggle.com/datasets/mczielinski/bitcoin-historical-data/data)
|
||
- Файл содержит минутные данные Bitcoin со следующими столбцами:
|
||
- `Timestamp` - время в Unix формате (окна по 60 секунд)
|
||
- `Open` - цена открытия
|
||
- `High` - максимальная цена
|
||
- `Low` - минимальная цена
|
||
- `Close` - цена закрытия
|
||
- `Volume` - объем торгов в BTC
|
||
|
||
### 2. Визуализация загрузки
|
||
- Используется библиотека `tqdm` для отображения прогресс-бара
|
||
- Пользователь видит процесс загрузки данных в реальном времени
|
||
|
||
### 3. Базовый анализ данных
|
||
- Выводится информация о структуре данных (`df.info()`)
|
||
- Отображается статистика по числовым столбцам (`df.describe()`):
|
||
- Среднее значение
|
||
- Стандартное отклонение
|
||
- Минимальные и максимальные значения
|
||
- Квартили
|
||
|
||
### 4. Визуализация данных
|
||
|
||
#### График 1: Гистограмма распределения цены закрытия
|
||
- **Цель**: Показать, как часто встречаются разные цены Bitcoin
|
||
- **Ось X**: Цена Bitcoin (USD)
|
||
- **Ось Y**: Количество наблюдений (частота)
|
||
- **Характеристики**: Желтые столбцы, 50 интервалов, сетка
|
||
|
||
#### График 2: Диаграмма рассеяния (объем vs цена)
|
||
- **Цель**: Выявить взаимосвязь между объемом торгов и ценой
|
||
- **Сокращение данных**: Для ускорения отрисовки используется случайная выборка из 5000 строк
|
||
- **Ось X**: Объем торгов (BTC)
|
||
- **Ось Y**: Цена закрытия (USD)
|
||
- **Точки**: Полупрозрачные для лучшей читаемости
|
||
|
||
#### График 3: Boxplot распределения цен
|
||
- **Цель**: Сравнить распределения цен открытия, максимума, минимума и закрытия
|
||
- **Элементы boxplot**:
|
||
- Красная линия - медиана (50% данных)
|
||
- Коробка - интервал между 25% и 75%
|
||
- Усы - нормальный диапазон значений
|
||
- Точки - выбросы (аномальные значения) |