【AI Cursor】零编程基础做量化投资系列(一)

@AI量化投资

量化投资研究教程

本教程将使用Python和Cursor进行量化投资研究,代码使用Cursor自动生成。

文件结构

  • challenger
    • src
      • quant101.py
    • data
      • YYYYMMDD
        • RB2310.csv
        • RB2401.csv
    • pic

1. 导入数据

首先,我们需要导入challenger/data文件夹下的子文件夹,这些子文件夹的命名格式为YYYYMMDD。我们将这些文件夹按照升序排列,然后导入每个文件夹下的RB2310.csvRB2401.csv文件。我们将创建两个dataframe,frontback,并将RB2310的数据放入front,将RB2401的数据放入back

import pandas as pd  # 导入pandas库,用于数据处理
import os  # 导入os库,用于操作系统相关的操作,如改变工作目录
import matplotlib.pyplot as plt  # 导入matplotlib.pyplot库,用于数据可视化
import mplfinance as mpf  # 导入mplfinance库,用于绘制金融图表

os.chdir('C:/challenger')  # 改变工作目录到'C:/challenger'
folders = [folder for folder in os.listdir('./data') if os.path.isdir(os.path.join('./data', folder))]  # 获取'./data'目录下的所有文件夹
folders = sorted(folders)  # 对文件夹列表进行排序

front = pd.DataFrame()  # 初始化一个空的DataFrame,命名为front
back = pd.DataFrame()  # 初始化一个空的DataFrame,命名为back

# 导入数据
for folder in folders:  # 遍历每一个文件夹
    front = pd.concat([front, pd.read_csv(f'./data/{
     folder}/RB2310.csv')])  # 读取每个文件夹下的RB2310.csv文件,并将其添加到front DataFrame中
    back = pd.concat([back, pd.read_csv(f'./data/{
     folder}/RB2401.csv')])  # 读取每个文件夹下的RB2401.csv文件,并将其添加到back DataFrame中

2. 数据清洗

我们需要对frontback的成交量和成交额进行处理。这些数据是日累加值,我们需要进行前后差值处理,以得到每一行的单独成交量和成交额。在交易日切换后,成交量和成交额会重新从零开始,所以在做差值处理时,可能会出现负值。我们的处理方式是,如果差值为负,则使用原来那行的成交量和成交额。

# 处理成交量和成交额
for df in [front, back]:  # 遍历front和back两个DataFrame
    volume_temp = df['volume'].diff()  # 计算'volume'列的差分,即当前行与前一行的差值
    abnorm_loc = volume_temp.loc[(volume_temp < 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值