基于聚类与LSTM对比特币价格深度分析与预测

news2024/9/22 14:11:23

1.项目背景

比特币作为全球最具影响力的加密货币之一,其价格受到多种复杂因素的共同作用,包括市场情绪、政策变化、大型机构的投资行为等,这些因素在不同的市场阶段对比特币价格波动产生直接或间接的影响。通过对比特币市场的深入分析,可以更清晰地了解价格动态和市场行为,进而为投资决策提供更可靠的依据。

本项目对比特币市场进行了全面而深入的分析,采用多种技术指标和数据分析方法,揭示了比特币价格动态和市场行为的关键特征,详细刻画了比特币的市场波动性,还提供了对市场结构和未来价格走势的深刻洞察,这些成果对于投资者、交易者和市场研究人员具有重要的参考价值,能够帮助他们制定更加明智且数据驱动的决策。然而,尽管本项目揭示了比特币市场的许多关键特征,投资者仍需意识到虚拟货币市场的高风险性。比特币等虚拟货币的价格波动极大,常常受全球市场情绪、政策变化和大型机构投资行为的影响,容易出现剧烈的价格波动,此外,虚拟货币市场缺乏足够的监管保护,存在较大的金融风险。

2.数据说明

字段名说明
Date交易日期
Open开盘价(当天交易开始时的价格)
High最高价(当天交易中的最高价格)
Low最低价(当天交易中的最低价格)
Close收盘价(当天交易结束时的价格)
Adj Close复权收盘价(经过调整的收盘价格) 在加密货币中,调整收盘价通常较少使用,因为它不涉及股息或拆股。
Volume成交量(当天的比特币交易总量)

3.Python库导入及数据读取

import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from pandas.plotting import register_matplotlib_converters
import numpy as np
from matplotlib.ticker import MaxNLocator
from sklearn.preprocessing import StandardScaler,MinMaxScaler
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import LSTM, Dense, Dropout
from sklearn.metrics import mean_squared_error, mean_absolute_error
from tensorflow.keras import Input
from tensorflow.keras.optimizers import Adam
from keras_tuner import RandomSearch
import seaborn as sns
from keras_tuner.engine.hyperparameters import HyperParameters
data = pd.read_csv('/home/mw/input/09068560/BTC-USD (2014-2024).csv')

4.数据预览及预处理

查看数据信息:

这里先处理日期,把日期转为正确的日期格式,再对缺失值进行处理。

查找缺失值所在的行:

发现数据在“2024-01-20”这一天全部都丢失了,考虑丢失的比较少,可以使用插值法进行填充。

可以看到,通过插值法填充的数据,还是相对合理的,这里观察数据的起始时间。

该数据集的日期范围是从 2014年9月18日 到 2024年1月21日,并且日期列中没有缺失值。数据是连续的。

5.可视化分析

5.1K线图

  1. 长期增长趋势:从2014年到2024年,比特币价格整体呈现显著的上升趋势,尽管存在周期性波动。

  2. 主要周期:

    • 2014-2016年:价格低位徘徊期
    • 2017年:第一个主要牛市,价格急剧上升
    • 2018-2020年初:长期调整期
    • 2020年中-2021年底:第二个主要牛市,创历史新高
    • 2022年:大幅回调
    • 2023年至今:新一轮上涨趋势
  3. 关键价格点:

    • 2017年末:首次突破20,000美元
    • 2021年4月和11月:两次突破60,000美元,达到历史最高点
  4. 波动性:

    • 早期(2014-2016):相对低波动
    • 中期(2017-2019):波动性增大
    • 近期(2020-2024):呈现更大幅度的价格波动
  5. 调整幅度:

    • 2018年初的回调:从近20,000美元跌至约3,000美元
    • 2022年的回调:从约69,000美元高点跌至约15,000美元

这里由Claude列出比特币价格走势中的重要事件节点,并将其与价格变动相关联,以下是主要事件及其对应的时间点:

  1. 2017年末急涨:

    • 价格从低位急剧上涨至约20,000美元高点
    • 背景:首次加密货币热潮,比特币期货合约推出
  2. 2018年初大跌:

    • 从高点快速回落至约6,000美元
    • 事件:多国开始收紧加密货币监管
  3. 2020年末至2021年初快速上涨:

    • 价格突破50,000美元
    • 背景:机构投资者大规模进入,特斯拉宣布购入比特币
  4. 2021年11月历史新高:

    • 达到接近70,000美元的历史最高点
    • 事件:首只比特币期货ETF在美国上市
  5. 2022年中大幅下跌:

    • 价格跌破20,000美元
    • 背景:全球加息周期开启,加密货币市场整体低迷
  6. 2023年初至今显著上涨:

    • 价格再次突破40,000美元
    • 背景:比特币现货ETF获批预期升温

5.2价格趋势分析

总体来看,尽管比特币价格有周期性的波动,但整体趋势是上升的,说明比特币在长期内的投资价值依然得到一定的市场认可。

  1. 短期与长期价格趋势变化:

    • 短期趋势(由30天线表示)变化更为频繁,对价格变动反应更敏感
    • 长期趋势(由100天线表示)变化相对平缓,反映整体方向
    • 2020年底至2021年末,短期和长期趋势都呈现强劲上升
    • 2022年上半年,短期和长期趋势均转为下降
    • 2023年中期开始,短期和长期趋势再次转为上升
  2. 买卖信号:

    • 黄金交叉(30天线从下向上穿过100天线):买入信号
      • 2020年7月出现明显黄金交叉,随后价格大幅上涨
      • 2023年初再次出现黄金交叉,预示新一轮上涨趋势
    • 死亡交叉(30天线从上向下穿过100天线):卖出信号
      • 2021年中期短暂出现死亡交叉,但很快恢复
      • 2022年初出现显著死亡交叉,随后价格大幅下跌
  3. 趋势确认:

    • 牛市期间:价格线位于30天线之上,30天线高于100天线
    • 熊市期间:价格线位于30天线之下,30天线低于100天线
    • 2023年下半年,价格线突破并保持在两条均线之上,确认上升趋势
  4. 波动性观察:

    • 价格波动幅度随时间增大,但近期相对2021年峰值有所收窄
    • 均线之间的距离反映市场波动性,距离越大表示波动越剧烈
  5. 当前市场状况(2024年初):

    • 价格处于30天和100天均线之上,表明短期和中期趋势向好
    • 30天线位于100天线之上,进一步确认上升趋势
    • 需密切关注价格是否能持续保持在均线之上,以确认趋势持续性

5.3相对强弱指数

超买:当资产的价格在短时间内快速上涨到超过其内在价值或历史平均水平时,称为超买,通常表明投资者情绪过于乐观,价格可能存在回调的风险。
超卖:当资产的价格在短时间内快速下跌到低于其内在价值或历史平均水平时,称为超卖,通常表明投资者情绪过于悲观,价格可能存在反弹的机会。
超买和超卖的概念在技术分析中用于帮助识别潜在的价格反转点。
RSI值显示了该股票的强弱程度。通常RSI值高于70表示股票处于超买状态,可能有回调的风险;低于30表示股票处于超卖状态,可能有反弹的机会。

5.4布林带

  1. 长期趋势:

    • 从2015年到2024年,比特币价格整体呈现上升趋势
  2. 重要价格突破:

    • 2017年末和2021年初,价格突破上轨,预示了显著的上涨行情
    • 2022年中期,价格跌破下轨,标志着熊市的到来
  3. 波动性变化:

    • 2021年布林带显著展开,反映了该时期巨大的市场波动性
    • 相比之下,2019-2020年布林带相对收窄,表明那段时期波动较小
  4. 近期趋势(2023-2024):

    • 价格逐渐上升,突破中轨,显示出上升趋势
    • 布林带开始缓慢展开,可能预示新一轮波动性增加
  5. 当前市场状况:

    • 价格位于中轨和上轨之间,暗示短期内可能继续上涨
    • 但尚未突破上轨,表明上涨动能还不够强劲

5.5成交量走势

  • 2021年初出现了最显著的成交量峰值,远超其他时期,可能与当时比特币价格创历史新高有关。
  • 成交量随着价格波动而波动,在价格较高时,成交量相对较大,尤其是在价格剧烈波动期间。

5.6比特币价格波动与异常检测

  • 2015-2017年:价格波动相对平稳。
  • 2017年末-2018年初:出现第一次显著的价格波动和异常点集中,可能是由ICO热潮和比特币期货合约推出推动。
  • 2020年后:价格波动和异常点明显增多,特别是2021年达到峰值,可能是受机构投资者进入、特斯拉购买比特币、萨尔瓦多将比特币列为法定货币等因素影响。

5.7比特币成交量与异常检测

  • 2015-2017年:成交量较低,无明显异常点。
  • 2017年末-2018年初:首次出现明显的成交量增长。
  • 2020年后:成交量显著增加,异常点更为频繁,反映机构投资者大规模进入市场,以及比特币价格创新高时的市场狂热。

6.市场特征聚类分析

6.1数据预处理

选择用于聚类的特征: 价格波动和成交量,并且进行标准化处理。

6.2K-Means聚类

1.左图为肘部法则图,通过此图可以看到,在聚类数4到5之间,曲线开始明显平缓。
2.右图为轮廓系数图,轮廓系数在聚类数为5时达到最高点。
结合两个图,选择5作为聚类数。

聚类特征概述

  1. 聚类 0(紫色):中等波动、中等成交量

    • 价格波动:中等(约500-1500 USD)
    • 成交量:中等(约0.2-0.4)
    • 特征:市场稳定期,可能是调整或蓄势阶段
  2. 聚类 1(蓝色):低波动、低成交量

    • 价格波动:最低(< 500 USD)
    • 成交量:最低(< 0.1)
    • 特征:市场低迷期,可能是早期阶段或熊市底部
  3. 聚类 2(绿色):极高波动、高成交量

    • 价格波动:最高(4000-8000 USD,有极端值超过12000 USD)
    • 成交量:较高(0.5-1.0,有极端值接近3.5)
    • 特征:市场极度活跃期,可能是牛市顶峰或剧烈波动期
  4. 聚类 3(单点,2021-02-26)

    • 价格波动:高(约4000 USD)
    • 成交量:极高(3.5)
    • 特征:代表单一极端事件
  5. 聚类 4(黄色):高波动、高成交量

    • 价格波动:高(2000-4000 USD)
    • 成交量:高(0.3-0.5)
    • 特征:市场活跃期,可能是牛市上升阶段或高度投机期

市场演变分析

  1. 早期阶段(2014-2017年中)

    • 主要表现为聚类1(蓝色),低波动低成交量
    • 市场处于萌芽期,参与度低
  2. 首次爆发期(2017年底-2018年初)

    • 出现聚类4(黄色)和聚类2(绿色)
    • 市场经历第一次大规模牛市,价格和成交量显著上升
  3. 调整期(2018-2020年中)

    • 主要为聚类0(紫色)和聚类1(蓝色)
    • 市场进入调整,波动和成交量回落但仍高于初期水平
  4. 成熟爆发期(2020年底-2021年)

    • 大量聚类2(绿色)和聚类4(黄色)出现
    • 市场达到前所未有的高度活跃状态,价格和成交量创历史新高
  5. 高位波动期(2022-2024年初)

    • 聚类0(紫色)、聚类4(黄色)和少量聚类2(绿色)交替出现
    • 市场维持在较高水平但波动性增加,可能进入新的调整期

7.基于LSTM模型预测比特币价格

7.1数据预处理

对数据进行归一化,归一化到0-1之间后,划分数据集,并且将数据调整为 LSTM 所需的格式。

7.2建立模型

原始模型性能:

均方误差 (MSE): 1874807.721

平均绝对误差 (MAE): 920.989

7.3优化参数

最佳超参数:

{‘num_lstm_layers’: 1,

‘lstm_units_0’: 32,

‘dropout_0’: 0.4,

‘dense_units’: 48,

‘learning_rate’: 0.0031256760850773423,

‘lstm_units_1’: 32,

‘dropout_1’: 0.4,

‘lstm_units_2’: 96,

‘dropout_2’: 0.1}

优化后的模型性能:

均方误差 (MSE): 897151.138

平均绝对误差 (MAE): 663.656

  1. LSTM模型对比特币价格的整体趋势预测较为准确。
  2. 优化确实带来了一定的改进,但改进幅度不大。
  3. 对于日常波动,两个模型都表现良好,但在预测大幅度价格变动时仍有改进空间。
  4. 这种预测模型适合用于中短期趋势分析,但不应过度依赖于其对具体价格点的预测。

8.总结

本项目对比特币市场进行了全面而深入的分析,采用多种技术指标和数据分析方法,揭示了比特币价格动态和市场行为的关键特征。

具体而言,项目包括以下主要组成部分:

  1. 多维度可视化分析:

    • 绘制K线图,直观展示价格变动。
    • 进行价格趋势分析,识别长期走势。
    • 运用移动平均线,平滑短期波动并突显趋势。
    • 通过RSI(相对强弱指数)分析,评估市场过买过卖状况。
    • 利用布林带,量化价格波动范围和潜在突破点。
    • 分析成交量走势,洞察市场参与度变化。
  2. 异常检测:

    • 实施价格异常波动检测,识别重大市场事件。
    • 进行成交量异常值检测,发现潜在的市场操纵或重大交易活动。
  3. 市场状态聚类分析:

    • 应用K-Means聚类算法,将市场状态划分为五个不同类别。
    • 深入理解不同市场阶段的特征和行为模式。
  4. 高级预测模型:

    • 构建并优化LSTM(长短期记忆)神经网络模型。
    • 对比特币收盘价进行预测,为投资决策提供数据支持。

通过这一系列全面的分析和建模,本项目不仅详细刻画了比特币的市场波动性,还提供了对市场结构和未来价格走势的深刻洞察,这些成果对于投资者、交易者和市场研究人员具有重要的参考价值,能够帮助他们制定更加明智且数据驱动的决策。然而,尽管本项目揭示了比特币市场的许多关键特征,投资者仍需意识到虚拟货币市场的高风险性。比特币等虚拟货币的价格波动极大,常常受全球市场情绪、政策变化和大型机构投资行为的影响,容易出现剧烈的价格波动,此外,虚拟货币市场缺乏足够的监管保护,存在较大的金融风险。
本项目仅供学习参考!建议投资者在做出任何投资决策时,结合市场走势和政策变化,尽量控制风险,避免盲目跟风。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2117234.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在java中使用网易邮箱发送邮件保姆级教程,从零开始,完美避开各种坑

背景,开源工作流引擎AntFlow,gitcode地址通知系统需要配置一个邮箱地址才能供用户展示发送邮件通知功能.最初在开发阶段我使用的是个人163邮箱,本来没什么问题.然而当注册一个新的网易邮箱并在配置里替换掉原来个人邮箱后,竟然出现535 Error: authentication failed 异常,经过网…

【orin-nx Linux下创建简单C++项目 CMake构建编译系统】

【注意】&#xff1a;需要安装gcc 和 cmake 安装视频 #.sh 文件添加权限 chmod x cmake-3.30.3-linux-aarch64.sh1、在root下创建一个文件夹testaubo 2、在testaubo文件夹下创建5个文件夹以及一个cmake文件 2.1、【src】 文件夹存放C的 .cpp文件2.2、【include】 文件夹存…

【计算机网络】TCP协议(下)

上篇我们介绍了三次握手四次挥手&#xff0c;这次继续来进行tcp的介绍。 1 TINE_WAIT与CLOSE_WAIT 我们先使用客户端作为左端&#xff0c;服务端作为右方 当我们客户端close时&#xff0c;就会发起两次挥手&#xff0c;此时服务端就会进入CLOSE_WAIT状态&#xff0c;只要服务端…

链表算法题(下)

在链表算法题&#xff08;上&#xff09;长中我们已经学习了一系列的链表算法题&#xff0c;那么在本篇中我们将继续来学习链表的算法题&#xff0c;接下来就继续来破解链表的算法题吧&#xff01; 1.相交链表 160. 相交链表 - 力扣&#xff08;LeetCode&#xff09; 通过以上…

基于yolov8的人脸检测计数系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的人脸检测计数系统是一种利用深度学习技术的先进解决方案&#xff0c;它以其高效、准确的特点在人脸检测领域脱颖而出。该系统以YOLOv8为核心算法&#xff0c;该算法作为YOLO系列的最新迭代&#xff0c;不仅继承了前代算法的优点&#xff0c;还在实时…

YOLOv8-obb训练自己的数据集

一、YOLO OBB 格式 YOLO OBB 格式通过四个角点指定边界框&#xff0c;其坐标在 0 和 1 之间归一化&#xff1a; class_index x1 y1 x2 y2 x3 y3 x4 y4 YOLO 在内部处理损失和产出。 xywhr 格式&#xff0c;表示边界框的中心点&#xff08;xy&#xff09;、宽度、高度和旋转角度…

树莓派5_opencv笔记27:Opencv录制视频(无声音)

今日继续学习树莓派5 8G&#xff1a;&#xff08;Raspberry Pi&#xff0c;简称RPi或RasPi&#xff09; 本人所用树莓派5 装载的系统与版本如下: 版本可用命令 (lsb_release -a) 查询: Opencv 与 python 版本如下&#xff1a; 今天就水一篇文章&#xff0c;用树莓派摄像头&…

NISP 一级 | 2.4 访问控制

关注这个证书的其他相关笔记&#xff1a;NISP 一级 —— 考证笔记合集-CSDN博客 0x01&#xff1a;访问控制基本概念 访问控制是针对越权使用资源的防御措施。 其目标是防止对任何资源&#xff08;如计算资源、通信资源或信息资源&#xff09;进行未授权的访问&#xff0c;从而…

BLIP3技术小结(xGen-MM (BLIP-3): A Family of Open Large Multimodal Models)

paperhttps://www.arxiv.org/abs/2408.08872githubhttps://github.com/salesforce/LAVIS/tree/xgen-mmOrg.Salesforce AI Research个人博客地址http://myhz0606.com/article/blip3 前置阅读&#xff1a;BLIP系列总结 核心思路 虽然过去BLIP系列对LMM发展起到至关重要的作用&…

Redis缓存常用的读写策略

缓存常用的读写策略 缓存与DB的数据不一致问题&#xff0c;大多数都是指DB的数据已经修改&#xff0c;而缓存中的数据还是旧数据的情况。 旁路缓存模式 对于读操作&#xff1a;基本上所有模式都是先尝试从缓存中读&#xff0c;没有的话再去DB读取&#xff0c;然后写到缓存中…

MSCKF7讲:特征管理与优化

MSCKF7讲&#xff1a;特征管理与优化 文章目录 MSCKF7讲&#xff1a;特征管理与优化1 Feature.h2 OptimizationConfig3 initializePosition三角化LM优化3.1 计算归一化坐标深度初值generateInitialGuess① 理论推导② 代码分析 3.2 计算归一化误差cost① 理论推导② 代码分析 3…

模型和算力看板:Compute DashBoard

AGI 之路 AGI&#xff08;通用人工智能&#xff09;是整个计算机科学的圣杯&#xff0c;算力的增长和模型能力的提升&#xff08;算法和数据&#xff09;缺一不可。作为一个新质生产力&#xff0c;构建一个合理的评价体系是常用的方法论。针对模型和算力的评价&#xff0c;有类…

【AutoX.js】选择器 UiSelector

文章目录 原文&#xff1a;https://blog.c12th.cn/archives/37.html选择器 UiSelector笔记直接分析层次分析代码分析 最后 原文&#xff1a;https://blog.c12th.cn/archives/37.html 选择器 UiSelector 笔记 AutoX.js UiSelector 直接分析 用于简单、最直接的查找控件 开启悬…

code agent-自动写代码的AI工具整理(2024)

文章目录 cursorReplit Agentgithub-copilot cursor https://www.cursor.com/ 界面类似VSCODE&#xff0c;集成多种先进功能的AI驱动的代码编辑器&#xff0c;智能代码编辑与补全、使用自然语言指令来编辑和修改代码、版本控制与代码审查、自动化测试等&#xff1b; Replit…

路径规划——RRT算法

路径规划——RRT算法 算法原理 RRT算法的全称是快速扩展随机树算法(Rapidly Exploring Random Tree)&#xff0c;它的思想是选取一个初始点作为根节点&#xff0c;通过随机采样&#xff0c;增加叶子节点的方式&#xff0c;生成一个随机扩展树&#xff0c;当随机树中的叶子节点…

基于阿里云函数计算(FC)x 云原生 API 网关构建生产级别 LLM Chat 应用方案最佳实践

作者&#xff1a;计缘 LLM Chat 应用大家应该都不陌生&#xff0c;这类应用也逐渐称为了我们日常的得力助手&#xff0c;如果只是个人使用&#xff0c;那么目前市面上有很多方案可以快速的构建出一个LLM Chat应用&#xff0c;但是如果要用在企业生产级别的项目中&#xff0c;那…

开源软件如何保证数据安全?从一下七个方面进行分析

1、加密软件来保护 在开源软件中&#xff0c;数据加密和保护是保障数据安全的重要手段。开发者应该使用强加密算法的加密软件来保护敏感数据&#xff0c;并确保数据传输和存储的安全性。通过驱动层加密技术&#xff0c;对开发源代码进行强制加密处理&#xff0c;文件创建自动进…

Mac在Python项目中通过opencv模版匹配定位不到图片

起因 原本一行代码的事情&#xff0c;但是在Mac上总能出现意外&#xff0c;如下 box pyautogui.locateOnScreen(obsidian.png) print(box) pyautogui.moveTo(box[0],box[1])上面的代码用来定位图片在屏幕中的位置&#xff0c;然后移动鼠标到定位到的屏幕位置坐标。 意外…

IT管理:我与IT的故事9-数字化转型7步思考行动法

四书即论语、孟子、大学、中庸&#xff0c;又称四子书&#xff0c;为历代儒学子首要研习之书。南宋朱熹取《礼记》之大学、中庸篇&#xff0c;分章注释&#xff0c;与论语、孟子合为“四书”。 四书及其注释包涵孔子弟子及再传弟子、孟子、程子、朱熹等&#xff0c;其编撰时长达…

代码随想录Day 38|背包问题完结,题目322.零钱兑换、279.完全平方数、139,单词拆分数

提示&#xff1a;DDU&#xff0c;供自己复习使用。欢迎大家前来讨论~ 文章目录 动态规划part06题目题目一&#xff1a;322. 零钱兑换解题思路&#xff1a;题目二&#xff1a;279.完全平方数题目三&#xff1a;139.单词拆分数解题思路&#xff1a;背包问题 多重背包&#xff08;…