收盘价时空模式挖掘与多股走势聚类分析:探索市场行为共性
- 一.版本信息
- 二.操作步骤
- 1.下载各股历史交易数据
- A.代码(download_stocks.py)
- B.执行
- 2.遍历各股的csv文件,提取收盘价数据,归一化,绘制曲线,保存图片
- A.代码
- B.执行
- 3.用上面的图片集训练VAE模型
- A.代码
- B.执行
- 4.用上面训出的VAE模型,提取图片特征并聚类
- A.代码
- B.执行
- 5.选择出一类,分析这类股票是否有共性
- A.代码
- B.执行
基于探究潜在关联性的初衷,我们旨在探讨是否存在某种显著的共性驱动特定类别股票表现出趋同的市场走势。本文系统地阐述了如何自深圳证券交易所、上海证券交易所、科创板以及北京证券交易所获取各上市公司的历史交易数据,并通过标准化处理各股票的收盘价序列,进而绘制其归一化曲线并转化为图像形式予以保存。随后,我们运用变分自编码器(VAE)模型对选取的部分代表性图像进行了深度学习建模,籍此提取每一张股票价格曲线图像的内在特征向量。接下来,借助聚类分析手段,我们将所有股票的特征向量集合进行分类,从而揭示可能存在的结构化分布。最终,在形成的聚类中识别出走势最为相似的一类股票群体,进而对其基本面及市场表现等特性进行详尽分析,以期发现驱动此类股票同步波动的根本共性因素。
以上这段文字和标题采用通义千问润色
持续更新中。
一.版本信息
属性 | 值 |
---|---|
操作系统 | Windows 11 专业版 |
ChromeI浏览器 | 105.0.5195.102 |
chromedriver | 105.0.5195.52 |
股票成交数据下载:雪球 | https://xueqiu.com/ |
股票代码下载:akshare | 1.12.76 |
selenium | 4.18.1 |
python | 3.9 |
二.操作步骤
1.下载各股历史交易数据
主要步骤:
- 通过akshare下载所有的股票代码
- 采用selenium登录雪球网,手机扫码登录,确认登录完成后,自动下载各股票的历史交易数据,并存成csv文件
A.代码(download_stocks.py)
import sys
import akshare as ak
from numpy import int64
import pandas as pd
import os
import codecs
import glob
import requests
import random
import time
import json
import datetime
import tqdm
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keysdef createWebDrv():chrome_options = webdriver.ChromeOptions() chrome_options.add_argument('ignore-certificate-errors')chrome_options.add_argument('--disable-gpu') chrome_options.add_argument('--start-maximized')chrome_options.add_argument('--incognito')chrome_options.add_argument("disable-cache"