一、项目背景
自2009年比特币诞生以来,在市场情绪,政策变化,技术进步等多重因素共同作用下,他经历了频繁的大幅价格波动,这些波动不仅体现了投资者对比特币价值的认知变化,同时也映射出全球经济环境和技术发展的脉络。这种“疯狂”的市场行为提供了一个极佳的实验场,可以帮助我们更深入地理解金融市场中的风险管理和投资策略。
二、数据来源与说明
(一)数据来源
- 数据源 1:本数据集包含2014-2025的比特币美元价格数据,具体包含比特币每日的开盘价,最高价,最低价,收盘价以及成交量等关键信息。
(二)数据说明
- Date :日期,比特币的交易日期
- Open :开盘价
- High :最高价
- Low :最低价
- Close :收盘价
- Volume :成交量
三、数据处理
(一)缺失值处理
# 数据处理
# 检查缺失值
print("缺失值统计:")
print(data.isnull().sum())
# 处理缺失值(这里使用前向填充)
data = data.fillna(method='ffill')
(二)异常值处理
# 检查数据中的异常值(通过箱线图可视化)
plt.figure(figsize=(12, 8))
data.plot(kind='box', subplots=True, layout=(3, 2), sharex=False, sharey=False, figsize=(12, 8))
plt.suptitle('Boxplots of Bitcoin Data Features')
plt.show()
Open High Low Close Adj Close \ count 3413.000000 3413.000000 3413.000000 3413.000000 3413.000000 mean 14755.133911 15099.732436 14383.721317 14765.981975 14765.981975 std 16297.574402 16687.924194 15859.785405 16299.471806 16299.471806 min 176.897003 211.731003 171.509995 178.102997 178.102997 25% 922.067017 937.525024 910.416992 921.789001 921.789001 50% 8290.759766 8470.988281 8110.770020 8293.868164 8293.868164 75% 24373.457030 25020.458980 23927.910160 24402.818360 24402.818360 max 67549.734380 68789.625000 66382.062500 67566.828130 67566.828130 Volume count 3.413000e+03 mean 1.663294e+10 std 1.907392e+10 min 5.914570e+06 25% 1.689680e+08 50% 1.180170e+10 75% 2.696772e+10 max 3.509679e+11
(1)所有列的计数均为3413,表明数据集中有3413个数据点,且在处理缺失值后各列数据数量保持一致。
(2)不同价格相关列,均值均在14000-15000美元左右,而成交量均值为1.663294×10^10,显示出比特币交易的活跃程度和价格大大致水平。
(3)价格相关列的标准差较大,说明比特币价格波动幅度较大。成交量的标准差也很大,反映出交易量在不同时间的差异明显。
(4)最小值较低,尤其是早期比特币价格;最大值则显示出比特币在某些时期达到了非常高的价格和交易量。25%,50%,75%分位数可以帮助了解数据的分布情况,比如50%分位数能体现数据的中间水平。
四、数据分析
(一)价格波动与趋势分析
# 绘制价格走势
plt.figure(figsize=(12, 6))
plt.plot(data.index, data['Close'], label='Adjusted Close Price')
plt.title('Bitcoin Price Trend (2014 - 2024)')
plt.xlabel('Date')
plt.ylabel('Price (USD)')
plt.legend()
plt.show()
# 计算价格的每日收益率
data['Returns'] = data['Close'].pct_change()
# 绘制收益率分布
plt.figure(figsize=(10, 6))
sns.histplot(data['Returns'].dropna(), bins=50, kde=True)
plt.title('Distribution of Bitcoin Daily Returns')
plt.xlabel('Daily Returns')
plt.ylabel('Frequency')
plt.show()
可以看出比特币几个在此期间波动剧烈,2017-2018以及2020-2021年经历了显著的上涨和下跌行情,2024年价格又有明显回升趋势。
娴熟比特币每日收益率大多集中在0附近,说明多数时间比特币每日价格变动幅度较小,但分布图尾部较厚,意味着偶尔会出现较大幅度的涨跌情况,及价格波动的极端情况也时有发生。
(二)成交量与市场波动关系分析
# 计算价格的标准差作为市场波动指标
data['Volatility'] = data['Returns'].rolling(window=30).std() * np.sqrt(30)
# 删除包含缺失值的行,确保所有列数据长度一致
data_without_nan = data.dropna(subset=['Volume', 'Volatility', 'Returns'])
# 绘制成交量与市场波动的关系
plt.figure(figsize=(12, 6))
plt.scatter(data_without_nan['Volume'], data_without_nan['Volatility'])
plt.title('Relationship between Volume and Market Volatility')
plt.xlabel('Volume')
plt.ylabel('Volatility')
plt.show()
(1)大部分数据点集中在成交量较低,波动性也相对较低的区域,说明大多数情况下,低成交量伴随着较低的市场波动;
(2)右侧有一些离群点,表明在某些时候,高成交量会伴随着较高的市场波动性,但整体上两者之间未呈现明显的线性相关关系。
(三)价格异常波动检测
1.价格异常波动(Price Outliers):
# 价格异常波动检测
# 使用Z-score检测价格异常值
z_scores = stats.zscore(data_without_nan['Returns'])
outliers = data_without_nan[(np.abs(z_scores) > 3)]
print("Price Outliers (Returns with z-score > 3 or < -3):")
print(outliers[['Returns']])
Price Outliers (Returns with z-score > 3 or < -3): Returns Date 2014-11-12 0.151936 2015-01-13 -0.156593 2015-01-14 -0.211449 2015-01-15 0.178217 2015-01-28 -0.112193 2015-08-18 -0.181788 2015-11-03 0.116914 2015-11-10 -0.114233 2016-01-15 -0.153321 2016-05-28 0.119494 2017-01-05 -0.122410 2017-01-06 -0.109711 2017-01-11 -0.143136 2017-03-18 -0.114896 2017-07-17 0.154724 2017-07-20 0.239361 2017-08-05 0.123285 2017-09-14 -0.187411 2017-09-15 0.152956 2017-09-18 0.134618 2017-10-12 0.128547 2017-12-06 0.199283 2017-12-07 0.252472 2017-12-22 -0.124730 2017-12-26 0.147805 2017-12-30 -0.116265 2018-01-05 0.117333 2018-01-16 -0.168548 2018-02-05 -0.159688 2018-02-06 0.114838 2018-04-12 0.132160 2018-11-19 -0.133732 2018-11-28 0.114298 2019-04-02 0.173560 2019-05-11 0.129478 2019-05-13 0.120840 2019-05-19 0.127418 2019-06-27 -0.140857 2019-07-16 -0.130100 2019-09-24 -0.113960 2019-10-25 0.155763 2020-03-12 -0.371695 2020-03-13 0.119281 2020-03-19 0.181878 2020-04-29 0.127318 2021-01-21 -0.132837 2021-02-08 0.187465 2021-05-12 -0.133217 2021-05-19 -0.137661 2021-05-24 0.113182 2021-06-09 0.115691 2021-06-21 -0.112655 2021-09-07 -0.110622 2022-02-04 0.116978 2022-02-28 0.145412 2022-05-09 -0.110464 2022-06-13 -0.159747 2022-11-09 -0.143490
通过 Z-score 方法检测出了比特币每日收益率中绝对值大于 3 的异常值,并列出了这些异常值对应的日期和收益率数值。这些日期代表着比特币价格出现较大波动的时刻,例如 2020 年 3 月 12 日收益率为 -0.371695,表明当天比特币价格大幅下跌。
2.成交量异常值(Volume Outliers):
# 成交量异常值检测
# 使用Z-score检测成交量异常值
volume_z_scores = stats.zscore(data_without_nan['Volume'])
volume_outliers = data_without_nan[(np.abs(volume_z_scores) > 3)]
print("Volume Outliers (Volume with z-score > 3 or < -3):")
print(volume_outliers[['Volume']])
Volume Outliers (Volume with z-score > 3 or < -3): Volume Date 2020-03-13 7.415677e+10 2021-01-03 7.866524e+10 2021-01-04 8.116348e+10 2021-01-06 7.528943e+10 2021-01-07 8.476214e+10 2021-01-08 8.810752e+10 2021-01-10 7.998075e+10 2021-01-11 1.233206e+11 2021-01-12 7.477328e+10 2021-01-21 7.564307e+10 2021-01-22 7.720727e+10 2021-01-28 7.651716e+10 2021-01-29 1.178946e+11 2021-02-08 1.014672e+11 2021-02-09 9.180985e+10 2021-02-10 8.730109e+10 2021-02-11 8.138891e+10 2021-02-12 7.655504e+10 2021-02-15 7.706990e+10 2021-02-16 7.704958e+10 2021-02-17 8.082055e+10 2021-02-22 9.205242e+10 2021-02-23 1.061025e+11 2021-02-26 3.509679e+11 2021-04-07 7.564530e+10 2021-04-14 7.745178e+10 2021-04-16 8.429301e+10 2021-04-18 9.746887e+10 2021-04-22 7.479863e+10 2021-04-23 8.666867e+10 2021-05-12 7.521540e+10 2021-05-13 9.672115e+10 2021-05-17 7.490364e+10 2021-05-19 1.263581e+11 2021-05-20 8.828194e+10 2021-05-21 8.205162e+10 2021-05-23 7.846927e+10 2022-01-07 8.419661e+10 2022-11-08 1.189925e+11 2022-11-09 1.029052e+11 2022-11-10 8.320228e+10
同样使用 Z-score 方法检测出成交量中的异常值,并列出了异常值对应的日期和成交量数值。可以看到这些异常值主要集中在 2021 年,说明在这一年中,比特币市场的交易量出现了多次显著高于正常水平的情况 。
五、结论与建议
(一)结论
通过对比特币 2014 - 2024 年数据的分析,发现比特币价格呈现出剧烈波动的总体趋势,在 2017 - 2018 年以及 2020 - 2021 年期间经历了显著的涨跌。每日收益率分布集中在 0 附近,但尾部较厚,表明多数时间价格变动小,但偶尔会有大幅涨跌。成交量与市场波动的关系并不呈明显线性相关,多数低成交量对应低波动,少数高成交量伴随高波动。此外,检测出了价格收益率和成交量的一些异常值,反映出市场的不稳定性。
(二)建议
- 策略优化建议:对于交易平台的营销策略,可在比特币价格波动较大且成交量高的时段,加强市场宣传和推广,吸引更多投资者。因为这些时段市场关注度高,潜在投资需求大。运营策略上,建立针对价格和成交量异常波动的风险预警机制,当出现类似检测出的异常值情况时,及时通知用户,保障交易安全,增强用户信任度。
- 未来发展建议:从市场拓展角度,可向对加密货币接受度逐渐提高的新兴市场进军,如一些东南亚国家。利用比特币价格波动带来的投资机会,吸引当地投资者。在新业务探索上,考虑开发与比特币波动性相关的金融衍生品,如波动率指数期货,为投资者提供更多风险管理和投资获利的途径,推动业务多元化发展 。