900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > A股量化交易跟踪突破策略

A股量化交易跟踪突破策略

时间:2023-04-17 04:51:02

相关推荐

A股量化交易跟踪突破策略

文章目录

前言python总结

前言

`这段代码的设计思路是遍历所有股票,获取它们在某一时间段内的历史行情数据,并基于收盘价计算该股票的上下轨道(阻力位与支撑位)以及均值与标准差。然后,根据最新的收盘价与上下轨道进行比较,判断是否建议买入、卖出或观望,并将结果保存到一个文本文件中。其中,为了防止频繁调用 Tushare 接口导致限制,代码还设置了计数器和时间延迟。具体来说,当循环处理了 800 个股票时,代码会休眠 60 秒,然后重置计数器,重新开始循环处理股票。

查询dqnapi接口域名:/

在这里插入图片描述

pro.stock_basic dqnapi号:100.3568/.1_v1

python

import tushare as tsimport pandas as pdfrom time import sleep# 获取 Tushare 账户 TOKENpro = ts.pro_api(token='')# 获取所有股票的基本信息stock_list = pro.stock_basic(exchange='', list_status='L', fields='ts_code,symbol,name')count = 0 # 循环遍历每个股票for code in stock_list['ts_code']:count += 1if count >= 800:sleep(60)count = 0try:print(code)# 获取股票代码为 code 的历史行情数据df = pro.daily(ts_code=code, start_date='', end_date='0620')df = df.sort_values(by='trade_date')# 计算当前收盘价和前一天收盘价的比率,并计算均值与标准差df['close_rate'] = df['close'] / df['close'].shift(1)rolling_mean = df['close_rate'].rolling(window=20).mean()rolling_std = df['close_rate'].rolling(window=20).std()# 计算上下轨道(阻力位与支撑位),并去掉 NaN 值upper_band = rolling_mean + 2 * rolling_stdlower_band = rolling_mean - 2 * rolling_stdupper_band = upper_band.dropna()lower_band = lower_band.dropna()# 获取最新的收盘价last_price = df['close'].iloc[-1]# 判断最新的收盘价是否突破了上下轨道if last_price > upper_band.iloc[-1]:result = f"{code} 价格突破上轨道,建议买入!"elif last_price < lower_band.iloc[-1]:result = f"{code} 价格跌破下轨道,建议卖出!"else:result = f"{code} 价格未突破上下轨道,观望!"# 将结果保存到文件中with open('tupo.txt', 'a+') as f:f.write(result + '\n')except Exception as e:print(f"{code} 数据获取失败:{e}")

总结

000001.SZ 价格突破上轨道,建议买入!

000002.SZ 价格突破上轨道,建议买入!

000004.SZ 价格突破上轨道,建议买入!

000005.SZ 价格突破上轨道,建议买入!

000006.SZ 价格突破上轨道,建议买入!

000007.SZ 价格突破上轨道,建议买入!

000008.SZ 价格突破上轨道,建议买入!

000009.SZ 价格突破上轨道,建议买入!

000010.SZ 价格突破上轨道,建议买入!

000011.SZ 价格突破上轨道,建议买入!

000012.SZ 价格突破上轨道,建议买入!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。