PTrade
ptrade上 2个策略A和B同时运行,A策略成交时触发的回调事件会被B策略捕获吗?
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 51 次浏览 • 2026-02-12 01:10
那么如果A策略有股票成交,那么会触发A策略里面的成交回调函数on_trade_response,但B策略里面的on_trade_response 不会捕获这个成交所触发的成交回调。
更新关于ptrade的解答,可以关注:
https://ptradeapi.com/hub/data/qa_data.html
可以关注公众号或者星球。 查看全部
那么如果A策略有股票成交,那么会触发A策略里面的成交回调函数on_trade_response,但B策略里面的on_trade_response 不会捕获这个成交所触发的成交回调。
更新关于ptrade的解答,可以关注:
https://ptradeapi.com/hub/data/qa_data.html
可以关注公众号或者星球。
山西证券开通ptrade门槛 万0.854免5 | 山西证券ptrade下载地址
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 458 次浏览 • 2025-12-27 19:00
主要python3.11移除了pandas里的panel格式。导致之前ptrade获取到的3维数据不再兼容当前的最新版本。
山西证券ptrade下载地址:
山西证券ptrade实盘下载链接
山西证券ptrade仿真模拟下载链接
其实,个人感觉,现在的ptrade更加好用,不用再考虑不同的数据输入,来判读不同的返回结果。
get_history 函数,无论什么情况,都是返回dataframe格式。字段也是完全统一了
使用 sub_df = df[df['code']=code]
就能获取不同的输入格式。
换以前,如果传入的是一个字段 get_history(fields='close') 和get_history(fields=['low','close'])
返回的格式还得区分处理。
现在统一了,更加好用了。
目前山西证券ptrade开通门槛很低,入金5w就可以开通,而且费率是免5,万0.854免5,0.1起步,目前这么多券商里面是属于最低的了。
需要的朋友可以联系微信公众号开通:
查看全部
主要python3.11移除了pandas里的panel格式。导致之前ptrade获取到的3维数据不再兼容当前的最新版本。
山西证券ptrade下载地址:
山西证券ptrade实盘下载链接
山西证券ptrade仿真模拟下载链接
其实,个人感觉,现在的ptrade更加好用,不用再考虑不同的数据输入,来判读不同的返回结果。
get_history 函数,无论什么情况,都是返回dataframe格式。字段也是完全统一了
使用 sub_df = df[df['code']=code]
就能获取不同的输入格式。
换以前,如果传入的是一个字段 get_history(fields='close') 和get_history(fields=['low','close'])
返回的格式还得区分处理。
现在统一了,更加好用了。
目前山西证券ptrade开通门槛很低,入金5w就可以开通,而且费率是免5,万0.854免5,0.1起步,目前这么多券商里面是属于最低的了。
需要的朋友可以联系微信公众号开通:

东莞证券ptrade的编程功能模块被移除了
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 552 次浏览 • 2025-11-23 13:17
本来门槛不太高,作为备用也是不错的.
也不知道上面领导怎么想的. 把编程模块移走了.
目前就剩ptrade上内置的一些基础功能
无法通过python编程实现自己的自定义策略.
有点可惜.
查看全部
ptrade不支持reits,连持仓已有的也读取不出来
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 446 次浏览 • 2025-11-18 12:45
然后调用get_positions获取持仓,居然为空。
开始以为我程序代码后缀有问题,百思不得其解,反复检查之后,突然想起目前的ptrade不支持reits品种。
但没想到居然这个持仓代码都读取不到。。。
查看全部
然后调用get_positions获取持仓,居然为空。
开始以为我程序代码后缀有问题,百思不得其解,反复检查之后,突然想起目前的ptrade不支持reits品种。
但没想到居然这个持仓代码都读取不到。。。
指数回来了,收益没回来!十年前 4000 点买入,多少股票至今没回本?
股票 • 李魔佛 发表了文章 • 0 个评论 • 695 次浏览 • 2025-10-29 08:58
可惜只持续了40分钟,收盘时跌回到3988点。
不过本轮并不是全面的牛市,没在暴涨板块的股民自嘲:
8000点的农行,6000点的科技,4000点的红利,剩下的全是2000点的难兄难弟。
十年光阴荏苒,上证指数上一次收盘价超过 4000 点是在 2015 年 7 月 24 日,当日收于 4070.91 点。
指数重回4000点,而又有多少股票的股价能够重回十年前4000点的时候股价呢?或者说还有多少股票依然还在以前4000点的时候的股价还低呢?
问了一下豆包,deepseek这个问题,结果说找不到现成的数据,无法分析。
迅速在ptrade上写个代码查询一下。
2015 年 7 月 24 日 市场有有沪深股票2783只,而当时的2783只股票今天依然在市场交易的有2567只。大约有216只股票退市(少数是合并、收购,大部分原因是退市)。
也就是十年前扔飞镖随便买一只股票,会有7.7%的概率买到退市股,并且是那种目前彻底退出的沪深板块,流入到退市板块。
下面列出期间的退市股(含收购合并),数据较多,对细节不感兴趣的可直接滚动到最后。
依然在交易的排除掉7只停牌的股票,有2559只存续交易的股票。
跌幅榜的排名。
不少跌幅达到80%-90%,不少是当时的牛股,全通交易,怡亚通,ST易购(苏宁易购),康美药业,万达电影等等。
跌幅为0的排到1662名了。数据太长,贴不下了。
也就是上证指数回到上一次的4000点,有1661只个股依然没有回到当时的股价,占比达到了64.9%。(注意,上面的股价是前复权的价格,是已经包含了分红的全收益价格。)
看完这个数据整个人都不太好受了,股民的十年青春在股海沉浮,最终超过一半的个股还没有回到牛市的起点。 查看全部
可惜只持续了40分钟,收盘时跌回到3988点。
不过本轮并不是全面的牛市,没在暴涨板块的股民自嘲:
8000点的农行,6000点的科技,4000点的红利,剩下的全是2000点的难兄难弟。
十年光阴荏苒,上证指数上一次收盘价超过 4000 点是在 2015 年 7 月 24 日,当日收于 4070.91 点。
指数重回4000点,而又有多少股票的股价能够重回十年前4000点的时候股价呢?或者说还有多少股票依然还在以前4000点的时候的股价还低呢?
问了一下豆包,deepseek这个问题,结果说找不到现成的数据,无法分析。
迅速在ptrade上写个代码查询一下。
2015 年 7 月 24 日 市场有有沪深股票2783只,而当时的2783只股票今天依然在市场交易的有2567只。大约有216只股票退市(少数是合并、收购,大部分原因是退市)。
也就是十年前扔飞镖随便买一只股票,会有7.7%的概率买到退市股,并且是那种目前彻底退出的沪深板块,流入到退市板块。
下面列出期间的退市股(含收购合并),数据较多,对细节不感兴趣的可直接滚动到最后。
依然在交易的排除掉7只停牌的股票,有2559只存续交易的股票。
跌幅榜的排名。
不少跌幅达到80%-90%,不少是当时的牛股,全通交易,怡亚通,ST易购(苏宁易购),康美药业,万达电影等等。
跌幅为0的排到1662名了。数据太长,贴不下了。
也就是上证指数回到上一次的4000点,有1661只个股依然没有回到当时的股价,占比达到了64.9%。(注意,上面的股价是前复权的价格,是已经包含了分红的全收益价格。)
看完这个数据整个人都不太好受了,股民的十年青春在股海沉浮,最终超过一半的个股还没有回到牛市的起点。
东北证券QMT miniQMT (NET专业版)万0.854免5
QMT • 李魔佛 发表了文章 • 0 个评论 • 1078 次浏览 • 2025-10-16 23:05
东北证券的qmt名称叫NET专业版。
东北证券的QMT支持python和vba 两种语言。
开通后可加入量化技术群。
扫码联系开通。 查看全部
ptrade支持北交所股票量化交易吗?
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 878 次浏览 • 2025-10-09 11:36
文档里面搜不到内容,股票后缀使用 北交所代码+ SS后缀,或者 .BJ 后缀,获取不到任何的数据。
ptrade api 文档:
https://ptradeapi.com
查看全部
文档里面搜不到内容,股票后缀使用 北交所代码+ SS后缀,或者 .BJ 后缀,获取不到任何的数据。
ptrade api 文档:
https://ptradeapi.com
山西证券Ptrade 万一免五开户
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1078 次浏览 • 2025-09-26 01:44
本身山西证券的ptrade开通门槛不高, 入金5万就能开通ptrade,永久使用,不收费.
不过默认费率比较高, 也不免5.
不过入金5w后,是可以调到万一免5的.
因为高顿教育的量化课程使用的是山西证券作为 实例,所以也有不少的群众基础.
需要的可以扫码关注开通.
查看全部
Ptrade ETF轮动,收益率秒杀白云飞
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1118 次浏览 • 2025-09-11 20:07
如果抛去924行情,和今年的创业板+科创板,CPO,芯片,那么它的收益率是负的。漫长的3年回撤期,除非是闲钱很久不用的钱,否则谁也无法忍受这么长的回撤。
而ETF日,周净增轮动+动量+板块温度计+评分因子,可以做到超高的收益率。
使用ptrade进行回测。
使用ptrade进行实盘。
TBC
查看全部
ptrade计算EMA指标,对比同花顺
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1235 次浏览 • 2025-09-01 23:04
初始值计算:
标准 EMA:以周期内的第一个 SMA(简单移动平均)作为初始值
同花顺 EMA:直接以第一根 K 线的收盘价作为初始 EMA 值
计算逻辑:
两者在后续递推计算上一致,均使用公式:
plaintext
EMA(今日) = (2/(周期+1)) × 收盘价(今日) + (1-2/(周期+1)) × EMA(昨日)
实际影响:
由于初始值不同,在计算初期(小于周期长度的 K 线数量时),两种方法结果差异较大;随着数据增多,差异会逐渐缩小。
使用时只需将你的收盘价数据整理成 pandas Series 格式,调用该函数即可得到与同花顺软件完全一致的 EMA 计算结果,便于策略回测和指标对比。
import pandas as pd
def tonghuashun_ema(close_series, period):
"""
按照同花顺的算法计算EMA指标
参数:
close_series: pd.Series,包含收盘价数据,索引为日期
period: int,EMA周期(如5、10、50等)
返回:
pd.Series,计算得到的EMA指标序列
"""
if len(close_series) < 1:
return pd.Series(dtype='float64')
# 平滑系数
alpha = 2 / (period + 1)
# 初始化EMA序列
ema = pd.Series(index=close_series.index, dtype='float64')
# 同花顺特色:第一根EMA值等于当日收盘价
ema.iloc[0] = close_series.iloc[0]
# 从第二根开始使用递推公式计算
for i in range(1, len(close_series)):
ema.iloc[i] = alpha * close_series.iloc[i] + (1 - alpha) * ema.iloc[i-1]
return ema
# 示例:计算同花顺EMA(12)和EMA(26)(常用的MACD组件)
if __name__ == "__main__":
import numpy as np
# 生成模拟数据(50个交易日收盘价)
dates = pd.date_range(start='2023-01-01', periods=50)
np.random.seed(42) # 固定随机种子,保证结果可复现
close_prices = np.cumsum(np.random.randn(50)) + 100 # 模拟价格波动
close_series = pd.Series(close_prices, index=dates, name='close')
# 计算同花顺EMA(12)和EMA(26)
ema12 = tonghuashun_ema(close_series, 12)
ema26 = tonghuashun_ema(close_series, 26)
# 合并结果并显示
result = pd.DataFrame({
'收盘价': close_series,
'EMA12(同花顺)': ema12,
'EMA26(同花顺)': ema26
})
print("同花顺EMA指标计算结果(前10行):")
print(result.head(10))
print("\n同花顺EMA指标计算结果(最后10行):")
print(result.tail(10))
然后直接把上面代码贴入ptrade,封装成函数,传入日线数据即可使用。
查看全部
初始值计算:
标准 EMA:以周期内的第一个 SMA(简单移动平均)作为初始值
同花顺 EMA:直接以第一根 K 线的收盘价作为初始 EMA 值
计算逻辑:
两者在后续递推计算上一致,均使用公式:
plaintext
EMA(今日) = (2/(周期+1)) × 收盘价(今日) + (1-2/(周期+1)) × EMA(昨日)
实际影响:
由于初始值不同,在计算初期(小于周期长度的 K 线数量时),两种方法结果差异较大;随着数据增多,差异会逐渐缩小。
使用时只需将你的收盘价数据整理成 pandas Series 格式,调用该函数即可得到与同花顺软件完全一致的 EMA 计算结果,便于策略回测和指标对比。
import pandas as pd
def tonghuashun_ema(close_series, period):
"""
按照同花顺的算法计算EMA指标
参数:
close_series: pd.Series,包含收盘价数据,索引为日期
period: int,EMA周期(如5、10、50等)
返回:
pd.Series,计算得到的EMA指标序列
"""
if len(close_series) < 1:
return pd.Series(dtype='float64')
# 平滑系数
alpha = 2 / (period + 1)
# 初始化EMA序列
ema = pd.Series(index=close_series.index, dtype='float64')
# 同花顺特色:第一根EMA值等于当日收盘价
ema.iloc[0] = close_series.iloc[0]
# 从第二根开始使用递推公式计算
for i in range(1, len(close_series)):
ema.iloc[i] = alpha * close_series.iloc[i] + (1 - alpha) * ema.iloc[i-1]
return ema
# 示例:计算同花顺EMA(12)和EMA(26)(常用的MACD组件)
if __name__ == "__main__":
import numpy as np
# 生成模拟数据(50个交易日收盘价)
dates = pd.date_range(start='2023-01-01', periods=50)
np.random.seed(42) # 固定随机种子,保证结果可复现
close_prices = np.cumsum(np.random.randn(50)) + 100 # 模拟价格波动
close_series = pd.Series(close_prices, index=dates, name='close')
# 计算同花顺EMA(12)和EMA(26)
ema12 = tonghuashun_ema(close_series, 12)
ema26 = tonghuashun_ema(close_series, 26)
# 合并结果并显示
result = pd.DataFrame({
'收盘价': close_series,
'EMA12(同花顺)': ema12,
'EMA26(同花顺)': ema26
})
print("同花顺EMA指标计算结果(前10行):")
print(result.head(10))
print("\n同花顺EMA指标计算结果(最后10行):")
print(result.tail(10))
然后直接把上面代码贴入ptrade,封装成函数,传入日线数据即可使用。
申万宏源 Ptrade / QMT/miniQMT 免5 开通
QMT • 李魔佛 发表了文章 • 0 个评论 • 1532 次浏览 • 2025-08-07 19:01
支持QMT,miniQMT和Ptrade。
量化功能应有尽有,是目前为止为数不多的有miniQMT的免5券商。
费率低,ETF,可转债均为万0.5
线上开户,需要的朋友可以扫码联系开通。
查看全部
ptrade获取集合竞价数据
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1371 次浏览 • 2025-08-07 18:48
date = '20250806'
stocks = ['300333.SZ']
data = get_trend_data(date=date, stocks=stocks)
# 返回数据
{'300333.SZ': {'time_stamp': 202508060930,
'hq_px': 14.1,
'wavg_px': 14.1,
'business_amount': 40300,
'business_balance': 568230,
'amount': 0}}
在实盘,回测,研究里面就能够使用
公众号:可转债量化分析
星球
查看全部
ptrade不同券商 数据质量 之 ETF数据质量残次不齐
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1410 次浏览 • 2025-07-23 18:28
etf_list = get_etf_list()
然后在不同的券商上运行。
国盛得到的数据:2025-07-23 16:07:15 - INFO - 公众号:可转债量化分析 ---- start ----
2025-07-23 16:08:00 - INFO - start func
2025-07-23 16:08:00 - INFO - 公众号:可转债量化分析
2025-07-23 16:08:00 - INFO - 660
得到的ETF数据有660只。
同样的代码,放到国金的ptrade上运行,得到 2025-07-23 15:45:10 - INFO - 当前服务器配置为:交易时间段服务器重启后,执行拉起本交易操作
2025-07-23 15:45:12 - INFO - 公众号:可转债量化分析 ---- start ----
2025-07-23 15:46:00 - INFO - start func
2025-07-23 15:46:00 - INFO - 公众号:可转债量化分析
2025-07-23 15:46:00 - INFO - 1043有1000只的ETF。
然后把日志导出到本地,用python求解一下不同的数据
(py11) D:\github\stock_strategy\api_validation>python etf-compare.py
516330.SS
561320.SS
159265.SZ
560980.SS
159813.SZ
159859.SZ
561700.SS
511620.SS
159898.SZ
159969.SZ
512380.SS
159972.SZ
159857.SZ
516300.SS
588200.SS
510180.SS
517520.SS
515680.SS
159618.SZ
159827.SZ
561980.SS
511820.SS
515150.SS
159701.SZ
159743.SZ
159623.SZ
159991.SZ
510660.SS
159681.SZ
159845.SZ
515890.SS
515850.SS
515300.SS
159510.SZ
511920.SS
159805.SZ
159610.SZ
159929.SZ
517170.SS
530800.SS
510630.SS
159535.SZ
561790.SS
159842.SZ
510150.SS
560580.SS
517800.SS
515790.SS
159806.SZ
516530.SS
159873.SZ
159207.SZ
515320.SS
516750.SS
159635.SZ
515290.SS
515030.SS
561130.SS
588150.SS
560680.SS
560280.SS
561570.SS
515760.SS
515900.SS
511090.SS
159643.SZ
588040.SS
159968.SZ
512520.SS
159322.SZ
516520.SS
159841.SZ
159359.SZ
515160.SS
511260.SS
516710.SS
159698.SZ
588230.SS
159786.SZ
562900.SS
159309.SZ
159358.SZ
563800.SS
159677.SZ
159551.SZ
517850.SS
159899.SZ
159862.SZ
159961.SZ
159779.SZ
515580.SS
159836.SZ
510060.SS
515010.SS
159355.SZ
560700.SS
159885.SZ
517880.SS
159864.SZ
159640.SZ
510270.SS
560150.SS
515750.SS
159003.SZ
159748.SZ
515330.SS
159730.SZ
159994.SZ
516290.SS
516080.SS
560510.SS
159005.SZ
159306.SZ
159378.SZ
512960.SS
159680.SZ
159847.SZ
159310.SZ
159587.SZ
588400.SS
515770.SS
159393.SZ
159657.SZ
516220.SS
159575.SZ
560350.SS
159997.SZ
515110.SS
159713.SZ
159880.SZ
159576.SZ
159520.SZ
562360.SS
588930.SS
518660.SS
159669.SZ
159206.SZ
159621.SZ
159928.SZ
159731.SZ
516050.SS
562390.SS
159831.SZ
516510.SS
159913.SZ
159633.SZ
511190.SS
512670.SS
516780.SS
517110.SS
159820.SZ
159690.SZ
159881.SZ
561230.SS
510010.SS
159992.SZ
159666.SZ
159725.SZ
159870.SZ
511010.SS
515060.SS
560860.SS
515100.SS
159993.SZ
512820.SS
159825.SZ
511900.SS
515990.SS
159849.SZ
563330.SS
512240.SS
159974.SZ
159910.SZ
159638.SZ
512890.SS
159641.SZ
159875.SZ
159682.SZ
159796.SZ
159887.SZ
159620.SZ
510880.SS
159225.SZ
159720.SZ
510410.SS
159883.SZ
159931.SZ
159363.SZ
588100.SS
561200.SS
560550.SS
159791.SZ
159229.SZ
159982.SZ
159647.SZ
560610.SS
159386.SZ
159559.SZ
159630.SZ
159795.SZ
511200.SS
512510.SS
561260.SS
159589.SZ
562860.SS
560090.SS
159889.SZ
159707.SZ
588320.SS
159678.SZ
510680.SS
159863.SZ
515980.SS
159543.SZ
510100.SS
159679.SZ
512040.SS
530000.SS
511770.SS
159838.SZ
159553.SZ
159998.SZ
515080.SS
588110.SS
561990.SS
159729.SZ
515120.SS
159739.SZ
159856.SZ
159800.SZ
510020.SS
510650.SS
159909.SZ
517550.SS
515630.SS
159685.SZ
515960.SS
515380.SS
561910.SS
515860.SS
518680.SS
588250.SS
159603.SZ
159339.SZ
159778.SZ
159958.SZ
516120.SS
588090.SS
159781.SZ
562300.SS
159761.SZ
517080.SS
159617.SZ
516060.SS
588680.SS
511580.SS
159521.SZ
159770.SZ
159397.SZ
159888.SZ
159816.SZ
516880.SS
159716.SZ
516910.SS
159209.SZ
588880.SS
562800.SS
515650.SS
561590.SS
159715.SZ
159552.SZ
512280.SS
588830.SS
516790.SS
159656.SZ
588460.SS
561350.SS
511850.SS
516830.SS
515530.SS
517120.SS
159658.SZ
563360.SS
517010.SS
516630.SS
159608.SZ
159959.SZ
563300.SS
563350.SS
516650.SS
561920.SS
561310.SS
516460.SS
512680.SS
159782.SZ
515360.SS
159628.SZ
159629.SZ
560260.SS
512730.SS
588010.SS
159697.SZ
588760.SS
513890.SS
159977.SZ
516500.SS
561500.SS
512220.SS
510550.SS
159555.SZ
588300.SS
530300.SS
159649.SZ
159395.SZ
560560.SS
516950.SS
511810.SS
561330.SS
159732.SZ
511600.SS
562890.SS
516550.SS
159717.SZ
159797.SZ
159970.SZ
561900.SS
561560.SS
159890.SZ
159721.SZ
560190.SS
159366.SZ
515950.SS
511950.SS
159908.SZ
159861.SZ
159517.SZ
159975.SZ
159625.SZ
159830.SZ
510050.SS
159895.SZ
517900.SS
159652.SZ
510990.SS
159811.SZ
159852.SZ
517000.SS
159930.SZ
159840.SZ
515070.SS
511670.SS
159807.SZ
561550.SS
511980.SS
159675.SZ
159611.SZ
560880.SS
515660.SS
560530.SS
511830.SS
159766.SZ
159631.SZ
561190.SS
512150.SS
561950.SS
517360.SS
518880.SS
510850.SS
159768.SZ
159876.SZ
159398.SZ
159865.SZ
515600.SS
159360.SZ
159305.SZ
511970.SS
159671.SZ
588310.SS
516770.SS
159320.SZ
516670.SS
517100.SS
159572.SZ
159839.SZ
159627.SZ
159665.SZ
159790.SZ
563520.SS
511520.SS
511690.SS
561160.SS
159723.SZ
159216.SZ
159886.SZ
510190.SS
159798.SZ
562590.SS
159843.SZ
159867.SZ
159663.SZ
159619.SZ
516090.SS
515090.SS
560080.SS
159869.SZ
159872.SZ
159736.SZ
560900.SS
588950.SS
159855.SZ
516150.SS
516960.SS
159828.SZ
517050.SS
159851.SZ
159645.SZ
511930.SS
159935.SZ
159703.SZ
517200.SS
512020.SS
159787.SZ
588240.SS
159362.SZ
517990.SS
561960.SS
562880.SS
159971.SZ
159760.SZ
159871.SZ
513630.SS
561380.SS
不同的ETF数量: 432这400多只的ETF是在国盛上缺失的。
这数据有点惊人.....
如果要用国盛,可以用国金的把ETF列表导出到txt,然后上传到国盛,然后在程序中读取这个etf列表。
查看全部
etf_list = get_etf_list()
然后在不同的券商上运行。
国盛得到的数据:
2025-07-23 16:07:15 - INFO - 公众号:可转债量化分析 ---- start ----
2025-07-23 16:08:00 - INFO - start func
2025-07-23 16:08:00 - INFO - 公众号:可转债量化分析
2025-07-23 16:08:00 - INFO - 660
得到的ETF数据有660只。
同样的代码,放到国金的ptrade上运行,得到
2025-07-23 15:45:10 - INFO - 当前服务器配置为:交易时间段服务器重启后,执行拉起本交易操作有1000只的ETF。
2025-07-23 15:45:12 - INFO - 公众号:可转债量化分析 ---- start ----
2025-07-23 15:46:00 - INFO - start func
2025-07-23 15:46:00 - INFO - 公众号:可转债量化分析
2025-07-23 15:46:00 - INFO - 1043
然后把日志导出到本地,用python求解一下不同的数据
这400多只的ETF是在国盛上缺失的。
(py11) D:\github\stock_strategy\api_validation>python etf-compare.py
516330.SS
561320.SS
159265.SZ
560980.SS
159813.SZ
159859.SZ
561700.SS
511620.SS
159898.SZ
159969.SZ
512380.SS
159972.SZ
159857.SZ
516300.SS
588200.SS
510180.SS
517520.SS
515680.SS
159618.SZ
159827.SZ
561980.SS
511820.SS
515150.SS
159701.SZ
159743.SZ
159623.SZ
159991.SZ
510660.SS
159681.SZ
159845.SZ
515890.SS
515850.SS
515300.SS
159510.SZ
511920.SS
159805.SZ
159610.SZ
159929.SZ
517170.SS
530800.SS
510630.SS
159535.SZ
561790.SS
159842.SZ
510150.SS
560580.SS
517800.SS
515790.SS
159806.SZ
516530.SS
159873.SZ
159207.SZ
515320.SS
516750.SS
159635.SZ
515290.SS
515030.SS
561130.SS
588150.SS
560680.SS
560280.SS
561570.SS
515760.SS
515900.SS
511090.SS
159643.SZ
588040.SS
159968.SZ
512520.SS
159322.SZ
516520.SS
159841.SZ
159359.SZ
515160.SS
511260.SS
516710.SS
159698.SZ
588230.SS
159786.SZ
562900.SS
159309.SZ
159358.SZ
563800.SS
159677.SZ
159551.SZ
517850.SS
159899.SZ
159862.SZ
159961.SZ
159779.SZ
515580.SS
159836.SZ
510060.SS
515010.SS
159355.SZ
560700.SS
159885.SZ
517880.SS
159864.SZ
159640.SZ
510270.SS
560150.SS
515750.SS
159003.SZ
159748.SZ
515330.SS
159730.SZ
159994.SZ
516290.SS
516080.SS
560510.SS
159005.SZ
159306.SZ
159378.SZ
512960.SS
159680.SZ
159847.SZ
159310.SZ
159587.SZ
588400.SS
515770.SS
159393.SZ
159657.SZ
516220.SS
159575.SZ
560350.SS
159997.SZ
515110.SS
159713.SZ
159880.SZ
159576.SZ
159520.SZ
562360.SS
588930.SS
518660.SS
159669.SZ
159206.SZ
159621.SZ
159928.SZ
159731.SZ
516050.SS
562390.SS
159831.SZ
516510.SS
159913.SZ
159633.SZ
511190.SS
512670.SS
516780.SS
517110.SS
159820.SZ
159690.SZ
159881.SZ
561230.SS
510010.SS
159992.SZ
159666.SZ
159725.SZ
159870.SZ
511010.SS
515060.SS
560860.SS
515100.SS
159993.SZ
512820.SS
159825.SZ
511900.SS
515990.SS
159849.SZ
563330.SS
512240.SS
159974.SZ
159910.SZ
159638.SZ
512890.SS
159641.SZ
159875.SZ
159682.SZ
159796.SZ
159887.SZ
159620.SZ
510880.SS
159225.SZ
159720.SZ
510410.SS
159883.SZ
159931.SZ
159363.SZ
588100.SS
561200.SS
560550.SS
159791.SZ
159229.SZ
159982.SZ
159647.SZ
560610.SS
159386.SZ
159559.SZ
159630.SZ
159795.SZ
511200.SS
512510.SS
561260.SS
159589.SZ
562860.SS
560090.SS
159889.SZ
159707.SZ
588320.SS
159678.SZ
510680.SS
159863.SZ
515980.SS
159543.SZ
510100.SS
159679.SZ
512040.SS
530000.SS
511770.SS
159838.SZ
159553.SZ
159998.SZ
515080.SS
588110.SS
561990.SS
159729.SZ
515120.SS
159739.SZ
159856.SZ
159800.SZ
510020.SS
510650.SS
159909.SZ
517550.SS
515630.SS
159685.SZ
515960.SS
515380.SS
561910.SS
515860.SS
518680.SS
588250.SS
159603.SZ
159339.SZ
159778.SZ
159958.SZ
516120.SS
588090.SS
159781.SZ
562300.SS
159761.SZ
517080.SS
159617.SZ
516060.SS
588680.SS
511580.SS
159521.SZ
159770.SZ
159397.SZ
159888.SZ
159816.SZ
516880.SS
159716.SZ
516910.SS
159209.SZ
588880.SS
562800.SS
515650.SS
561590.SS
159715.SZ
159552.SZ
512280.SS
588830.SS
516790.SS
159656.SZ
588460.SS
561350.SS
511850.SS
516830.SS
515530.SS
517120.SS
159658.SZ
563360.SS
517010.SS
516630.SS
159608.SZ
159959.SZ
563300.SS
563350.SS
516650.SS
561920.SS
561310.SS
516460.SS
512680.SS
159782.SZ
515360.SS
159628.SZ
159629.SZ
560260.SS
512730.SS
588010.SS
159697.SZ
588760.SS
513890.SS
159977.SZ
516500.SS
561500.SS
512220.SS
510550.SS
159555.SZ
588300.SS
530300.SS
159649.SZ
159395.SZ
560560.SS
516950.SS
511810.SS
561330.SS
159732.SZ
511600.SS
562890.SS
516550.SS
159717.SZ
159797.SZ
159970.SZ
561900.SS
561560.SS
159890.SZ
159721.SZ
560190.SS
159366.SZ
515950.SS
511950.SS
159908.SZ
159861.SZ
159517.SZ
159975.SZ
159625.SZ
159830.SZ
510050.SS
159895.SZ
517900.SS
159652.SZ
510990.SS
159811.SZ
159852.SZ
517000.SS
159930.SZ
159840.SZ
515070.SS
511670.SS
159807.SZ
561550.SS
511980.SS
159675.SZ
159611.SZ
560880.SS
515660.SS
560530.SS
511830.SS
159766.SZ
159631.SZ
561190.SS
512150.SS
561950.SS
517360.SS
518880.SS
510850.SS
159768.SZ
159876.SZ
159398.SZ
159865.SZ
515600.SS
159360.SZ
159305.SZ
511970.SS
159671.SZ
588310.SS
516770.SS
159320.SZ
516670.SS
517100.SS
159572.SZ
159839.SZ
159627.SZ
159665.SZ
159790.SZ
563520.SS
511520.SS
511690.SS
561160.SS
159723.SZ
159216.SZ
159886.SZ
510190.SS
159798.SZ
562590.SS
159843.SZ
159867.SZ
159663.SZ
159619.SZ
516090.SS
515090.SS
560080.SS
159869.SZ
159872.SZ
159736.SZ
560900.SS
588950.SS
159855.SZ
516150.SS
516960.SS
159828.SZ
517050.SS
159851.SZ
159645.SZ
511930.SS
159935.SZ
159703.SZ
517200.SS
512020.SS
159787.SZ
588240.SS
159362.SZ
517990.SS
561960.SS
562880.SS
159971.SZ
159760.SZ
159871.SZ
513630.SS
561380.SS
不同的ETF数量: 432
这数据有点惊人.....
如果要用国盛,可以用国金的把ETF列表导出到txt,然后上传到国盛,然后在程序中读取这个etf列表。
长江证券 ptrade 免五 开通门槛
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1910 次浏览 • 2025-07-22 16:57
软件描述:长江证券PTrade交易终端是由恒生电子股份有限公司开发,为服务投资者专业化个性化交易需求而打造的交易终端
功能介绍:
1. 操作便捷:支持闪电下单、一键撤补、一键清仓、批量撤单、全键盘交易等功能
2. 功能丰富:提供策略交易、拐点交易、网格交易、抢单交易、追涨停、盘口扫单、可转债套利、ETF套利、篮子交易等交易工具
3. 量化交易:支持策略单交易,提供完整的策略平台,支持客户做策略研究、策略编写、策略回测和实盘交易
4. 极速交易:支持通过华锐ATP极速柜台、快速交易通道交易
MD5码:16ab7feba617b254c1607320ce69a780
版本:PTrade1.0-Client-V202308-15-000
文件大小:215.2M
文件名:PTrade1.0-Client-V202308-15-000_CY.zip
有2个版本,一个是长江证券ptrade交易终端(极速版),这个可以在上面编写python策略;
一个是Ptrade交易终端(简版),这个只提供了基础的量化工具,比如套利,网格,日内回转交易。不支持python编程功能。所以注意不要开错了哦。
下载链接:
https://downcq.95579.com/jcj/zg/PTrade1.0-Client-V202308-15-000_CY.zip
长期更新站点:
https://ptradeapi.com/
需要开通的朋友可以关注公众号联系: 查看全部
软件描述:长江证券PTrade交易终端是由恒生电子股份有限公司开发,为服务投资者专业化个性化交易需求而打造的交易终端
功能介绍:
1. 操作便捷:支持闪电下单、一键撤补、一键清仓、批量撤单、全键盘交易等功能
2. 功能丰富:提供策略交易、拐点交易、网格交易、抢单交易、追涨停、盘口扫单、可转债套利、ETF套利、篮子交易等交易工具
3. 量化交易:支持策略单交易,提供完整的策略平台,支持客户做策略研究、策略编写、策略回测和实盘交易
4. 极速交易:支持通过华锐ATP极速柜台、快速交易通道交易
MD5码:16ab7feba617b254c1607320ce69a780
版本:PTrade1.0-Client-V202308-15-000
文件大小:215.2M
文件名:PTrade1.0-Client-V202308-15-000_CY.zip
有2个版本,一个是长江证券ptrade交易终端(极速版),这个可以在上面编写python策略;
一个是Ptrade交易终端(简版),这个只提供了基础的量化工具,比如套利,网格,日内回转交易。不支持python编程功能。所以注意不要开错了哦。
下载链接:
https://downcq.95579.com/jcj/zg/PTrade1.0-Client-V202308-15-000_CY.zip
长期更新站点:
https://ptradeapi.com/
需要开通的朋友可以关注公众号联系:
聚宽小市值策略代码转Ptrade实盘代码
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 2458 次浏览 • 2025-07-05 22:35
Mark一下,写完之后分享一下。
聚宽的也不是完全的按照市值,也会根据换手率,涨停,跌停来判断是否卖出。
聚宽源码(部分)
#导入函数库
from jqdata import *
from jqfactor import *
import numpy as np
import pandas as pd
from datetime import time, datetime, timedelta
#初始化函数
def initialize(context):
# 策略参数配置
g.signal = ''
# 开启防未来函数
set_option('avoid_future_data', True)
# 设定基准
set_benchmark('000300.XSHG')
# 交易设置
set_option('use_real_price', True)
set_slippage(FixedSlippage(3/10000))
set_order_cost(OrderCost(open_tax=0, close_tax=0.001, open_commission=2.5/10000, close_commission=2.5/10000, close_today_commission=0, min_commission=5), type='stock')
# 日志设置
log.set_level('order', 'error')
log.set_level('system', 'error')
log.set_level('strategy', 'debug')
# 策略控制参数
g.no_trading_today_signal = False # 是否为可交易日
g.pass_april = True # 是否四月空仓
g.run_stoploss = True # 是否进行止损
g.HV_control = False # 是否进行放量控制
g.HV_duration = 120 # 放量判断周期
g.HV_ratio = 0.9 # 放量判断比例
g.no_trading_hold_signal = False # 是否持有非交易期股票
# 持仓管理参数
g.hold_list = [] # 当前持仓的全部股票
g.yesterday_HL_list = [] # 记录持仓中昨日涨停的股票
g.target_list = [] # 目标买入列表
g.not_buy_again = [] # 不再买入的股票列表
# 交易参数
g.stock_num = 3 # 持仓数量
g.up_price = 100 # 最高买入价格
g.reason_to_sell = '' # 卖出原因
g.stoploss_strategy = 3 # 止损策略:1为止损线止损,2为市场趋势止损,3为联合策略
g.stoploss_limit = 0.91 # 个股止损线
g.stoploss_market = 0.95 # 市场趋势止损参数
g.no_trading_buy = ['600036.XSHG', '518880.XSHG', '600900.XSHG'] # 空仓月份持有
# 设置交易运行时间
run_daily(prepare_stock_list, '9:05')
run_weekly(weekly_adjustment, 2, '10:30')
run_daily(sell_stocks, time='10:00') # 止损函数
run_daily(trade_afternoon, time='14:25') # 检查持仓中的涨停股是否需要卖出
run_daily(trade_afternoon, time='14:55') # 检查持仓中的涨停股是否需要卖出
run_daily(close_account, '14:50')
转换后的Ptrade实盘源码(部分)
def before_trading_start(context, data):
log.info('================= 盘前运行开始:{} '.format(str(context.blotter.current_dt)))
g.__portfolio = PositionManager()
g.order_set = set()
# g.__lock = threading.Lock()
def remove_st_stock(all_stock_list):
st_dict = get_stock_status(all_stock_list, query_type='ST', query_date=None)
st_list = []
for k, v in st_dict.items():
if v:
st_list.append(k)
return st_list
def remove_halt_stock(all_stock_list):
halt_dict = get_stock_status(all_stock_list, query_type='HALT', query_date=None)
halt_list = []
for k, v in halt_dict.items():
if v:
halt_list.append(k)
return halt_list
def all_codes_in_market():
all_stock_set = set(get_Ashares(date=None))
for ignore_code in IGNORE_MARKET:
market = MARKET_DICT.get(ignore_code)
if market == '科创板':
all_stock_set = all_stock_set - set(filter(lambda x: x.startswith('68'), all_stock_set))
if market == '创业板':
all_stock_set = all_stock_set - set(filter(lambda x: x.startswith('3'), all_stock_set))
return all_stock_set
待续 查看全部
Mark一下,写完之后分享一下。
聚宽的也不是完全的按照市值,也会根据换手率,涨停,跌停来判断是否卖出。
聚宽源码(部分)
#导入函数库
from jqdata import *
from jqfactor import *
import numpy as np
import pandas as pd
from datetime import time, datetime, timedelta
#初始化函数
def initialize(context):
# 策略参数配置
g.signal = ''
# 开启防未来函数
set_option('avoid_future_data', True)
# 设定基准
set_benchmark('000300.XSHG')
# 交易设置
set_option('use_real_price', True)
set_slippage(FixedSlippage(3/10000))
set_order_cost(OrderCost(open_tax=0, close_tax=0.001, open_commission=2.5/10000, close_commission=2.5/10000, close_today_commission=0, min_commission=5), type='stock')
# 日志设置
log.set_level('order', 'error')
log.set_level('system', 'error')
log.set_level('strategy', 'debug')
# 策略控制参数
g.no_trading_today_signal = False # 是否为可交易日
g.pass_april = True # 是否四月空仓
g.run_stoploss = True # 是否进行止损
g.HV_control = False # 是否进行放量控制
g.HV_duration = 120 # 放量判断周期
g.HV_ratio = 0.9 # 放量判断比例
g.no_trading_hold_signal = False # 是否持有非交易期股票
# 持仓管理参数
g.hold_list = [] # 当前持仓的全部股票
g.yesterday_HL_list = [] # 记录持仓中昨日涨停的股票
g.target_list = [] # 目标买入列表
g.not_buy_again = [] # 不再买入的股票列表
# 交易参数
g.stock_num = 3 # 持仓数量
g.up_price = 100 # 最高买入价格
g.reason_to_sell = '' # 卖出原因
g.stoploss_strategy = 3 # 止损策略:1为止损线止损,2为市场趋势止损,3为联合策略
g.stoploss_limit = 0.91 # 个股止损线
g.stoploss_market = 0.95 # 市场趋势止损参数
g.no_trading_buy = ['600036.XSHG', '518880.XSHG', '600900.XSHG'] # 空仓月份持有
# 设置交易运行时间
run_daily(prepare_stock_list, '9:05')
run_weekly(weekly_adjustment, 2, '10:30')
run_daily(sell_stocks, time='10:00') # 止损函数
run_daily(trade_afternoon, time='14:25') # 检查持仓中的涨停股是否需要卖出
run_daily(trade_afternoon, time='14:55') # 检查持仓中的涨停股是否需要卖出
run_daily(close_account, '14:50')
转换后的Ptrade实盘源码(部分)
def before_trading_start(context, data):
log.info('================= 盘前运行开始:{} '.format(str(context.blotter.current_dt)))
g.__portfolio = PositionManager()
g.order_set = set()
# g.__lock = threading.Lock()
def remove_st_stock(all_stock_list):
st_dict = get_stock_status(all_stock_list, query_type='ST', query_date=None)
st_list = []
for k, v in st_dict.items():
if v:
st_list.append(k)
return st_list
def remove_halt_stock(all_stock_list):
halt_dict = get_stock_status(all_stock_list, query_type='HALT', query_date=None)
halt_list = []
for k, v in halt_dict.items():
if v:
halt_list.append(k)
return halt_list
def all_codes_in_market():
all_stock_set = set(get_Ashares(date=None))
for ignore_code in IGNORE_MARKET:
market = MARKET_DICT.get(ignore_code)
if market == '科创板':
all_stock_set = all_stock_set - set(filter(lambda x: x.startswith('68'), all_stock_set))
if market == '创业板':
all_stock_set = all_stock_set - set(filter(lambda x: x.startswith('3'), all_stock_set))
return all_stock_set
待续
国盛Ptrade get_Ashare函数返回为空
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1289 次浏览 • 2025-07-04 12:22
在实盘中,运行下面代码:
# author: 公众号:可转债量化分析
import datetime
def initialize(context):
# 初始化策略
pass
def before_trading_start(context, data):
log.info('盘前函数运行')
previous_tradeing_func(context) # 执行盘前函数
def previous_tradeing_func(context):
all_stock_set = get_Ashares(date=None)
print(all_stock_set)
def handle_data(context, data):
pass
运行结果:
2025-07-04 12:18:10 - INFO - 盘前函数运行
2025-07-04 12:18:10 - INFO - []
数据的是一个空的list.......
一个十分基础的数据。
反馈了几年,依然如是。。
还是多开几家,多对比。各有各的优势。 查看全部
在实盘中,运行下面代码:
# author: 公众号:可转债量化分析
import datetime
def initialize(context):
# 初始化策略
pass
def before_trading_start(context, data):
log.info('盘前函数运行')
previous_tradeing_func(context) # 执行盘前函数
def previous_tradeing_func(context):
all_stock_set = get_Ashares(date=None)
print(all_stock_set)
def handle_data(context, data):
pass
运行结果:
2025-07-04 12:18:10 - INFO - 盘前函数运行
2025-07-04 12:18:10 - INFO - []
数据的是一个空的list.......
一个十分基础的数据。
反馈了几年,依然如是。。
还是多开几家,多对比。各有各的优势。
谁说ptrade代码不安全容易泄露的?
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1757 次浏览 • 2025-07-03 11:52
实际上现在的ptrade可以对策略进行加密
可以对你的策略进行加密下载,然后把策略删除了,然后在选择上传策略。
然后策略上传之后,你是无法看到具体代码的了,只能选择启动,删除策略。
连日志里面的打印数据也不会输出。
只会显示买入 卖出 的信息。
大大的提高了策略的安全性。
需要开通ptrade的读者朋友,可以关注公众号联系:
低佣 - 低门槛,提供 技术支持
查看全部
ptrade查看日志报错:远程服务器返回错误: (502) 错误的网关
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1271 次浏览 • 2025-06-30 18:59
访问这个API的时候就已经报错。
502异常代码,是服务器端的报错。和本地无关。
有时候能够正常查询到日志,但大部分时候查询日志的时候就出现上面的502异常。
揪心,就不能买多几台服务器么.....
查看全部
Ptrade获取的L2逐笔数据和同花顺的逐笔数据对不上的原因
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1522 次浏览 • 2025-06-12 16:40
后面有群友 发现了问题。
国泰海通支持Ptrade,万一免5
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1815 次浏览 • 2025-06-06 13:33
支持ptrade和qmt,不过没有miniqmt。
费率做到万0.854免5,起步0.01
实盘版下载链接:
https://dl2.app.gtja.com/dzswem/softwareVersion/202504/07/PTrade1.0-Client-V202403-07-005(PTrade).zip
需要开通和调佣的,可以关注公众号联系:
查看全部
支持ptrade和qmt,不过没有miniqmt。
费率做到万0.854免5,起步0.01
实盘版下载链接:
https://dl2.app.gtja.com/dzswem/softwareVersion/202504/07/PTrade1.0-Client-V202403-07-005(PTrade).zip
需要开通和调佣的,可以关注公众号联系:

Ptrade获取L2逐笔数据,免费,券商提供
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 2733 次浏览 • 2025-05-24 00:22
并且还发现居然可以免费使用L2逐笔数据,分时逐笔委托队列等高频毫秒级的数据
Ptrade接口文档已更新: https://ptradeapi.com
Python 3.5是2015 年发布,Python 3.11是2022 年发布。
性能上来说是有很大的提升,尤其对做回测和高频策略。
如果本身策略很简单或者日线交易的,影响可以忽略不计。
不过这个升级并不是个人可选的,只要你的Ptrade的券商升级了,就只能使用升级后的版本接口格式,旧代码需要做的修改来适配。
性能对比示例(Python 3.5 vs 3.11) By 豆包
以下是部分操作在 Python 3.5 和 3.11 中的性能对比(仅供参考):
并且相应的第三方库版本亦做了升级。
接口变动影响比较大的是pandas在 Python3.11 中,Pandas已不再支持Panel格式。
pandas里的Pannel类型是用于存储三维或以上的矩阵数据。
而升级后就不支持之前的多维行情数据格式。但笔者觉得现在更加统一和简单。
以前不同入参,有时候返回的是dataframe,有时候返回的是panel,比较混乱。
现在统一返回的dataframe. (或者返回dict,可以自己设定)
影响的API有get_history,get_price ,get_individual_transaction ,get_fundamentals等。
比如通过get_history获取的历史日线数据
count = 10
code_list = ['000695.SZ','001367.SZ']
df = get_history(count, frequency='1d', field=['open','close'], security_list=code_list, fq=None, include=False, fill='nan',is_dict=False)
print(type(df))
print(df)
返回的dataframe数据格式如下
<class 'pandas.core.frame.DataFrame'>
code open close
2025-05-15 000695.SZ NaN NaN
2025-05-16 000695.SZ NaN NaN
2025-05-19 000695.SZ 10.34 10.34
2025-05-20 000695.SZ 11.37 11.37
2025-05-21 000695.SZ 12.51 12.51
2025-05-22 000695.SZ 13.76 13.76
2025-05-09 001367.SZ 29.89 29.58
2025-05-12 001367.SZ 29.70 29.60
2025-05-13 001367.SZ 30.11 29.96
2025-05-14 001367.SZ 29.96 29.83
2025-05-15 001367.SZ 29.80 30.18
2025-05-16 001367.SZ 30.13 30.39
2025-05-19 001367.SZ 30.46 30.01
2025-05-20 001367.SZ 20.25 20.08
2025-05-21 001367.SZ 20.05 20.70
2025-05-22 001367.SZ 20.98 22.77
如果要提取 000695.SZ的数据,只需要
df[df['code']=='000695.SZ']就可以了。
code open close
2025-05-09 001367.SZ 29.89 29.58
2025-05-12 001367.SZ 29.70 29.60
2025-05-13 001367.SZ 30.11 29.96
2025-05-14 001367.SZ 29.96 29.83
2025-05-15 001367.SZ 29.80 30.18
2025-05-16 001367.SZ 30.13 30.39
2025-05-19 001367.SZ 30.46 30.01
2025-05-20 001367.SZ 20.25 20.08
2025-05-21 001367.SZ 20.05 20.70
2025-05-22 001367.SZ 20.98 22.77
然后dataframe提取收盘价或者开盘价
# 收盘价
df[df['code']=='001367.SZ']['close']
# 开盘价
df[df['code']=='001367.SZ']['open']
再拿收盘价来计算MACD:
# 计算 MACD 值
def MACD(series):
ema_short = series.ewm(span=12).mean()
ema_long = series.ewm(span=26).mean()
macd_series = ema_short - ema_long
return macd_series.iloc[-1]
close_price_series = df[df['code']=='001367.SZ']['close']
macd_val = MACD(close_price_series)
同理get_price,get_individual_transaction ,get_fundamentals与之类似。
并且在get_histroy的入参里面,多了一个is_dict的参数,默认是False,返回的是dataframe数据,如果设置为True,则返回的dict数据。
返回的有序字典(OrderDict)类型数据:(省略了部分类型)
{'001367.SZ', array([(20250509, 29.89, 29.58), (20250512, 29.7 , 29.6 ),
(20250513, 30.11, 29.96), (20250514, 29.96, 29.83),
(20250515, 29.8 , 30.18), (20250516, 30.13, 30.39),
(20250519, 30.46, 30.01), (20250520, 20.25, 20.08),
(20250521, 20.05, 20.7 ), (20250522, 20.98, 22.77)]
}
但感觉这种列表形式下,提取数据反而没有使用dataframe方便和直观,它获取数据时需要用下标提取。
但官网说,返回dict类型数据的速度比DataFrame,Panel类型数据有大幅提升,对速度有要求的,建议使用is_dict=True 读取上述数据格式。
获取L2逐笔数据
L2逐笔委托数据接口函数
get_individual_entrust(stocks=None, data_count=50, start_pos=0, search_direction=1, is_dict=False)
参数:
data_count: 数据条数,默认为50,最大为200(int);
start_pos: 起始位置,默认为0(int);
虽然一次只能获取200条,但配合start_pos游标可遍历获取全部数据。
示例代码:
获取股票001367.SZ封涨停时的最新的逐笔委托行情。
code_list = ['001367.SZ']
df = get_individual_entrust(code_list)
print(df[['business_time','hq_px','business_amount','order_no']])
输出数据如下,因数据列太多,为了美观只取了其中的4列:
时间戳,委托价格,委托数量,委托编号
因为当前已经是收盘状态,是从14:59:57.020往前取50条数据
business_time(时间戳) hq_px(委托价格) business_amount(委托数量) order_no(委托编号)
20250523145702150 24.60 100 32493957
20250523145714840 24.95 100 32505581
20250523145718430 25.05 1000 32509041
20250523145719840 25.05 1000 32510350
20250523145721750 25.05 400 32512000
20250523145727610 25.05 200 32517007
20250523145730270 25.05 400 32519085
20250523145730330 25.04 1600 32519133
20250523145732330 25.05 2900 32520779
20250523145740780 25.05 500 32527204
20250523145743550 25.05 400 32529290
20250523145743810 25.05 200 32529474
20250523145749460 25.05 4300 32533295
20250523145749910 25.05 1000 32533630
20250523145749960 25.05 300 32533666
# 省略若干.....
20250523145926790 25.05 100 32589496
20250523145927480 25.05 1200 32589844
20250523145936090 25.05 200 32594134
20250523145946600 25.05 300 32601758
20250523145946800 25.05 49100 32601865
20250523145950800 25.05 36800 32607381
20250523145953780 25.05 55200 32611265
20250523145954240 25.05 500 32611713
20250523145956830 25.05 55300 32614479
20250523145957020 25.04 8500 32614683
可以看到上面的有些1秒内有多个的委托单,每单的委托量和委托编号。
逐笔成交
同理,L2的逐笔成交数据函数的用法一样,但返回字段不同,成交的时候有成交方向,可以通过程序计算资金流入或流出。
get_individual_transaction(stocks=None, data_count=50, start_pos=0, search_direction=1, is_dict=False)
同样用上面的股票例子获取到的数据如下:
business_time hq_px business_amount business_direction
20250523145648440 0.00 2500 1
20250523145648970 0.00 3200 1
20250523145649300 0.00 100 1
20250523145649370 0.00 900 1
20250523145649880 0.00 1800 1
20250523145650150 0.00 800 1
20250523145650360 0.00 200 1
20250523145650400 0.00 500 1
20250523145650420 0.00 100 1
20250523145652050 0.00 800 1
# 省略若干.....
20250523145659220 0.00 24100 1
20250523145659550 0.00 700 1
20250523145659600 0.00 400 1
20250523150000000 25.05 100 0
20250523150000000 25.05 100 0
20250523150000000 25.05 1600 0
20250523150000000 25.05 800 0
20250523150000000 25.05 1730 0
20250523150000000 25.05 670 0
20250523150000000 25.05 2430 0
20250523150000000 25.05 1200 0
20250523150000000 25.05 9270 0
20250523150000000 25.05 148 0
20250523150000000 25.05 100 0
20250523150000000 25.05 200 0
20250523150000000 25.05 1000 0
20250523150000000 25.05 2000 0
business_direction是 成交方向,0是卖出,1是买入,从而判断该笔成交的资金是流入还是流出。
获取分时成交
get_tick_direction(symbols=None, query_date=0, start_pos=0, search_direction=1, data_count=50, is_dict=False)
这个分时成交函数可获取到当前和历史某个毫秒下,该笔总成交量下有多少笔子订单。
比如用上面的涨停股001367.SZ做示例
最后一刻3点的时候,成交了21348股,里面共有14笔成交。
time_stamp hq_px business_amount business_count
20250523143721000 25.05 100 1
20250523143724000 25.05 200 1
20250523143745000 25.05 444 1
20250523143809000 25.05 10000 2
20250523144024000 25.05 100 1
20250523144048000 25.05 1500 1
20250523144106000 25.05 300 1
20250523144112000 25.05 11692 2
20250523144124000 25.05 100 1
20250523144142000 25.05 100 1
20250523144157000 25.05 100 1
20250523144200000 25.05 2360 1
# 省略若干.....
20250523145415000 25.05 1381 1
20250523145421000 25.05 480 1
20250523145439000 25.05 100 1
20250523145451000 25.05 1753 1
20250523145521000 25.05 5384 3
20250523145539000 25.05 3600 2
20250523145557000 25.05 1000 1
20250523145609000 25.05 400 2
20250523145615000 25.05 100 1
20250523150000000 25.05 21348 14
get_gear_price 获取当前时刻的逐笔委托队列
这个函数的功能:获取委买/卖1 至 委买/卖10 10档行情的价格与委托量,但现在发现它可以获取到委托1档下逐笔委托队列。
比如当前的股票是涨停状态,你下了一笔订单有8888股去排板,那么这个函数可以获取当前委1档下的委托队列(前50名),比如下面返回的数据,可以看到你的8888手排在第9个委托队列,还有前后的单子的逐笔数量。
{'bid_grp': {1: [13.68, 15225900, 4905, {1: 33200, 2: 104800, 3: 1000, 4: 100, 5: 51800, 6: 6300, 7: 777800, 8: 184000, 9: 8888, 10: 100, 11: 600, 12: 141800, 13: 100, 14: 141800, 15: 2700,
16: 900, 17: 58600, 18: 2900, 19: 800, 20: 133800, 21: 2800, 22: 900, 23: 2900, 24: 800, 25: 400, 26: 400, 27: 48200, 28: 51800, 29: 99400, 30: 26600, 31: 81800, 32: 493000, 33: 427300, 34: 27700, 35: 2800, 36: 460500,
37: 170200, 38: 166500, 39: 24100, 40: 800, 41: 29300, 42: 500, 43: 500, 44: 500, 45: 2800, 46: 1300, 47: 61700, 48: 27000, 49: 500, 50: 78900}],
2: [13.67, 30200, 32],
3: [13.66, 11100, 16],
4: [13.65, 134400, 11],
5: [13.64, 8500, 7],
6: [13.63, 1000, 3],
7: [13.62, 200, 2],
8: [13.6, 7300, 17],
9: [13.59, 600, 2],
10: [13.58, 10700, 7]},
# 因为是涨停,所以委卖是空的,挂单就立马成交,委托队列是空的
'offer_grp': {1: [0.0, 0, 0, {}],
2: [0.0, 0, 0],
3: [0.0, 0, 0],
4: [0.0, 0, 0],
5: [0.0, 0, 0],
6: [0.0, 0, 0],
7: [0.0, 0, 0],
8: [0.0, 0, 0],
9: [0.0, 0, 0],
10: [0.0, 0, 0]}
}
所以这次ptrade的升级除了python版本的升级,还带来了更多粒度的数据,有利于高频策略的开发。
还有一些新功能的函数就等下次继续更新,记得点赞关注+收藏哦~
待续......
关注公众号: 查看全部
并且还发现居然可以免费使用L2逐笔数据,分时逐笔委托队列等高频毫秒级的数据
Ptrade接口文档已更新: https://ptradeapi.com
Python 3.5是2015 年发布,Python 3.11是2022 年发布。
性能上来说是有很大的提升,尤其对做回测和高频策略。
如果本身策略很简单或者日线交易的,影响可以忽略不计。
不过这个升级并不是个人可选的,只要你的Ptrade的券商升级了,就只能使用升级后的版本接口格式,旧代码需要做的修改来适配。
性能对比示例(Python 3.5 vs 3.11) By 豆包
以下是部分操作在 Python 3.5 和 3.11 中的性能对比(仅供参考):
并且相应的第三方库版本亦做了升级。
接口变动影响比较大的是pandas在 Python3.11 中,Pandas已不再支持Panel格式。
pandas里的Pannel类型是用于存储三维或以上的矩阵数据。
而升级后就不支持之前的多维行情数据格式。但笔者觉得现在更加统一和简单。
以前不同入参,有时候返回的是dataframe,有时候返回的是panel,比较混乱。
现在统一返回的dataframe. (或者返回dict,可以自己设定)
影响的API有get_history,get_price ,get_individual_transaction ,get_fundamentals等。
比如通过get_history获取的历史日线数据
count = 10
code_list = ['000695.SZ','001367.SZ']
df = get_history(count, frequency='1d', field=['open','close'], security_list=code_list, fq=None, include=False, fill='nan',is_dict=False)
print(type(df))
print(df)
返回的dataframe数据格式如下
<class 'pandas.core.frame.DataFrame'>
code open close
2025-05-15 000695.SZ NaN NaN
2025-05-16 000695.SZ NaN NaN
2025-05-19 000695.SZ 10.34 10.34
2025-05-20 000695.SZ 11.37 11.37
2025-05-21 000695.SZ 12.51 12.51
2025-05-22 000695.SZ 13.76 13.76
2025-05-09 001367.SZ 29.89 29.58
2025-05-12 001367.SZ 29.70 29.60
2025-05-13 001367.SZ 30.11 29.96
2025-05-14 001367.SZ 29.96 29.83
2025-05-15 001367.SZ 29.80 30.18
2025-05-16 001367.SZ 30.13 30.39
2025-05-19 001367.SZ 30.46 30.01
2025-05-20 001367.SZ 20.25 20.08
2025-05-21 001367.SZ 20.05 20.70
2025-05-22 001367.SZ 20.98 22.77
如果要提取 000695.SZ的数据,只需要
df[df['code']=='000695.SZ']就可以了。
code open close
2025-05-09 001367.SZ 29.89 29.58
2025-05-12 001367.SZ 29.70 29.60
2025-05-13 001367.SZ 30.11 29.96
2025-05-14 001367.SZ 29.96 29.83
2025-05-15 001367.SZ 29.80 30.18
2025-05-16 001367.SZ 30.13 30.39
2025-05-19 001367.SZ 30.46 30.01
2025-05-20 001367.SZ 20.25 20.08
2025-05-21 001367.SZ 20.05 20.70
2025-05-22 001367.SZ 20.98 22.77
然后dataframe提取收盘价或者开盘价
# 收盘价
df[df['code']=='001367.SZ']['close']
# 开盘价
df[df['code']=='001367.SZ']['open']
再拿收盘价来计算MACD:
# 计算 MACD 值
def MACD(series):
ema_short = series.ewm(span=12).mean()
ema_long = series.ewm(span=26).mean()
macd_series = ema_short - ema_long
return macd_series.iloc[-1]
close_price_series = df[df['code']=='001367.SZ']['close']
macd_val = MACD(close_price_series)
同理get_price,get_individual_transaction ,get_fundamentals与之类似。
并且在get_histroy的入参里面,多了一个is_dict的参数,默认是False,返回的是dataframe数据,如果设置为True,则返回的dict数据。
返回的有序字典(OrderDict)类型数据:(省略了部分类型)
{'001367.SZ', array([(20250509, 29.89, 29.58), (20250512, 29.7 , 29.6 ),
(20250513, 30.11, 29.96), (20250514, 29.96, 29.83),
(20250515, 29.8 , 30.18), (20250516, 30.13, 30.39),
(20250519, 30.46, 30.01), (20250520, 20.25, 20.08),
(20250521, 20.05, 20.7 ), (20250522, 20.98, 22.77)]
}但感觉这种列表形式下,提取数据反而没有使用dataframe方便和直观,它获取数据时需要用下标提取。
但官网说,返回dict类型数据的速度比DataFrame,Panel类型数据有大幅提升,对速度有要求的,建议使用is_dict=True 读取上述数据格式。
获取L2逐笔数据
L2逐笔委托数据接口函数
get_individual_entrust(stocks=None, data_count=50, start_pos=0, search_direction=1, is_dict=False)
参数:
data_count: 数据条数,默认为50,最大为200(int);
start_pos: 起始位置,默认为0(int);
虽然一次只能获取200条,但配合start_pos游标可遍历获取全部数据。
示例代码:
获取股票001367.SZ封涨停时的最新的逐笔委托行情。
code_list = ['001367.SZ']
df = get_individual_entrust(code_list)
print(df[['business_time','hq_px','business_amount','order_no']])
输出数据如下,因数据列太多,为了美观只取了其中的4列:
时间戳,委托价格,委托数量,委托编号
因为当前已经是收盘状态,是从14:59:57.020往前取50条数据
business_time(时间戳) hq_px(委托价格) business_amount(委托数量) order_no(委托编号)
20250523145702150 24.60 100 32493957
20250523145714840 24.95 100 32505581
20250523145718430 25.05 1000 32509041
20250523145719840 25.05 1000 32510350
20250523145721750 25.05 400 32512000
20250523145727610 25.05 200 32517007
20250523145730270 25.05 400 32519085
20250523145730330 25.04 1600 32519133
20250523145732330 25.05 2900 32520779
20250523145740780 25.05 500 32527204
20250523145743550 25.05 400 32529290
20250523145743810 25.05 200 32529474
20250523145749460 25.05 4300 32533295
20250523145749910 25.05 1000 32533630
20250523145749960 25.05 300 32533666
# 省略若干.....
20250523145926790 25.05 100 32589496
20250523145927480 25.05 1200 32589844
20250523145936090 25.05 200 32594134
20250523145946600 25.05 300 32601758
20250523145946800 25.05 49100 32601865
20250523145950800 25.05 36800 32607381
20250523145953780 25.05 55200 32611265
20250523145954240 25.05 500 32611713
20250523145956830 25.05 55300 32614479
20250523145957020 25.04 8500 32614683
可以看到上面的有些1秒内有多个的委托单,每单的委托量和委托编号。
逐笔成交
同理,L2的逐笔成交数据函数的用法一样,但返回字段不同,成交的时候有成交方向,可以通过程序计算资金流入或流出。
get_individual_transaction(stocks=None, data_count=50, start_pos=0, search_direction=1, is_dict=False)
同样用上面的股票例子获取到的数据如下:
business_time hq_px business_amount business_direction
20250523145648440 0.00 2500 1
20250523145648970 0.00 3200 1
20250523145649300 0.00 100 1
20250523145649370 0.00 900 1
20250523145649880 0.00 1800 1
20250523145650150 0.00 800 1
20250523145650360 0.00 200 1
20250523145650400 0.00 500 1
20250523145650420 0.00 100 1
20250523145652050 0.00 800 1
# 省略若干.....
20250523145659220 0.00 24100 1
20250523145659550 0.00 700 1
20250523145659600 0.00 400 1
20250523150000000 25.05 100 0
20250523150000000 25.05 100 0
20250523150000000 25.05 1600 0
20250523150000000 25.05 800 0
20250523150000000 25.05 1730 0
20250523150000000 25.05 670 0
20250523150000000 25.05 2430 0
20250523150000000 25.05 1200 0
20250523150000000 25.05 9270 0
20250523150000000 25.05 148 0
20250523150000000 25.05 100 0
20250523150000000 25.05 200 0
20250523150000000 25.05 1000 0
20250523150000000 25.05 2000 0
business_direction是 成交方向,0是卖出,1是买入,从而判断该笔成交的资金是流入还是流出。
获取分时成交
get_tick_direction(symbols=None, query_date=0, start_pos=0, search_direction=1, data_count=50, is_dict=False)
这个分时成交函数可获取到当前和历史某个毫秒下,该笔总成交量下有多少笔子订单。
比如用上面的涨停股001367.SZ做示例
最后一刻3点的时候,成交了21348股,里面共有14笔成交。
time_stamp hq_px business_amount business_count
20250523143721000 25.05 100 1
20250523143724000 25.05 200 1
20250523143745000 25.05 444 1
20250523143809000 25.05 10000 2
20250523144024000 25.05 100 1
20250523144048000 25.05 1500 1
20250523144106000 25.05 300 1
20250523144112000 25.05 11692 2
20250523144124000 25.05 100 1
20250523144142000 25.05 100 1
20250523144157000 25.05 100 1
20250523144200000 25.05 2360 1
# 省略若干.....
20250523145415000 25.05 1381 1
20250523145421000 25.05 480 1
20250523145439000 25.05 100 1
20250523145451000 25.05 1753 1
20250523145521000 25.05 5384 3
20250523145539000 25.05 3600 2
20250523145557000 25.05 1000 1
20250523145609000 25.05 400 2
20250523145615000 25.05 100 1
20250523150000000 25.05 21348 14
get_gear_price 获取当前时刻的逐笔委托队列
这个函数的功能:获取委买/卖1 至 委买/卖10 10档行情的价格与委托量,但现在发现它可以获取到委托1档下逐笔委托队列。
比如当前的股票是涨停状态,你下了一笔订单有8888股去排板,那么这个函数可以获取当前委1档下的委托队列(前50名),比如下面返回的数据,可以看到你的8888手排在第9个委托队列,还有前后的单子的逐笔数量。
{'bid_grp': {1: [13.68, 15225900, 4905, {1: 33200, 2: 104800, 3: 1000, 4: 100, 5: 51800, 6: 6300, 7: 777800, 8: 184000, 9: 8888, 10: 100, 11: 600, 12: 141800, 13: 100, 14: 141800, 15: 2700,
16: 900, 17: 58600, 18: 2900, 19: 800, 20: 133800, 21: 2800, 22: 900, 23: 2900, 24: 800, 25: 400, 26: 400, 27: 48200, 28: 51800, 29: 99400, 30: 26600, 31: 81800, 32: 493000, 33: 427300, 34: 27700, 35: 2800, 36: 460500,
37: 170200, 38: 166500, 39: 24100, 40: 800, 41: 29300, 42: 500, 43: 500, 44: 500, 45: 2800, 46: 1300, 47: 61700, 48: 27000, 49: 500, 50: 78900}],
2: [13.67, 30200, 32],
3: [13.66, 11100, 16],
4: [13.65, 134400, 11],
5: [13.64, 8500, 7],
6: [13.63, 1000, 3],
7: [13.62, 200, 2],
8: [13.6, 7300, 17],
9: [13.59, 600, 2],
10: [13.58, 10700, 7]},
# 因为是涨停,所以委卖是空的,挂单就立马成交,委托队列是空的
'offer_grp': {1: [0.0, 0, 0, {}],
2: [0.0, 0, 0],
3: [0.0, 0, 0],
4: [0.0, 0, 0],
5: [0.0, 0, 0],
6: [0.0, 0, 0],
7: [0.0, 0, 0],
8: [0.0, 0, 0],
9: [0.0, 0, 0],
10: [0.0, 0, 0]}
}所以这次ptrade的升级除了python版本的升级,还带来了更多粒度的数据,有利于高频策略的开发。
还有一些新功能的函数就等下次继续更新,记得点赞关注+收藏哦~
待续......
关注公众号:
ptrade的python版本升级到3.11, 部分数据返回格式也改变了,无语
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1743 次浏览 • 2025-05-07 14:22
返回数据可以为dataframe,也可以为dict。
为python3.5会根据数据入参不同,返回dataframe,pannel
而新的函数返回,只有dataframe,当然这很好。只是以前的代码需要改动做兼容。
而修改的地方不止这一处。
查看全部
Ptrade LOF跌停抄底T+0 程序
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 1696 次浏览 • 2025-04-29 09:02
$黄金主题LOF(SZ161116)$
$港股小盘LOF(SZ161124)$
吃早餐的突然想到,快速写了个监控跌停,封单小于X就买入,冲高后止盈卖出,T+0 ptrade 自动交易。这样抄底就不用自己盯盘啦
查看全部
部署Ptrade deepseek编程AI助手
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 3162 次浏览 • 2025-03-22 19:19
(第一行:根本没有ptrade_api这个库)
一个很大的原因,是互联网的残次不齐的语料污染了Deepseek的分析结果。很多不相关的广告或者垃圾内容进入到Deepseek的分析参考对象。三人成虎,Deepseek获取的3个网站都说那个图片里的猫是只老虎,那么它就真的认为它是只老虎。
其实我们可以把API文档作为知识库,提交给Deepseek,让它学习后再替我们编写Ptrade量化程序,代码的完成度会有很大的提升。甚至基本不用修改就可以直接运行。
本文手把手带大家,部署属于自己的量化交易AI编程助手。
当然,不需要高级硬件,也不用付费。0元购。
效果图:
本次依然使用腾讯云提供的Deepseek大模型来运行。
打开链接:https://lke.cloud.tencent.com/
点击大模型知识引擎,如果没有开通就点击开通。个人有免费的token额度可用,不收费。[图片]进去之后点击“新建应用", 名称可以任意填,
在模型这里选择 Deepseek-R1 或者 Deepseek-V3
它支持从本地文档导入和网页URL导入。
我们使用的API文档URL为:https://ptradeapi.com/
但笔者发现,它这个从URL获取数据的工程能力太弱了,获取到的数据只有标题,没有内容。
所以只好手工把网站的内容全选,然后复制保存到本地的word文档。
然后点击导入文档
这里需要几分钟的时间解析,内容审核。因为这个个人定制的知识库,是可以发布出去公开使用的,所以会对问答的内容做审核。
知识库里有对字符限制,免费的可以有个300w的字符可用。本次使用的ptrade api文档用了26w的字符,所以还可以上传更多的个人编写代码库。
知识库的状态变成"待发布"之后,可以点击"发布"按钮。
然后返回到应用配置,可以在提示词里添加一些限制。
比如目前的ptrade是基于python3.5的代码编写的。如果不限制,到时写出来的语法,比如用了诸如f-string的语法,ptrade会报错的。
f'{name}' -- wrong
'{}'.format(name) -- right
如果这里不限制,最后AI写出来的代码大概率在ptrade会报错。
设置完成之后,就完成了你个人专属的ptrade代码AI助手。
现在让它写一个ptrade网格交易程序
至少里面的策略逻辑代码框架整体问题不大,至少不再出现 from ptrade_api import * 这种不存在的包导入的情况。
但细节里还是有些bug的,比如卖出的时候是查enable_amount,而不是amount,因为当日买入的数量不一定能卖出。
run_interval(execute_grid, seconds=3),还有函数的入参不符合。
并没有get_price这个函数,要用get_snapshot
复制到ptrade里面跑下回测验证一下语法。
出现语法错误,依然需要小改一下。run_interval(context,execute_grid, seconds=3) 就好了。
当然上面的代码离实盘依然有一定的距离,依然依赖提问者技术水平,但作为代码辅助工具,对编写代码效率是很大的提升。
一些没写过复杂代码的自媒体经常尬吹,AI完成替代程序员的工作,其实大部分只是满足生成最基础的demo级别的通用任务,对于高度定制的业务,依然依赖提问者的技术广度和深度,对细节的掌控。
同样使用Deepseek,一个家庭主妇和张小龙,张小龙的确可能在完全不写代码的情况下使用Deepseek写出一个微信,而家庭主妇只能用Deepseek绘出一个类似的微信的UI,却无法运行起来。
但AI作为生产力工具,无疑大大减少了很多重复基础性工作,提升效率,让强者恒强。
需要开通Ptrade,QMT,掘金,Matic,BigQuant等量化工具的读者可以在公众号菜单获取联系方式。像BigQuan已经把AI编写实盘和回测的功能集成进去了。将公众号设为星标,第一时间收到笔者的最新文章啦。
查看全部
(第一行:根本没有ptrade_api这个库)
一个很大的原因,是互联网的残次不齐的语料污染了Deepseek的分析结果。很多不相关的广告或者垃圾内容进入到Deepseek的分析参考对象。三人成虎,Deepseek获取的3个网站都说那个图片里的猫是只老虎,那么它就真的认为它是只老虎。
其实我们可以把API文档作为知识库,提交给Deepseek,让它学习后再替我们编写Ptrade量化程序,代码的完成度会有很大的提升。甚至基本不用修改就可以直接运行。
本文手把手带大家,部署属于自己的量化交易AI编程助手。
当然,不需要高级硬件,也不用付费。0元购。
效果图:
本次依然使用腾讯云提供的Deepseek大模型来运行。
打开链接:https://lke.cloud.tencent.com/
点击大模型知识引擎,如果没有开通就点击开通。个人有免费的token额度可用,不收费。[图片]进去之后点击“新建应用", 名称可以任意填,
在模型这里选择 Deepseek-R1 或者 Deepseek-V3
它支持从本地文档导入和网页URL导入。
我们使用的API文档URL为:https://ptradeapi.com/
但笔者发现,它这个从URL获取数据的工程能力太弱了,获取到的数据只有标题,没有内容。
所以只好手工把网站的内容全选,然后复制保存到本地的word文档。
然后点击导入文档
这里需要几分钟的时间解析,内容审核。因为这个个人定制的知识库,是可以发布出去公开使用的,所以会对问答的内容做审核。
知识库里有对字符限制,免费的可以有个300w的字符可用。本次使用的ptrade api文档用了26w的字符,所以还可以上传更多的个人编写代码库。
知识库的状态变成"待发布"之后,可以点击"发布"按钮。
然后返回到应用配置,可以在提示词里添加一些限制。
比如目前的ptrade是基于python3.5的代码编写的。如果不限制,到时写出来的语法,比如用了诸如f-string的语法,ptrade会报错的。
f'{name}' -- wrong
'{}'.format(name) -- right
如果这里不限制,最后AI写出来的代码大概率在ptrade会报错。
设置完成之后,就完成了你个人专属的ptrade代码AI助手。
现在让它写一个ptrade网格交易程序
至少里面的策略逻辑代码框架整体问题不大,至少不再出现 from ptrade_api import * 这种不存在的包导入的情况。
但细节里还是有些bug的,比如卖出的时候是查enable_amount,而不是amount,因为当日买入的数量不一定能卖出。
run_interval(execute_grid, seconds=3),还有函数的入参不符合。
并没有get_price这个函数,要用get_snapshot
复制到ptrade里面跑下回测验证一下语法。
出现语法错误,依然需要小改一下。run_interval(context,execute_grid, seconds=3) 就好了。
当然上面的代码离实盘依然有一定的距离,依然依赖提问者技术水平,但作为代码辅助工具,对编写代码效率是很大的提升。
一些没写过复杂代码的自媒体经常尬吹,AI完成替代程序员的工作,其实大部分只是满足生成最基础的demo级别的通用任务,对于高度定制的业务,依然依赖提问者的技术广度和深度,对细节的掌控。
同样使用Deepseek,一个家庭主妇和张小龙,张小龙的确可能在完全不写代码的情况下使用Deepseek写出一个微信,而家庭主妇只能用Deepseek绘出一个类似的微信的UI,却无法运行起来。
但AI作为生产力工具,无疑大大减少了很多重复基础性工作,提升效率,让强者恒强。
需要开通Ptrade,QMT,掘金,Matic,BigQuant等量化工具的读者可以在公众号菜单获取联系方式。像BigQuan已经把AI编写实盘和回测的功能集成进去了。将公众号设为星标,第一时间收到笔者的最新文章啦。
ptrade支持北交所股票交易吗?
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 2230 次浏览 • 2025-03-12 20:25
可以运行下面的代码:
def initialize(context):
# 初始化策略
g.security = "600570.SS"
set_universe(g.security)
run_daily(context, func,'20:13')
def handle_data(context, data):
print('公众号:可转债量化分析')
def func(context):
info = get_Ashares(date=None)
print(info)
它会打印沪深A股的代码:
北交所有83开头的,或者找一个北交所的股票代码,在输出里面找一下:
[code]2025-03-12 20:13:00 - INFO - ['600000.SS', '600004.SS', '600006.SS', '600007.SS', '600008.SS', '600009.SS', '600010.SS', '600011.SS', '600012.SS', '600015.SS', '600016.SS', '600017.SS', '600018.SS', '600019.SS', '600020.SS', '600021.SS', '600022.SS', '600023.SS', '600025.SS', '600026.SS', '600027.SS', '600028.SS', '600029.SS', '600030.SS', '600031.SS', '600032.SS', '600033.SS', '600035.SS', '600036.SS', '600037.SS', '600038.SS', '600039.SS', '600048.SS', '600050.SS', '600051.SS', '600052.SS', '600053.SS', '600054.SS', '600055.SS', '600056.SS', '600057.SS', '600058.SS', '600059.SS', '600060.SS', '600061.SS', '600062.SS', '600063.SS', '600064.SS', '600066.SS', '600067.SS', '600070.SS', '600071.SS', '600072.SS', '600073.SS', '600075.SS', '600076.SS', '600078.SS', '600079.SS', '600080.SS', '600081.SS', '600082.SS', '600084.SS', '600085.SS', '600088.SS', '600089.SS', '600094.SS', '600095.SS', '600096.SS', '600097.SS', '600098.SS', '600099.SS', '600100.SS', '600101.SS', '600103.SS', '600104.SS', '600105.SS', '600106.SS', '600107.SS', '600108.SS', '600109.SS', '600110.SS', '600111.SS', '600113.SS', '600114.SS', '600115.SS', '600116.SS', '600117.SS', '600118.SS', '600119.SS', '600120.SS', '600121.SS', '600123.SS', '600125.SS', '600126.SS', '600127.SS', '600128.SS', '600129.SS', '600130.SS', '600131.SS', '600132.SS', '600133.SS', '600135.SS', '600136.SS', '600137.SS', '600138.SS', '600141.SS', '600143.SS', '600148.SS', '600149.SS', '600150.SS', '600151.SS', '600152.SS', '600153.SS', '600155.SS', '600156.SS', '600157.SS', '600158.SS', '600159.SS', '600160.SS', '600161.SS', '600162.SS', '600163.SS', '600165.SS', '600166.SS', '600167.SS', '600168.SS', '600169.SS', '600170.SS', '600171.SS', '600172.SS', '600173.SS', '600176.SS', '600177.SS', '600178.SS', '600179.SS', '600180.SS', '600182.SS', '600183.SS', '600184.SS', '600185.SS', '600186.SS', '600187.SS', '600188.SS', '600189.SS', '600190.SS', '600191.SS', '600192.SS', '600193.SS', '600195.SS', '600196.SS', '600197.SS', '600198.SS', '600199.SS', '600200.SS', '600201.SS', '600202.SS', '600203.SS', '600206.SS', '600207.SS', '600208.SS', '600210.SS', '600211.SS', '600212.SS', '600215.SS', '600216.SS', '600217.SS', '600218.SS', '600219.SS', '600221.SS', '600222.SS', '600223.SS', '600226.SS', '600227.SS', '600228.SS', '600229.SS', '600230.SS', '600231.SS', '600232.SS', '600233.SS', '600234.SS', '600235.SS', '600236.SS', '600237.SS', '600238.SS', '600239.SS', '600241.SS', '600243.SS', '600246.SS', '600248.SS', '600249.SS', '600250.SS', '600251.SS', '600252.SS', '600255.SS', '600256.SS', '600257.SS', '600258.SS', '600259.SS', '600261.SS', '600262.SS', '600265.SS', '600266.SS', '600267.SS', '600268.SS', '600269.SS', '600271.SS', '600272.SS', '600273.SS', '600276.SS', '600278.SS', '600279.SS', '600280.SS', '600281.SS', '600282.SS', '600283.SS', '600284.SS', '600285.SS', '600287.SS', '600288.SS', '600289.SS', '600292.SS', '600293.SS', '600295.SS', '600298.SS', '600299.SS', '600300.SS', '600301.SS', '600302.SS', '600303.SS', '600305.SS', '600307.SS', '600308.SS', '600309.SS', '600310.SS', '600312.SS', '600313.SS', '600315.SS', '600316.SS', '600318.SS', '600319.SS', '600320.SS', '600322.SS', '600323.SS', '600325.SS', '600326.SS', '600327.SS', '600328.SS', '600329.SS', '600330.SS', '600331.SS', '600332.SS', '600333.SS', '600335.SS', '600336.SS', '600337.SS', '600338.SS', '600339.SS', '600340.SS', '600343.SS', '600345.SS', '600346.SS', '600348.SS', '600350.SS', '600351.SS', '600352.SS', '600353.SS', '600354.SS', '600355.SS', '600356.SS', '600358.SS', '600359.SS', '600360.SS', '600361.SS', '600362.SS', '600363.SS', '600365.SS', '600366.SS', '600367.SS', '600368.SS', '600369.SS', '600370.SS', '600371.SS', '600372.SS', '600373.SS', '600375.SS', '600376.SS', '600377.SS', '600378.SS', '600379.SS', '600380.SS', '600381.SS', '600382.SS', '600383.SS', '600386.SS', '600387.SS', '600388.SS', '600389.SS', '600390.SS', '600391.SS', '600392.SS', '600395.SS', '600396.SS', '600397.SS', '600398.SS', '600399.SS', '600400.SS', '600403.SS', '600405.SS', '600406.SS', '600408.SS', '600409.SS', '600410.SS', '600415.SS', '600416.SS', '600418.SS', '600419.SS', '600420.SS', '600421.SS', '600422.SS', '600423.SS', '600425.SS', '600426.SS', '600428.SS', '600429.SS', '600433.SS', '600435.SS', '600436.SS', '600438.SS', '600439.SS', '600444.SS', '600446.SS', '600448.SS', '600449.SS', '600452.SS', '600455.SS', '600456.SS', '600458.SS', '600459.SS', '600460.SS', '600461.SS', '600462.SS', '600463.SS', '600467.SS', '600468.SS', '600469.SS', '600470.SS', '600475.SS', '600476.SS', '600477.SS', '600478.SS', '600479.SS', '600480.SS', '600481.SS', '600482.SS', '600483.SS', '600486.SS', '600487.SS', '600488.SS', '600489.SS', '600490.SS', '600491.SS', '600493.SS', '600495.SS', '600496.SS', '600497.SS', '600498.SS', '600499.SS', '600500.SS', '600501.SS', '600502.SS', '600503.SS', '600505.SS', '600506.SS', '600507.SS', '600508.SS', '600509.SS', '600510.SS', '600511.SS', '600512.SS', '600513.SS', '600515.SS', '600516.SS', '600517.SS', '600518.SS', '600519.SS', '600520.SS', '600521.SS', '600522.SS', '600523.SS', '600525.SS', '600526.SS', '600527.SS', '600528.SS', '600529.SS', '600530.SS', '600531.SS', '600533.SS', '600535.SS', '600536.SS', '600537.SS', '600538.SS', '600539.SS', '600540.SS', '600543.SS', '600545.SS', '600546.SS', '600547.SS', '600548.SS', '600549.SS', '600550.SS', '600551.SS', '600552.SS', '600556.SS', '600557.SS', '600558.SS', '600559.SS', '600560.SS', '600561.SS', '600562.SS', '600563.SS', '600566.SS', '600567.SS', '600568.SS', '600569.SS', '600570.SS', '600571.SS', '600572.SS', '600573.SS', '600575.SS', '600576.SS', '600577.SS', '600578.SS', '600579.SS', '600580.SS', '600581.SS', '600582.SS', '600583.SS', '600584.SS', '600585.SS', '600586.SS', '600587.SS', '600588.SS', '600589.SS', '600590.SS', '600592.SS', '600593.SS', '600594.SS', '600595.SS', '600596.SS', '600597.SS', '600598.SS', '600599.SS', '600600.SS', '600601.SS', '600602.SS', '600603.SS', '600604.SS', '600605.SS', '600606.SS', '600608.SS', '600609.SS', '600610.SS', '600611.SS', '600612.SS', '600613.SS', '600615.SS', '600616.SS', '600617.SS', '600618.SS', '600619.SS', '600620.SS', '600621.SS', '600622.SS', '600623.SS', '600624.SS', '600626.SS', '600628.SS', '600629.SS', '600630.SS', '600633.SS', '600635.SS', '600636.SS', '600637.SS', '600638.SS', '600639.SS', '600640.SS', '600641.SS', '600642.SS', '600643.SS', '600644.SS', '600645.SS', '600648.SS', '600649.SS', '600650.SS', '600651.SS', '600653.SS', '600654.SS', '600655.SS', '600657.SS', '600658.SS', '600660.SS', '600661.SS', '600662.SS', '600663.SS', '600664.SS', '600665.SS', '600666.SS', '600667.SS', '600668.SS', '600671.SS', '600673.SS', '600674.SS', '600675.SS', '600676.SS', '600678.SS', '600679.SS', '600681.SS', '600682.SS', '600683.SS', '600684.SS', '600685.SS', '600686.SS', '600688.SS', '600689.SS', '600690.SS', '600691.SS', '600692.SS', '600693.SS', '600694.SS', '600696.SS', '600697.SS', '600698.SS', '600699.SS', '600702.SS', '600703.SS', '600704.SS', '600705.SS', '600706.SS', '600707.SS', '600708.SS', '600710.SS', '600711.SS', '600712.SS', '600713.SS', '600714.SS', '600715.SS', '600716.SS', '600717.SS', '600718.SS', '600719.SS', '600720.SS', '600721.SS', '600722.SS', '600724.SS', '600725.SS', '600726.SS', '600727.SS', '600728.SS', '600729.SS', '600730.SS', '600731.SS', '600732.SS', '600733.SS', '600734.SS', '600735.SS', '600736.SS', '600737.SS', '600738.SS', '600739.SS', '600740.SS', '600741.SS', '600742.SS', '600743.SS', '600744.SS', '600745.SS', '600746.SS', '600748.SS', '600749.SS', '600750.SS', '600751.SS', '600753.SS', '600754.SS', '600755.SS', '600756.SS', '600757.SS', '600758.SS', '600759.SS', '600760.SS', '600761.SS', '600763.SS', '600764.SS', '600765.SS', '600768.SS', '600769.SS', '600770.SS', '600771.SS', '600773.SS', '600774.SS', '600775.SS', '600776.SS', '600777.SS', '600778.SS', '600779.SS', '600780.SS', '600782.SS', '600783.SS', '600784.SS', '600785.SS', '600787.SS', '600789.SS', '600790.SS', '600791.SS', '600792.SS', '600793.SS', '600794.SS', '600795.SS', '600796.SS', '600797.SS', '600798.SS', '600800.SS', '600801.SS', '600802.SS', '600803.SS', '600804.SS', '600805.SS', '600807.SS', '600808.SS', '600809.SS', '600810.SS', '600811.SS', '600812.SS', '600814.SS', '600815.SS', '600816.SS', '600817.SS', '600818.SS', '600819.SS', '600820.SS', '600821.SS', '600822.SS', '600824.SS', '600825.SS', '600826.SS', '600827.SS', '600828.SS', '600829.SS', '600830.SS', '600831.SS', '600833.SS', '600834.SS', '600835.SS', '600838.SS', '600839.SS', '600841.SS', '600843.SS', '600844.SS', '600845.SS', '600846.SS', '600847.SS', '600848.SS', '600850.SS', '600851.SS', '600853.SS', '600854.SS', '600855.SS', '600857.SS', '600858.SS', '600859.SS', '600860.SS', '600861.SS', '600862.SS', '600863.SS', '600864.SS', '600865.SS', '600866.SS', '600867.SS', '600868.SS', '600869.SS', '600871.SS', '600872.SS', '600873.SS', '600874.SS', '600875.SS', '600876.SS', '600877.SS', '600879.SS', '600880.SS', '600881.SS', '600882.SS', '600883.SS', '600884.SS', '600885.SS', '600886.SS', '600887.SS', '600888.SS', '600889.SS', '600892.SS', '600893.SS', '600894.SS', '600895.SS', '600897.SS', '600900.SS', '600901.SS', '600903.SS', '600905.SS', '600906.SS', '600908.SS', '600909.SS', '600916.SS', '600917.SS', '600918.SS', '600919.SS', '600925.SS', '600926.SS', '600927.SS', '600928.SS', '600929.SS', '600933.SS', '600935.SS', '600936.SS', '600938.SS', '600939.SS', '600941.SS', '600955.SS', '600956.SS', '600958.SS', '600959.SS', '600960.SS', '600961.SS', '600962.SS', '600963.SS', '600965.SS', '600966.SS', '600967.SS', '600968.SS', '600969.SS', '600970.SS', '600971.SS', '600973.SS', '600975.SS', '600976.SS', '600977.SS', '600979.SS', '600980.SS', '600981.SS', '600982.SS', '600983.SS', '600984.SS', '600985.SS', '600986.SS', '600987.SS', '600988.SS', '600989.SS', '600990.SS', '600992.SS', '600993.SS', '600995.SS', '600996.SS', '600997.SS', '600998.SS', '600999.SS', '601000.SS', '601001.SS', '601002.SS', '601003.SS', '601005.SS', '601006.SS', '601007.SS', '601008.SS', '601009.SS', '601010.SS', '601011.SS', '601012.SS', '601015.SS', '601016.SS', '601018.SS', '601019.SS', '601020.SS', '601021.SS', '601022.SS', '601028.SS', '601033.SS', '601038.SS', '601058.SS', '601059.SS', '601061.SS', '601065.SS', '601066.SS', '601068.SS', '601069.SS', '601077.SS', '601083.SS', '601086.SS', '601088.SS', '601089.SS', '601096.SS', '601098.SS', '601099.SS', '601100.SS', '601101.SS', '601106.SS', '601107.SS', '601108.SS', '601111.SS', '601113.SS', '601116.SS', '601117.SS', '601118.SS', '601121.SS', '601126.SS', '601127.SS', '601128.SS', '601133.SS', '601136.SS', '601137.SS', '601138.SS', '601139.SS', '601155.SS', '601156.SS', '601158.SS', '601162.SS', '601163.SS', '601166.SS', '601168.SS', '601169.SS', '601177.SS', '601179.SS', '601186.SS', '601187.SS', '601188.SS', '601198.SS', '601199.SS', '601200.SS', '601208.SS', '601211.SS', '601212.SS', '601216.SS', '601218.SS', '601222.SS', '601225.SS', '601226.SS', '601228.SS', '601229.SS', '601231.SS', '601233.SS', '601236.SS', '601238.SS', '601279.SS', '601288.SS', '601298.SS', '601311.SS', '601318.SS', '601319.SS', '601326.SS', '601328.SS', '601330.SS', '601333.SS', '601336.SS', '601339.SS', '601360.SS', '601366.SS', '601368.SS', '601369.SS', '601375.SS', '601377.SS', '601388.SS', '601390.SS', '601398.SS', '601399.SS', '601456.SS', '601500.SS', '601512.SS', '601515.SS', '601518.SS', '601519.SS', '601528.SS', '601555.SS', '601566.SS', '601567.SS', '601568.SS', '601577.SS', '601579.SS', '601588.SS', '601595.SS', '601598.SS', '601599.SS', '601600.SS', '601601.SS', '601606.SS', '601607.SS', '601608.SS', '601609.SS', '601611.SS', '601615.SS', '601616.SS', '601618.SS', '601619.SS', '601628.SS', '601633.SS', '601636.SS', '601658.SS', '601665.SS', '601666.SS', '601668.SS', '601669.SS', '601677.SS', '601678.SS', '601686.SS', '601688.SS', '601689.SS', '601696.SS', '601698.SS', '601699.SS', '601700.SS', '601702.SS', '601717.SS', '601718.SS', '601727.SS', '601728.SS', '601766.SS', '601777.SS', '601778.SS', '601788.SS', '601789.SS', '601798.SS', '601799.SS', '601800.SS', '601801.SS', '601808.SS', '601811.SS', '601816.SS', '601818.SS', '601825.SS', '601827.SS', '601828.SS', '601838.SS', '601857.SS', '601858.SS', '601860.SS', '601865.SS', '601866.SS', '601868.SS', '601869.SS', '601872.SS', '601877.SS', '601878.SS', '601880.SS', '601881.SS', '601882.SS', '601886.SS', '601888.SS', '601890.SS', '601898.SS', '601899.SS', '601900.SS', '601901.SS', '601908.SS', '601916.SS', '601918.SS', '601919.SS', '601921.SS', '601928.SS', '601929.SS', '601933.SS', '601939.SS', '601949.SS', '601952.SS', '601956.SS', '601958.SS', '601963.SS', '601965.SS', '601966.SS', '601968.SS', '601969.SS', '601975.SS', '601985.SS', '601988.SS', '601989.SS', '601990.SS', '601991.SS', '601992.SS', '601995.SS', '601996.SS', '601997.SS', '601998.SS', '601999.SS', '603000.SS', '603001.SS', '603002.SS', '603003.SS', '603004.SS', '603005.SS', '603006.SS', '603007.SS', '603008.SS', '603009.SS', '603010.SS', '603011.SS', '603012.SS', '603013.SS', '603015.SS', '603016.SS', '603017.SS', '603018.SS', '603019.SS', '603020.SS', '603021.SS', '603022.SS', '603023.SS', '603025.SS', '603026.SS', '603027.SS', '603028.SS', '603029.SS', '603030.SS', '603031.SS', '603032.SS', '603033.SS', '603035.SS', '603036.SS', '603037.SS', '603038.SS', '603039.SS', '603040.SS', '603041.SS', '603042.SS', '603043.SS', '603045.SS', '603048.SS', '603050.SS', '603051.SS', '603052.SS', '603053.SS', '603055.SS', '603056.SS', '603057.SS', '603058.SS', '603059.SS', '603060.SS', '603061.SS', '603062.SS', '603063.SS', '603065.SS', '603066.SS', '603067.SS', '603068.SS', '603069.SS', '603070.SS', '603071.SS', '603072.SS', '603073.SS', '603075.SS', '603076.SS', '603077.SS', '603078.SS', '603079.SS', '603080.SS', '603081.SS', '603082.SS', '603083.SS', '603085.SS', '603086.SS', '603087.SS', '603088.SS', '603089.SS', '603090.SS', '603091.SS', '603093.SS', '603095.SS', '603096.SS', '603097.SS', '603098.SS', '603099.SS', '603100.SS', '603101.SS', '603102.SS', '603103.SS', '603105.SS', '603106.SS', '603107.SS', '603108.SS', '603109.SS', '603110.SS', '603111.SS', '603112.SS', '603113.SS', '603115.SS', '603116.SS', '603117.SS', '603118.SS', '603119.SS', '603121.SS', '603122.SS', '603123.SS', '603125.SS', '603126.SS', '603127.SS', '603128.SS', '603129.SS', '603130.SS', '603131.SS', '603132.SS', '603135.SS', '603136.SS', '603137.SS', '603138.SS', '603139.SS', '603150.SS', '603151.SS', '603153.SS', '603155.SS', '603156.SS', '603158.SS', '603159.SS', '603160.SS', '603161.SS', '603162.SS', '603163.SS', '603165.SS', '603166.SS', '603167.SS', '603168.SS', '603169.SS', '603170.SS', '603171.SS', '603172.SS', '603173.SS', '603176.SS', '603177.SS', '603178.SS', '603179.SS', '603180.SS', '603181.SS', '603182.SS', '603183.SS', '603185.SS', '603186.SS', '603187.SS', '603188.SS', '603189.SS', '603190.SS', '603191.SS', '603192.SS', '603193.SS', '603194.SS', '603195.SS', '603196.SS', '603197.SS', '603198.SS', '603199.SS', '603200.SS', '603201.SS', '603203.SS', '603205.SS', '603206.SS', '603207.SS', '603208.SS', '603209.SS', '603211.SS', '603212.SS', '603213.SS', '603214.SS', '603215.SS', '603216.SS', '603217.SS', '603218.SS', '603219.SS', '603220.SS', '603221.SS', '603222.SS', '603223.SS', '603225.SS', '603226.SS', '603227.SS', '603228.SS', '603229.SS', '603230.SS', '603231.SS', '603232.SS', '603233.SS', '603235.SS', '603236.SS', '603237.SS', '603238.SS', '603239.SS', '603255.SS', '603256.SS', '603258.SS', '603259.SS', '603260.SS', '603261.SS', '603266.SS', '603267.SS', '603268.SS', '603269.SS', '603270.SS', '603271.SS', '603272.SS', '603273.SS', '603275.SS', '603276.SS', '603277.SS', '603278.SS', '603279.SS', '603280.SS', '603281.SS', '603282.SS', '603283.SS', '603285.SS', '603286.SS', '603288.SS', '603289.SS', '603290.SS', '603291.SS', '603296.SS', '603297.SS', '603298.SS', '603299.SS', '603300.SS', '603301.SS', '603303.SS', '603305.SS', '603306.SS', '603307.SS', '603308.SS', '603309.SS', '603310.SS', '603311.SS', '603312.SS', '603313.SS', '603315.SS', '603316.SS', '603317.SS', '603318.SS', '603319.SS', '603320.SS', '603321.SS', '603322.SS', '603323.SS', '603324.SS', '603325.SS', '603326.SS', '603327.SS', '603328.SS', '603329.SS', '603330.SS', '603331.SS', '603332.SS', '603333.SS', '603335.SS', '603336.SS', '603337.SS', '603338.SS', '603339.SS', '603341.SS', '603344.SS', '603345.SS', '603348.SS', '603350.SS', '603351.SS', '603353.SS', '603355.SS', '603356.SS', '603357.SS', '603358.SS', '603359.SS', '603360.SS', '603363.SS', '603365.SS', '603366.SS', '603367.SS', '603368.SS', '603369.SS', '603373.SS', '603375.SS', '603377.SS', '603378.SS', '603379.SS', '603380.SS', '603381.SS', '603383.SS', '603385.SS', '603386.SS', '603387.SS', '603388.SS', '603389.SS', '603390.SS', '603391.SS', '603392.SS', '603393.SS', '603395.SS', '603396.SS', '603398.SS', '603399.SS', '603408.SS', '603409.SS', '603416.SS', '603421.SS', '603429.SS', '603439.SS', '603444.SS', '603456.SS', '603458.SS', '603466.SS', '603477.SS', '603486.SS', '603488.SS', '603489.SS', '603496.SS', '603499.SS', '603500.SS', '603501.SS', '603505.SS', '603506.SS', '603507.SS', '603508.SS', '603511.SS', '603515.SS', '603516.SS', '603517.SS', '603518.SS', '603519.SS', '603520.SS', '603527.SS', '603528.SS', '603529.SS', '603530.SS', '603533.SS', '603535.SS', '603536.SS', '603538.SS', '603551.SS', '603556.SS', '603557.SS', '603558.SS', '603559.SS', '603565.SS', '603566.SS', '603567.SS', '603568.SS', '603569.SS', '603577.SS', '603578.SS', '603579.SS', '603580.SS', '603583.SS', '603585.SS', '603586.SS', '603587.SS', '603588.SS', '603589.SS', '603590.SS', '603595.SS', '603596.SS', '603598.SS', '603599.SS', '603600.SS', '603601.SS', '603602.SS', '603605.SS', '603606.SS', '603607.SS', '603608.SS', '603609.SS', '603610.SS', '603611.SS', '603612.SS', '603613.SS', '603615.SS', '603616.SS', '603617.SS', '603618.SS', '603619.SS', '603626.SS', '603628.SS', '603629.SS', '603630.SS', '603633.SS', '603636.SS', '603637.SS', '603638.SS', '603639.SS', '603648.SS', '603650.SS', '603655.SS', '603656.SS', '603657.SS', '603658.SS', '603659.SS', '603660.SS', '603661.SS', '603662.SS', '603663.SS', '603665.SS', '603666.SS', '603667.SS', '603668.SS', '603669.SS', '603676.SS', '603677.SS', '603678.SS', '603679.SS', '603680.SS', '603681.SS', '603682.SS', '603683.SS', '603685.SS', '603686.SS', '603687.SS', '603688.SS', '603689.SS', '603690.SS', '603693.SS', '603696.SS', '603697.SS', '603698.SS', '603699.SS', '603700.SS', '603701.SS', '603703.SS', '603706.SS', '603707.SS', '603708.SS', '603709.SS', '603711.SS', '603712.SS', '603713.SS', '603716.SS', '603717.SS', '603718.SS', '603719.SS', '603721.SS', '603722.SS', '603725.SS', '603726.SS', '603727.SS', '603728.SS', '603729.SS', '603730.SS', '603733.SS', '603737.SS', '603738.SS', '603739.SS', '603755.SS', '603757.SS', '603758.SS', '603759.SS', '603766.SS', '603767.SS', '603768.SS', '603773.SS', '603776.SS', '603777.SS', '603778.SS', '603779.SS', '603786.SS', '603787.SS', '603788.SS', '603789.SS', '603790.SS', '603797.SS', '603798.SS', '603799.SS', '603800.SS', '603801.SS', '603803.SS', '603806.SS', '603808.SS', '603809.SS', '603810.SS', '603811.SS', '603813.SS', '603815.SS', '603816.SS', '603817.SS', '603818.SS', '603819.SS', '603822.SS', '603823.SS', '603825.SS', '603826.SS', '603828.SS', '603829.SS', '603833.SS', '603836.SS', '603838.SS', '603839.SS', '603843.SS', '603848.SS', '603855.SS', '603856.SS', '603858.SS', '603859.SS', '603860.SS', '603861.SS', '603863.SS', '603866.SS', '603867.SS', '603868.SS', '603869.SS', '603871.SS', '603876.SS', '603877.SS', '603878.SS', '603879.SS', '603880.SS', '603881.SS', '603882.SS', '603883.SS', '603885.SS', '603886.SS', '603887.SS', '603888.SS', '603889.SS', '603890.SS', '603893.SS', '603895.SS', '603896.SS', '603897.SS', '603898.SS', '603899.SS', '603900.SS', '603901.SS', '603903.SS', '603906.SS', '603908.SS', '603909.SS', '603912.SS', '603915.SS', '603916.SS', '603917.SS', '603918.SS', '603919.SS', '603920.SS', '603922.SS', '603926.SS', '603927.SS', '603928.SS', '603929.SS', '603931.SS', '603933.SS', '603936.SS', '603937.SS', '603938.SS', '603939.SS', '603948.SS', '603949.SS', '603950.SS', '603955.SS', '603956.SS', '603958.SS', '603959.SS', '603960.SS', '603963.SS', '603966.SS', '603967.SS', '603968.SS', '603969.SS', '603970.SS', '603976.SS', '603977.SS', '603978.SS', '603979.SS', '603980.SS', '603982.SS', '603983.SS', '603985.SS', '603986.SS', '603987.SS', '603988.SS', '603989.SS', '603990.SS', '603991.SS', '603992.SS', '603993.SS', '603995.SS', '603997.SS', '603998.SS', '603999.SS', '605001.SS', '605003.SS', '605005.SS', '605006.SS', '605007.SS', '605008.SS', '605009.SS', '605011.SS', '605016.SS', '605018.SS', '605020.SS', '605028.SS', '605033.SS', '605050.SS', '605055.SS', '605056.SS', '605058.SS', '605060.SS', '605066.SS', '605068.SS', '605069.SS', '605077.SS', '605080.SS', '605081.SS', '605086.SS', '605088.SS', '605089.SS', '605090.SS', '605098.SS', '605099.SS', '605100.SS', '605108.SS', '605111.SS', '605116.SS', '605117.SS', '605118.SS', '605122.SS', '605123.SS', '605128.SS', '605133.SS', '605136.SS', '605138.SS', '605151.SS', '605155.SS', '605158.SS', '605162.SS', '605166.SS', '605167.SS', '605168.SS', '605169.SS', '605177.SS', '605178.SS', '605179.SS', '605180.SS', '605183.SS', '605186.SS', '605188.SS', '605189.SS', '605196.SS', '605198.SS', '605199.SS', '605208.SS', '605218.SS', '605222.SS', '605228.SS', '605255.SS', '605258.SS', '605259.SS', '605266.SS', '605268.SS', '605277.SS', '605286.SS', '605287.SS', '605288.SS', '605289.SS', '605296.SS', '605298.SS', '605299.SS', '605300.SS', '605303.SS', '605305.SS', '605318.SS', '605319.SS', '605333.SS', '605336.SS', '605337.SS', '605338.SS', '605339.SS', '605358.SS', '605365.SS', '605366.SS', '605368.SS', '605369.SS', '605376.SS', '605377.SS', '605378.SS', '605388.SS', '605389.SS', '605398.SS', '605399.SS', '605488.SS', '605499.SS', '605500.SS', '605507.SS', '605555.SS', '605566.SS', '605567.SS', '605577.SS', '605580.SS', '605588.SS', '605589.SS', '605598.SS', '605599.SS', '000001.SZ', '000002.SZ', '000004.SZ', '000006.SZ', '000007.SZ', '000008.SZ', '000009.SZ', '000010.SZ', '000011.SZ', '000012.SZ', '000014.SZ', '000016.SZ', '000017.SZ', '000019.SZ', '000020.SZ', '000021.SZ', '000025.SZ', '000026.SZ', '000027.SZ', '000028.SZ', '000029.SZ', '000030.SZ', '000031.SZ', '000032.SZ', '000034.SZ', '000035.SZ', '000036.SZ', '000037.SZ', '000039.SZ', '000040.SZ', '000042.SZ', '000045.SZ', '000048.SZ', '000049.SZ', '000050.SZ', '000055.SZ', '000056.SZ', '000058.SZ', '000059.SZ', '000060.SZ', '000061.SZ', '000062.SZ', '000063.SZ', '000065.SZ', '000066.SZ', '000068.SZ', '000069.SZ', '000070.SZ', '000078.SZ', '000088.SZ', '000089.SZ', '000090.SZ', '000096.SZ', '000099.SZ', '000100.SZ', '000151.SZ', '000153.SZ', '000155.SZ', '000156.SZ', '000157.SZ', '000158.SZ', '000159.SZ', '000166.SZ', '000301.SZ', '000333.SZ', '000338.SZ', '000400.SZ', '000401.SZ', '000402.SZ', '000403.SZ', '000404.SZ', '000407.SZ', '000408.SZ', '000409.SZ', '000410.SZ', '000411.SZ', '000415.SZ', '000417.SZ', '000419.SZ', '000420.SZ', '000421.SZ', '000422.SZ', '000423.SZ', '000425.SZ', '000426.SZ', '000428.SZ', '000429.SZ', '000430.SZ', '000488.SZ', '000498.SZ', '000501.SZ', '000503.SZ', '000504.SZ', '000505.SZ', '000506.SZ', '000507.SZ', '000509.SZ', '000510.SZ', '000513.SZ', '000514.SZ', '000516.SZ', '000517.SZ', '000518.SZ', '000519.SZ', '000520.SZ', '000521.SZ', '000523.SZ', '000524.SZ', '000525.SZ', '000526.SZ', '000528.SZ', '000529.SZ', '000530.SZ', '000531.SZ', '000532.SZ', '000533.SZ', '000534.SZ', '000536.SZ', '000537.SZ', '000538.SZ', '000539.SZ', '000541.SZ', '000543.SZ', '000544.SZ', '000545.SZ', '000546.SZ', '000547.SZ', '000548.SZ', '000550.SZ', '000551.SZ', '000552.SZ', '000553.SZ', '000554.SZ', '000555.SZ', '000557.SZ', '000558.SZ', '000559.SZ', '000560.SZ', '000561.SZ', '000563.SZ', '000564.SZ', '000565.SZ', '000566.SZ', '000567.SZ', '000568.SZ', '000570.SZ', '000571.SZ', '000572.SZ', '000573.SZ', '000576.SZ', '000581.SZ', '000582.SZ', '000584.SZ', '000586.SZ', '000589.SZ', '000590.SZ', '000591.SZ', '000592.SZ', '000593.SZ', '000595.SZ', '000596.SZ', '000597.SZ', '000598.SZ', '000599.SZ', '000600.SZ', '000601.SZ', '000603.SZ', '000605.SZ', '000607.SZ', '000608.SZ', '000609.SZ', '000610.SZ', '000612.SZ', '000615.SZ', '000617.SZ', '000619.SZ', '000620.SZ', '000622.SZ', '000623.SZ', '000625.SZ', '000626.SZ', '000627.SZ', '000628.SZ', '000629.SZ', '000630.SZ', '000631.SZ', '000632.SZ', '000633.SZ', '000635.SZ', '000636.SZ', '000637.SZ', '000638.SZ', '000639.SZ', '000650.SZ', '000651.SZ', '000652.SZ', '000655.SZ', '000656.SZ', '000657.SZ', '000659.SZ', '000661.SZ', '000663.SZ', '000665.SZ', '000668.SZ', '000669.SZ', '000670.SZ', '000672.SZ', '000676.SZ', '000677.SZ', '000678.SZ', '000679.SZ', '000680.SZ', '000681.SZ', '000682.SZ', '000683.SZ', '000685.SZ', '000686.SZ', '000688.SZ', '000690.SZ', '000691.SZ', '000692.SZ', '000695.SZ', '000697.SZ', '000698.SZ', '000700.SZ', '000701.SZ', '000702.SZ', '000703.SZ', '000705.SZ', '000707.SZ', '000708.SZ', '000709.SZ', '000710.SZ', '000711.SZ', '000712.SZ', '000713.SZ', '000715.SZ', '000716.SZ', '000717.SZ', '000718.SZ', '000719.SZ', '000720.SZ', '000721.SZ', '000722.SZ', '000723.SZ', '000725.SZ', '000726.SZ', '000727.SZ', '000728.SZ', '000729.SZ', '000731.SZ', '000733.SZ', '000735.SZ', '000736.SZ', '000737.SZ', '000738.SZ', '000739.SZ', '000750.SZ', '000751.SZ', '000752.SZ', '000753.SZ', '000755.SZ', '000756.SZ', '000757.SZ', '000758.SZ', '000759.SZ', '000761.SZ', '000762.SZ', '000766.SZ', '000767.SZ', '000768.SZ', '000776.SZ', '000777.SZ', '000778.SZ', '000779.SZ', '000782.SZ', '000783.SZ', '000785.SZ', '000786.SZ', '000788.SZ', '000789.SZ', '000790.SZ', '000791.SZ', '000792.SZ', '000793.SZ', '000795.SZ', '000796.SZ', '000797.SZ', '000798.SZ', '000799.SZ', '000800.SZ', '000801.SZ', '000802.SZ', '000803.SZ', '000807.SZ', '000809.SZ', '000810.SZ', '000811.SZ', '000812.SZ', '000813.SZ', '000815.SZ', '000816.SZ', '000818.SZ', '000819.SZ', '000820.SZ', '000821.SZ', '000822.SZ', '000823.SZ', '000825.SZ', '000826.SZ', '000828.SZ', '000829.SZ', '000830.SZ', '000831.SZ', '000833.SZ', '000837.SZ', '000838.SZ', '000839.SZ', '000848.SZ', '000850.SZ', '000851.SZ', '000852.SZ', '000856.SZ', '000858.SZ', '000859.SZ', '000860.SZ', '000862.SZ', '000863.SZ', '000868.SZ', '000869.SZ', '000875.SZ', '000876.SZ', '000877.SZ', '000878.SZ', '000880.SZ', '000881.SZ', '000882.SZ', '000883.SZ', '000885.SZ', '000886.SZ', '000887.SZ', '000888.SZ', '000889.SZ', '000890.SZ', '000892.SZ', '000893.SZ', '000895.SZ', '000897.SZ', '000898.SZ', '000899.SZ', '000900.SZ', '000901.SZ', '000902.SZ', '000903.SZ', '000905.SZ', '000906.SZ', '000908.SZ', '000909.SZ', '000910.SZ', '000911.SZ', '000912.SZ', '000913.SZ', '000915.SZ', '000917.SZ', '000919.SZ', '000920.SZ', '000921.SZ', '000922.SZ', '000923.SZ', '000925.SZ', '000926.SZ', '000927.SZ', '000928.SZ', '000929.SZ', '000930.SZ', '000931.SZ', '000932.SZ', '000933.SZ', '000935.SZ', '000936.SZ', '000937.SZ', '000938.SZ', '000948.SZ', '000949.SZ', '000950.SZ', '000951.SZ', '000952.SZ', '000953.SZ', '000955.SZ', '000957.SZ', '000958.SZ', '000959.SZ', '000960.SZ', '000962.SZ', '000963.SZ', '000965.SZ', '000966.SZ', '000967.SZ', '000968.SZ', '000969.SZ', '000970.SZ', '000972.SZ', '000973.SZ', '000975.SZ', '000977.SZ', '000978.SZ', '000980.SZ', '000981.SZ', '000983.SZ', '000985.SZ', '000987.SZ', '000988.SZ', '000989.SZ', '000990.SZ', '000993.SZ', '000995.SZ', '000997.SZ', '000998.SZ', '000999.SZ', '001201.SZ', '001202.SZ', '001203.SZ', '001205.SZ', '001206.SZ', '001207.SZ', '001208.SZ', '001209.SZ', '001210.SZ', '001211.SZ', '001212.SZ', '001213.SZ', '001215.SZ', '001216.SZ', '001217.SZ', '001218.SZ', '001219.SZ', '001222.SZ', '001223.SZ', '001225.SZ', '001226.SZ', '001227.SZ', '001228.SZ', '001229.SZ', '001230.SZ', '001231.SZ', '001234.SZ', '001236.SZ', '001238.SZ', '001239.SZ', '001255.SZ', '001256.SZ', '001258.SZ', '001259.SZ', '001260.SZ', '001266.SZ', '001267.SZ', '001268.SZ', '001269.SZ', '001270.SZ', '001277.SZ', '001278.SZ', '001279.SZ', '001282.SZ', '001283.SZ', '001286.SZ', '001287.SZ', '001288.SZ', '001289.SZ', '001296.SZ', '001298.SZ', '001299.SZ', '001300.SZ', '001301.SZ', '001306.SZ', '001308.SZ', '001309.SZ', '001311.SZ', '001313.SZ', '001314.SZ', '001316.SZ', '001317.SZ', '001318.SZ', '001319.SZ', '001322.SZ', '001323.SZ', '001324.SZ', '001326.SZ', '001328.SZ', '001330.SZ', '001331.SZ', '001332.SZ', '001333.SZ', '001336.SZ', '001337.SZ', '001338.SZ', '001339.SZ', '001356.SZ', '001358.SZ', '001359.SZ', '001360.SZ', '001366.SZ', '001367.SZ', '001368.SZ', '001373.SZ', '001376.SZ', '001378.SZ', '001379.SZ', '001380.SZ', '001387.SZ', '001389.SZ', '001391.SZ', '001395.SZ', '001696.SZ', '001872.SZ', '001896.SZ', '001914.SZ', '001965.SZ', '001979.SZ', '002001.SZ', '002003.SZ', '002004.SZ', '002005.SZ', '002006.SZ', '002007.SZ', '002008.SZ', '002009.SZ', '002010.SZ', '002011.SZ', '002012.SZ', '002014.SZ', '002015.SZ', '002016.SZ', '002017.SZ', '002019.SZ', '002020.SZ', '002021.SZ', '002022.SZ', '002023.SZ', '002024.SZ', '002025.SZ', '002026.SZ', '002027.SZ', '002028.SZ', '002029.SZ', '002030.SZ', '002031.SZ', '002032.SZ', '002033.SZ', '002034.SZ', '002035.SZ', '002036.SZ', '002037.SZ', '002038.SZ', '002039.SZ', '002040.SZ', '002041.SZ', '002042.SZ', '002043.SZ', '002044.SZ', '002045.SZ', '002046.SZ', '002047.SZ', '002048.SZ', '002049.SZ', '002050.SZ', '002051.SZ', '002052.SZ', '002053.SZ', '002054.SZ', '002055.SZ', '002056.SZ', '002057.SZ', '002058.SZ', '002059.SZ', '002060.SZ', '002061.SZ', '002062.SZ', '002063.SZ', '002064.SZ', '002065.SZ', '002066.SZ', '002067.SZ', '002068.SZ', '002069.SZ', '002072.SZ', '002073.SZ', '002074.SZ', '002075.SZ', '002076.SZ', '002077.SZ', '002078.SZ', '002079.SZ', '002080.SZ', '002081.SZ', '002082.SZ', '002083.SZ', '002084.SZ', '002085.SZ', '002086.SZ', '002088.SZ', '002090.SZ', '002091.SZ', '002092.SZ', '002093.SZ', '002094.SZ', '002095.SZ', '002096.SZ', '002097.SZ', '002098.SZ', '002099.SZ', '002100.SZ', '002101.SZ', '002102.SZ', '002103.SZ', '002104.SZ', '002105.SZ', '002106.SZ', '002107.SZ', '002108.SZ', '002109.SZ', '002110.SZ', '002111.SZ', '002112.SZ', '002114.SZ', '002115.SZ', '002116.SZ', '002117.SZ', '002119.SZ', '002120.SZ', '002121.SZ', '002122.SZ', '002123.SZ', '002124.SZ', '002125.SZ', '002126.SZ', '002127.SZ', '002128.SZ', '002129.SZ', '002130.SZ', '002131.SZ', '002132.SZ', '002133.SZ', '002134.SZ', '002135.SZ', '002136.SZ', '002137.SZ', '002138.SZ', '002139.SZ', '002140.SZ', '002141.SZ', '002142.SZ', '002144.SZ', '002145.SZ', '002146.SZ', '002148.SZ', '002149.SZ', '002150.SZ', '002151.SZ', '002152.SZ', '002153.SZ', '002154.SZ', '002155.SZ', '002156.SZ', '002157.SZ', '002158.SZ', '002159.SZ', '002160.SZ', '002161.SZ', '002162.SZ', '002163.SZ', '002164.SZ', '002165.SZ', '002166.SZ', '002167.SZ', '002168.SZ', '002169.SZ', '002170.SZ', '002171.SZ', '002172.SZ', '002173.SZ', '002174.SZ', '002175.SZ', '002176.SZ', '002177.SZ', '002178.SZ', '002179.SZ', '002180.SZ', '002181.SZ', '002182.SZ', '002183.SZ', '002184.SZ', '002185.SZ', '002186.SZ', '002187.SZ', '002188.SZ', '002189.SZ', '002190.SZ', '002191.SZ', '002192.SZ', '002193.SZ', '002194.SZ', '002195.SZ', '002196.SZ', '002197.SZ', '002198.SZ', '002199.SZ', '002200.SZ', '002201.SZ', '002202.SZ', '002203.SZ', '002204.SZ', '002205.SZ', '002206.SZ', '002207.SZ', '002208.SZ', '002209.SZ', '002210.SZ', '002211.SZ', '002212.SZ', '002213.SZ', '002214.SZ', '002215.SZ', '002216.SZ', '002217.SZ', '002218.SZ', '002219.SZ', '002221.SZ', '002222.SZ', '002223.SZ', '002224.SZ', '002225.SZ', '002226.SZ', '002227.SZ', '002228.SZ', '002229.SZ', '002230.SZ', '002231.SZ', '002232.SZ', '002233.SZ', '002234.SZ', '002235.SZ', '002236.SZ', '002237.SZ', '002238.SZ', '002239.SZ', '002240.SZ', '002241.SZ', '002242.SZ', '002243.SZ', '002244.SZ', '002245.SZ', '002246.SZ', '002247.SZ', '002248.SZ', '002249.SZ', '002250.SZ', '002251.SZ', '002252.SZ', '002253.SZ', '002254.SZ', '002255.SZ', '002256.SZ', '002258.SZ', '002259.SZ', '002261.SZ', '002262.SZ', '002263.SZ', '002264.SZ', '002265.SZ', '002266.SZ', '002267.SZ', '002268.SZ', '002269.SZ', '002270.SZ', '002271.SZ', '002272.SZ', '002273.SZ', '002274.SZ', '002275.SZ', '002276.SZ', '002277.SZ', '002278.SZ', '002279.SZ', '002281.SZ', '002282.SZ', '002283.SZ', '002284.SZ', '002285.SZ', '002286.SZ', '002287.SZ', '002289.SZ', '002290.SZ', '002291.SZ', '002292.SZ', '002293.SZ', '002294.SZ', '002295.SZ', '002296.SZ', '002297.SZ', '002298.SZ', '002299.SZ', '002300.SZ', '002301.SZ', '002302.SZ', '002303.SZ', '002304.SZ', '002305.SZ', '002306.SZ', '002307.SZ', '002309.SZ', '002310.SZ', '002311.SZ', '002312.SZ', '002313.SZ', '002314.SZ', '002315.SZ', '002316.SZ', '002317.SZ', '002318.SZ', '002319.SZ', '002320.SZ', '002321.SZ', '002322.SZ', '002323.SZ', '002324.SZ', '002326.SZ', '002327.SZ', '002328.SZ', '002329.SZ', '002330.SZ', '002331.SZ', '002332.SZ', '002333.SZ', '002334.SZ', '002335.SZ', '002336.SZ', '002337.SZ', '002338.SZ', '002339.SZ', '002340.SZ', '002342.SZ', '002343.SZ', '002344.SZ', '002345.SZ', '002346.SZ', '002347.SZ', '002348.SZ', '002349.SZ', '002350.SZ', '002351.SZ', '002352.SZ', '002353.SZ', '002354.SZ', '002355.SZ', '002356.SZ', '002357.SZ', '002358.SZ', '002360.SZ', '002361.SZ', '002362.SZ', '002363.SZ', '002364.SZ', '002365.SZ', '002366.SZ', '002367.SZ', '002368.SZ', '002369.SZ', '002370.SZ', '002371.SZ', '002372.SZ', '002373.SZ', '002374.SZ', '002375.SZ', '002376.SZ', '002377.SZ', '002378.SZ', '002379.SZ', '002380.SZ', '002381.SZ', '002382.SZ', '002383.SZ', '002384.SZ', '002385.SZ', '002386.SZ', '002387.SZ', '002388.SZ', '002389.SZ', '002390.SZ', '002391.SZ', '002392.SZ', '002393.SZ', '002394.SZ', '002395.SZ', '002396.SZ', '002397.SZ', '002398.SZ', '002399.SZ', '002400.SZ', '002401.SZ', '002402.SZ', '002403.SZ', '002404.SZ', '002405.SZ', '002406.SZ', '002407.SZ', '002408.SZ', '002409.SZ', '002410.SZ', '002412.SZ', '002413.SZ', '002414.SZ', '002415.SZ', '002416.SZ', '002418.SZ', '002419.SZ', '002420.SZ', '002421.SZ', '002422.SZ', '002423.SZ', '002424.SZ', '002425.SZ', '002426.SZ', '002427.SZ', '002428.SZ', '002429.SZ', '002430.SZ', '002431.SZ', '002432.SZ', '002434.SZ', '002436.SZ', '002437.SZ', '002438.SZ', '002439.SZ', '002440.SZ', '002441.SZ', '002442.SZ', '002443.SZ', '002444.SZ', '002445.SZ', '002446.SZ', '002448.SZ', '002449.SZ', '002451.SZ', '002452.SZ', '002453.SZ', '002454.SZ', '002455.SZ', '002456.SZ', '002457.SZ', '002458.SZ', '002459.SZ', '002460.SZ', '002461.SZ', '002462.SZ', '002463.SZ', '002465.SZ', '002466.SZ', '002467.SZ', '002468.SZ', '002469.SZ', '002470.SZ', '002471.SZ', '002472.SZ', '002474.SZ', '002475.SZ', '002476.SZ', '002478.SZ', '002479.SZ', '002480.SZ', '002481.SZ', '002482.SZ', '002483.SZ', '002484.SZ', '002485.SZ', '002486.SZ', '002487.SZ', '002488.SZ', '002489.SZ', '002490.SZ', '002491.SZ', '002492.SZ', '002493.SZ', '002494.SZ', '002495.SZ', '002496.SZ', '002497.SZ', '002498.SZ', '002500.SZ', '002501.SZ', '002506.SZ', '002507.SZ', '002508.SZ', '002510.SZ', '002511.SZ', '002512.SZ', '002513.SZ', '002514.SZ', '002515.SZ', '002516.SZ', '002517.SZ', '002518.SZ', '002519.SZ', '002520.SZ', '002521.SZ', '002522.SZ', '002523.SZ', '002524.SZ', '002526.SZ', '002527.SZ', '002528.SZ', '002529.SZ', '002530.SZ', '002531.SZ', '002532.SZ', '002533.SZ', '002534.SZ', '002535.SZ', '002536.SZ', '002537.SZ', '002538.SZ', '002539.SZ', '002540.SZ', '002541.SZ', '002542.SZ', '002543.SZ', '002544.SZ', '002545.SZ', '002546.SZ', '002547.SZ', '002548.SZ', '002549.SZ', '002550.SZ', '002551.SZ', '002552.SZ', '002553.SZ', '002554.SZ', '002555.SZ', '002556.SZ', '002557.SZ', '002558.SZ', '002559.SZ', '002560.SZ', '002561.SZ', '002562.SZ', '002563.SZ', '002564.SZ', '002565.SZ', '002566.SZ', '002567.SZ', '002568.SZ', '002569.SZ', '002570.SZ', '002571.SZ', '002572.SZ', '002573.SZ', '002574.SZ', '002575.SZ', '002576.SZ', '002577.SZ', '002578.SZ', '002579.SZ', '002580.SZ', '002581.SZ', '002582.SZ', '002583.SZ', '002584.SZ', '002585.SZ', '002586.SZ', '002587.SZ', '002588.SZ', '002589.SZ', '002590.SZ', '002591.SZ', '002592.SZ', '002593.SZ', '002594.SZ', '002595.SZ', '002596.SZ', '002597.SZ', '002598.SZ', '002599.SZ', '002600.SZ', '002601.SZ', '002602.SZ', '002603.SZ', '002605.SZ', '002606.SZ', '002607.SZ', '002608.SZ', '002609.SZ', '002611.SZ', '002612.SZ', '002613.SZ', '002614.SZ', '002615.SZ', '002616.SZ', '002617.SZ', '002620.SZ', '002622.SZ', '002623.SZ', '002624.SZ', '002625.SZ', '002626.SZ', '002627.SZ', '002628.SZ', '002629.SZ', '002630.SZ', '002631.SZ', '002632.SZ', '002633.SZ', '002634.SZ', '002635.SZ', '002636.SZ', '002637.SZ', '002638.SZ', '002639.SZ', '002640.SZ', '002641.SZ', '002642.SZ', '002643.SZ', '002644.SZ', '002645.SZ', '002646.SZ', '002647.SZ', '002648.SZ', '002649.SZ', '002650.SZ', '002651.SZ', '002652.SZ', '002653.SZ', '002654.SZ', '002655.SZ', '002656.SZ', '002657.SZ', '002658.SZ', '002659.SZ', '002660.SZ', '002661.SZ', '002662.SZ', '002663.SZ', '002664.SZ', '002666.SZ', '002667.SZ', '002668.SZ', '002669.SZ', '002670.SZ', '002671.SZ', '002672.SZ', '002673.SZ', '002674.SZ', '002675.SZ', '002676.SZ', '002677.SZ', '002678.SZ', '002679.SZ', '002681.SZ', '002682.SZ', '002683.SZ', '002685.SZ', '002686.SZ', '002687.SZ', '002688.SZ', '002689.SZ', '002690.SZ', '002691.SZ', '002692.SZ', '002693.SZ', '002694.SZ', '002695.SZ', '002696.SZ', '002697.SZ', '002698.SZ', '002700.SZ', '002701.SZ', '002702.SZ', '002703.SZ', '002705.SZ', '002706.SZ', '002707.SZ', '002708.SZ', '002709.SZ', '002712.SZ', '002713.SZ', '002714.SZ', '002715.SZ', '002716.SZ', '002717.SZ', '002718.SZ', '002719.SZ', '002721.SZ', '002722.SZ', '002723.SZ', '002724.SZ', '002725.SZ', '002726.SZ', '002727.SZ', '002728.SZ', '002729.SZ', '002730.SZ', '002731.SZ', '002732.SZ', '002733.SZ', '002734.SZ', '002735.SZ', '002736.SZ', '002737.SZ', '002738.SZ', '002739.SZ', '002741.SZ', '002742.SZ', '002743.SZ', '002745.SZ', '002746.SZ', '002747.SZ', '002748.SZ', '002749.SZ', '002750.SZ', '002752.SZ', '002753.SZ', '002755.SZ', '002756.SZ', '002757.SZ', '002758.SZ', '002759.SZ', '002760.SZ', '002761.SZ', '002762.SZ', '002763.SZ', '002765.SZ', '002766.SZ', '002767.SZ', '002768.SZ', '002769.SZ', '002771.SZ', '002772.SZ', '002773.SZ', '002774.SZ', '002775.SZ', '002777.SZ', '002778.SZ', '002779.SZ', '002780.SZ', '002782.SZ', '002783.SZ', '002785.SZ', '002786.SZ', '002787.SZ', '002788.SZ', '002789.SZ', '002790.SZ', '002791.SZ', '002792.SZ', '002793.SZ', '002795.SZ', '002796.SZ', '002797.SZ', '002798.SZ', '002799.SZ', '002800.SZ', '002801.SZ', '002802.SZ', '002803.SZ', '002805.SZ', '002806.SZ', '002807.SZ', '002808.SZ', '002809.SZ', '002810.SZ', '002811.SZ', '002812.SZ', '002813.SZ', '002815.SZ', '002816.SZ', '002817.SZ', '002818.SZ', '002819.SZ', '002820.SZ', '002821.SZ', '002822.SZ', '002823.SZ', '002824.SZ', '002825.SZ', '002826.SZ', '002827.SZ', '002828.SZ', '002829.SZ', '002830.SZ', '002831.SZ', '002832.SZ', '002833.SZ', '002835.SZ', '002836.SZ', '002837.SZ', '002838.SZ', '002839.SZ', '002840.SZ', '002841.SZ', '002842.SZ', '002843.SZ', '002845.SZ', '002846.SZ', '002847.SZ', '002848.SZ', '002849.SZ', '002850.SZ', '002851.SZ', '002852.SZ', '002853.SZ', '002855.SZ', '002856.SZ', '002857.SZ', '002858.SZ', '002859.SZ', '002860.SZ', '002861.SZ', '002862.SZ', '002863.SZ', '002864.SZ', '002865.SZ', '002866.SZ', '002867.SZ', '002868.SZ', '002869.SZ', '002870.SZ', '002871.SZ', '002872.SZ', '002873.SZ', '002875.SZ', '002876.SZ', '002877.SZ', '002878.SZ', '002879.SZ', '002880.SZ', '002881.SZ', '002882.SZ', '002883.SZ', '002884.SZ', '002885.SZ', '002886.SZ', '002887.SZ', '002888.SZ', '002889.SZ', '002890.SZ', '002891.SZ', '002892.SZ', '002893.SZ', '002895.SZ', '002896.SZ', '002897.SZ', '002898.SZ', '002899.SZ', '002900.SZ', '002901.SZ', '002902.SZ', '002903.SZ', '002905.SZ', '002906.SZ', '002907.SZ', '002908.SZ', '002909.SZ', '002910.SZ', '002911.SZ', '002912.SZ', '002913.SZ', '002915.SZ', '002916.SZ', '002917.SZ', '002918.SZ', '002919.SZ', '002920.SZ', '002921.SZ', '002922.SZ', '002923.SZ', '002925.SZ', '002926.SZ', '002927.SZ', '002928.SZ', '002929.SZ', '002930.SZ', '002931.SZ', '002932.SZ', '002933.SZ', '002935.SZ', '002936.SZ', '002937.SZ', '002938.SZ', '002939.SZ', '002940.SZ', '002941.SZ', '002942.SZ', '002943.SZ', '002945.SZ', '002946.SZ', '002947.SZ', '002948.SZ', '002949.SZ', '002950.SZ', '002951.SZ', '002952.SZ', '002953.SZ', '002955.SZ', '002956.SZ', '002957.SZ', '002958.SZ', '002959.SZ', '002960.SZ', '002961.SZ', '002962.SZ', '002963.SZ', '002965.SZ', '002966.SZ', '002967.SZ', '002968.SZ', '002969.SZ', '002970.SZ', '002971.SZ', '002972.SZ', '002973.SZ', '002975.SZ', '002976.SZ', '002977.SZ', '002978.SZ', '002979.SZ', '002980.SZ', '002981.SZ', '002982.SZ', '002983.SZ', '002984.SZ', '002985.SZ', '002986.SZ', '002987.SZ', '002988.SZ', '002989.SZ', '002990.SZ', '002991.SZ', '002992.SZ', '002993.SZ', '002995.SZ', '002996.SZ', '002997.SZ', '002998.SZ', '002999.SZ', '003000.SZ', '003001.SZ', '003002.SZ', '003003.SZ', '003004.SZ', '003005.SZ', '003006.SZ', '003007.SZ', '003008.SZ', '003009.SZ', '003010.SZ', '003011.SZ', '003012.SZ', '003013.SZ', '003015.SZ', '003016.SZ', '003017.SZ', '003018.SZ', '003019.SZ', '003020.SZ', '003021.SZ', '003022.SZ', '003023.SZ', '003025.SZ', '003026.SZ', '003027.SZ', '003028.SZ', '003029.SZ', '003030.SZ', '003031.SZ', '003032.SZ', '003033.SZ', '003035.SZ', '003036.SZ', '003037.SZ', '003038.SZ', '003039.SZ', '003040.SZ', '003041.SZ', '003042.SZ', '003043.SZ', '003816.SZ', '688001.SS', '688002.SS', '688003.SS', '688004.SS', '688005.SS', '688006.SS', '688007.SS', '688008.SS', '688009.SS', '688010.SS', '688011.SS', '688012.SS', '688013.SS', '688015.SS', '688016.SS', '688017.SS', '688018.SS', '688019.SS', '688020.SS', '688021.SS', '688022.SS', '688023.SS', '688025.SS', '688026.SS', '688027.SS', '688028.SS', '688029.SS', '688030.SS', '688031.SS', '688032.SS', '688033.SS', '688035.SS', '688036.SS', '688037.SS', '688038.SS', '688039.SS', '688041.SS', '688045.SS', '688046.SS', '688047.SS', '688048.SS', '688049.SS', '688050.SS', '688051.SS', '688052.SS', '688053.SS', '688055.SS', '688056.SS', '688057.SS', '688058.SS', '688059.SS', '688060.SS', '688061.SS', '688062.SS', '688063.SS', '688065.SS', '688066.SS', '688067.SS', '688068.SS', '688069.SS', '688070.SS', '688071.SS', '688072.SS', '688073.SS', '688075.SS', '688076.SS', '688077.SS', '688078.SS', '688079.SS', '688080.SS', '688081.SS', '688082.SS', '688083.SS', '688084.SS', '688085.SS', '688087.SS', '688088.SS', '688089.SS', '688090.SS', '688091.SS', '688092.SS', '688093.SS', '688095.SS', '688096.SS', '688097.SS', '688098.SS', '688099.SS', '688100.SS', '688101.SS', '688102.SS', '688103.SS', '688105.SS', '688106.SS', '688107.SS', '688108.SS', '688109.SS', '688110.SS', '688111.SS', '688112.SS', '688113.SS', '688114.SS', '688115.SS', '688116.SS', '688117.SS', '688118.SS', '688119.SS', '688120.SS', '688121.SS', '688122.SS', '688123.SS', '688125.SS', '688126.SS', '688127.SS', '688128.SS', '688129.SS', '688130.SS', '688131.SS', '688132.SS', '688133.SS', '688135.SS', '688136.SS', '688137.SS', '688138.SS', '688139.SS', '688141.SS', '688143.SS', '688146.SS', '688147.SS', '688148.SS', '688150.SS', '688151.SS', '688152.SS', '688153.SS', '688155.SS', '688156.SS', '688157.SS', '688158.SS', '688159.SS', '688160.SS', '688161.SS', '688162.SS', '688163.SS', '688165.SS', '688166.SS', '688167.SS', '688168.SS', '688169.SS', '688170.SS', '688171.SS', '688172.SS', '688173.SS', '688175.SS', '688176.SS', '688177.SS', '688178.SS', '688179.SS', '688180.SS', '688181.SS', '688182.SS', '688183.SS', '688184.SS', '688185.SS', '688186.SS', '688187.SS', '688188.SS', '688189.SS', '688190.SS', '688191.SS', '688192.SS', '688193.SS', '688195.SS', '688196.SS', '688197.SS', '688198.SS', '688199.SS', '688200.SS', '688201.SS', '688202.SS', '688203.SS', '688205.SS', '688206.SS', '688207.SS', '688208.SS', '688209.SS', '688210.SS', '688211.SS', '688212.SS', '688213.SS', '688215.SS', '688216.SS', '688217.SS', '688218.SS', '688219.SS', '688220.SS', '688221.SS', '688222.SS', '688223.SS', '688225.SS', '688226.SS', '688227.SS', '688228.SS', '688229.SS', '688230.SS', '688231.SS', '688232.SS', '688233.SS', '688234.SS', '688235.SS', '688236.SS', '688237.SS', '688238.SS', '688239.SS', '688244.SS', '688246.SS', '688247.SS', '688248.SS', '688249.SS', '688251.SS', '688252.SS', '688253.SS', '688255.SS', '688256.SS', '688257.SS', '688258.SS', '688259.SS', '688260.SS', '688261.SS', '688262.SS', '688265.SS', '688266.SS', '688267.SS', '688268.SS', '688269.SS', '688270.SS', '688271.SS', '688272.SS', '688273.SS', '688275.SS', '688276.SS', '688277.SS', '688278.SS', '688279.SS', '688280.SS', '688281.SS', '688282.SS', '688283.SS', '688285.SS', '688286.SS', '688287.SS', '688288.SS', '688289.SS', '688290.SS', '688291.SS', '688292.SS', '688293.SS', '688295.SS', '688296.SS', '688297.SS', '688298.SS', '688299.SS', '688300.SS', '688301.SS', '688302.SS', '688303.SS', '688305.SS', '688306.SS', '688307.SS', '688308.SS', '688309.SS', '688310.SS', '688311.SS', '688312.SS', '688313.SS', '688314.SS', '688315.SS', '688316.SS', '688317.SS', '688318.SS', '688319.SS', '688320.SS', '688321.SS', '688322.SS', '688323.SS', '688325.SS', '688326.SS', '688327.SS', '688328.SS', '688329.SS', '688330.SS', '688331.SS', '688332.SS', '688333.SS', '688334.SS', '688335.SS', '688336.SS', '688337.SS', '688338.SS', '688339.SS', '688343.SS', '688345.SS', '688347.SS', '688348.SS', '688349.SS', '688350.SS', '688351.SS', '688352.SS', '688353.SS', '688355.SS', '688356.SS', '688357.SS', '688358.SS', '688359.SS', '688360.SS', '688361.SS', '688362.SS', '688363.SS', '688365.SS', '688366.SS', '688367.SS', '688368.SS', '688369.SS', '688370.SS', '688371.SS', '688372.SS', '688373.SS', '688375.SS', '688376.SS', '688377.SS', '688378.SS', '688379.SS', '688380.SS', '688381.SS', '688382.SS', '688383.SS', '688385.SS', '688386.SS', '688387.SS', '688388.SS', '688389.SS', '688390.SS', '688391.SS', '688392.SS', '688393.SS', '688395.SS', '688396.SS', '688398.SS', '688399.SS', '688400.SS', '688401.SS', '688403.SS', '688408.SS', '688409.SS', '688410.SS', '688411.SS', '688416.SS', '688418.SS', '688419.SS', '688420.SS', '688425.SS', '688426.SS', '688428.SS', '688429.SS', '688432.SS', '688433.SS', '688435.SS', '688439.SS', '688443.SS', '688448.SS', '688449.SS', '688450.SS', '688455.SS', '688456.SS', '688458.SS', '688459.SS', '688466.SS', '688468.SS', '688469.SS', '688472.SS', '688475.SS', '688478.SS', '688479.SS', '688480.SS', '688484.SS', '688485.SS', '688486.SS', '688488.SS', '688489.SS', '688496.SS', '688498.SS', '688499.SS', '688500.SS', '688501.SS', '688502.SS', '688503.SS', '688505.SS', '688506.SS', '688507.SS', '688508.SS', '688509.SS', '688510.SS', '688511.SS', '688512.SS', '688513.SS', '688515.SS', '688516.SS', '688517.SS', '688518.SS', '688519.SS', '688520.SS', '688521.SS', '688522.SS', '688523.SS', '688525.SS', '688526.SS', '688528.SS', '688529.SS', '688530.SS', '688531.SS', '688533.SS', '688535.SS', '688536.SS', '688538.SS', '688539.SS', '688543.SS', '688545.SS', '688548.SS', '688549.SS', '688550.SS', '688551.SS', '688552.SS', '688553.SS', '688556.SS', '688557.SS', '688558.SS', '688559.SS', '688560.SS', '688561.SS', '688562.SS', '688563.SS', '688565.SS', '688566.SS', '688567.SS', '688568.SS', '688569.SS', '688570.SS', '688571.SS', '688573.SS', '688575.SS', '688576.SS', '688577.SS', '688578.SS', '688579.SS', '688580.SS', '688581.SS', '688582.SS', '688583.SS', '688584.SS', '688585.SS', '688586.SS', '688588.SS', '688589.SS', '688590.SS', '688591.SS', '688592.SS', '688593.SS', '688595.SS', '688596.SS', '688597.SS', '688598.SS', '688599.SS', '688600.SS', '688601.SS', '688602.SS', '688603.SS', '688605.SS', '688606.SS', '688607.SS', '688608.SS', '688609.SS', '688610.SS', '688611.SS', '688612.SS', '688613.SS', '688615.SS', '688616.SS', '688617.SS', '688618.SS', '688619.SS', '688620.SS', '688621.SS', '688622.SS', '688623.SS', '688625.SS', '688626.SS', '688627.SS', '688628.SS', '688629.SS', '688630.SS', '688631.SS', '688633.SS', '688636.SS', '688638.SS', '688639.SS', '688646.SS', '688648.SS', '688651.SS', '688652.SS', '688653.SS', '688655.SS', '688656.SS', '688657.SS', '688658.SS', '688659.SS', '688660.SS', '688661.SS', '688662.SS', '688663.SS', '688665.SS', '688667.SS', '688668.SS', '688669.SS', '688670.SS', '688671.SS', '688676.SS', '688677.SS', '688678.SS', '688679.SS', '688680.SS', '688681.SS', '688682.SS', '688683.SS', '688685.SS', '688686.SS', '688687.SS', '688689.SS', '688690.SS', '688691.SS', '688692.SS', '688693.SS', '688695.SS', '688696.SS', '688697.SS', '688698.SS', '688699.SS', '688700.SS', '688701.SS', '688702.SS', '688707.SS', '688708.SS', '688709.SS', '688710.SS', '688711.SS', '688716.SS', '688717.SS', '688718.SS', '688719.SS', '688720.SS', '688721.SS', '688722.SS', '688726.SS', '688728.SS', '688733.SS', '688737.SS', '688739.SS', '688750.SS', '688758.SS', '688766.SS', '688767.SS', '688768.SS', '688772.SS', '688776.SS', '688777.SS', '688778.SS', '688779.SS', '688786.SS', '688787.SS', '688788.SS', '688789.SS', '688793.SS', '688798.SS', '688799.SS', '688800.SS', '688819.SS', '688981.SS', '689009.SS', '300001.SZ', '300002.SZ', '300003.SZ', '300004.SZ', '300005.SZ', '300006.SZ', '300007.SZ', '300008.SZ', '300009.SZ', '300010.SZ', '300011.SZ', '300012.SZ', '300013.SZ', '300014.SZ', '300015.SZ', '300016.SZ', '300017.SZ', '300018.SZ', '300019.SZ', '300020.SZ', '300021.SZ', '300022.SZ', '300024.SZ', '300025.SZ', '300026.SZ', '300027.SZ', '300029.SZ', '300030.SZ', '300031.SZ', '300032.SZ', '300033.SZ', '300034.SZ', '300035.SZ', '300036.SZ', '300037.SZ', '300039.SZ', '300040.SZ', '300041.SZ', '300042.SZ', '300043.SZ', '300044.SZ', '300045.SZ', '300046.SZ', '300047.SZ', '300048.SZ', '300049.SZ', '300050.SZ', '300051.SZ', '300052.SZ', '300053.SZ', '300054.SZ', '300055.SZ', '300056.SZ', '300057.SZ', '300058.SZ', '300059.SZ', '300061.SZ', '300062.SZ', '300063.SZ', '300065.SZ', '300066.SZ', '300067.SZ', '300068.SZ', '300069.SZ', '300070.SZ', '300071.SZ', '300072.SZ', '300073.SZ', '300074.SZ', '300075.SZ', '300076.SZ', '300077.SZ', '300078.SZ', '300079.SZ', '300080.SZ', '300081.SZ', '300082.SZ', '300083.SZ', '300084.SZ', '300085.SZ', '300086.SZ', '300087.SZ', '300088.SZ', '300091.SZ', '300092.SZ', '300093.SZ', '300094.SZ', '300095.SZ', '300096.SZ', '300097.SZ', '300098.SZ', '300099.SZ', '300100.SZ', '300101.SZ', '300102.SZ', '300103.SZ', '300105.SZ', '300106.SZ', '300107.SZ', '300108.SZ', '300109.SZ', '300110.SZ', '300111.SZ', '300112.SZ', '300113.SZ', '300115.SZ', '300117.SZ', '300118.SZ', '300119.SZ', '300120.SZ', '300121.SZ', '300122.SZ', '300123.SZ', '300124.SZ', '300125.SZ', '300126.SZ', '300127.SZ', '300128.SZ', '300129.SZ', '300130.SZ', '300131.SZ', '300132.SZ', '300133.SZ', '300134.SZ', '300135.SZ', '300136.SZ', '300137.SZ', '300138.SZ', '300139.SZ', '300140.SZ', '300141.SZ', '300142.SZ', '300143.SZ', '300144.SZ', '300145.SZ', '300146.SZ', '300147.SZ', '300148.SZ', '300149.SZ', '300150.SZ', '300151.SZ', '300152.SZ', '300153.SZ', '300154.SZ', '300155.SZ', '300157.SZ', '300158.SZ', '300159.SZ', '300160.SZ', '300161.SZ', '300162.SZ', '300163.SZ', '300164.SZ', '300165.SZ', '300166.SZ', '300167.SZ', '300168.SZ', '300169.SZ', '300170.SZ', '300171.SZ', '300172.SZ', '300173.SZ', '300174.SZ', '300175.SZ', '300176.SZ', '300177.SZ', '300179.SZ', '300180.SZ', '300181.SZ', '300182.SZ', '300183.SZ', '300184.SZ', '300185.SZ', '300187.SZ', '300188.SZ', '300189.SZ', '300190.SZ', '300191.SZ', '300192.SZ', '300193.SZ', '300194.SZ', '300195.SZ', '300196.SZ', '300197.SZ', '300198.SZ', '300199.SZ', '300200.SZ', '300201.SZ', '300203.SZ', '300204.SZ', '300205.SZ', '300206.SZ', '300207.SZ', '300208.SZ', '300209.SZ', '300210.SZ', '300211.SZ', '300212.SZ', '300213.SZ', '300214.SZ', '300215.SZ', '300217.SZ', '300218.SZ', '300219.SZ', '300220.SZ', '300221.SZ', '300222.SZ', '300223.SZ', '300224.SZ', '300225.SZ', '300226.SZ', '300227.SZ', '300228.SZ', '300229.SZ', '300230.SZ', '300231.SZ', '300232.SZ', '300233.SZ', '300234.SZ', '300235.SZ', '300236.SZ', '300237.SZ', '300238.SZ', '300239.SZ', '300240.SZ', '300241.SZ', '300242.SZ', '300243.SZ', '300244.SZ', '300245.SZ', '300246.SZ', '300247.SZ', '300248.SZ', '300249.SZ', '300250.SZ', '300251.SZ', '300252.SZ', '300253.SZ', '300254.SZ', '300255.SZ', '300256.SZ', '300257.SZ', '300258.SZ', '300259.SZ', '300260.SZ', '300261.SZ', '300263.SZ', '300264.SZ', '300265.SZ', '300266.SZ', '300267.SZ', '300268.SZ', '300269.SZ', '300270.SZ', '300271.SZ', '300272.SZ', '300274.SZ', '300275.SZ', '300276.SZ', '300277.SZ', '300278.SZ', '300279.SZ', '300280.SZ', '300281.SZ', '300283.SZ', '300284.SZ', '300285.SZ', '300286.SZ', '300287.SZ', '300288.SZ', '300289.SZ', '300290.SZ', '300291.SZ', '300292.SZ', '300293.SZ', '300294.SZ', '300295.SZ', '300296.SZ', '300298.SZ', '300299.SZ', '300300.SZ', '300301.SZ', '300302.SZ', '300303.SZ', '300304.SZ', '300305.SZ', '300306.SZ', '300307.SZ', '300308.SZ', '300310.SZ', '300311.SZ', '300313.SZ', '300314.SZ', '300315.SZ', '300316.SZ', '300317.SZ', '300318.SZ', '300319.SZ', '300320.SZ', '300321.SZ', '300322.SZ', '300323.SZ', '300324.SZ', '300326.SZ', '300327.SZ', '300328.SZ', '300329.SZ', '300331.SZ', '300332.SZ', '300333.SZ', '300334.SZ', '300335.SZ', '300337.SZ', '300338.SZ', '300339.SZ', '300340.SZ', '300341.SZ', '300342.SZ', '300343.SZ', '300344.SZ', '300345.SZ', '300346.SZ', '300347.SZ', '300348.SZ', '300349.SZ', '300350.SZ', '300351.SZ', '300352.SZ', '300353.SZ', '300354.SZ', '300355.SZ', '300357.SZ', '300358.SZ', '300359.SZ', '300360.SZ', '300363.SZ', '300364.SZ', '300365.SZ', '300366.SZ', '300368.SZ', '300369.SZ', '300370.SZ', '300371.SZ', '300373.SZ', '300374.SZ', '300375.SZ', '300376.SZ', '300377.SZ', '300378.SZ', '300379.SZ', '300380.SZ', '300381.SZ', '300382.SZ', '300383.SZ', '300384.SZ', '300385.SZ', '300386.SZ', '300387.SZ', '300388.SZ', '300389.SZ', '300390.SZ', '300391.SZ', '300393.SZ', '300394.SZ', '300395.SZ', '300396.SZ', '300397.SZ', '300398.SZ', '300399.SZ', '300400.SZ', '300401.SZ', '300402.SZ', '300403.SZ', '300404.SZ', '300405.SZ', '300406.SZ', '300407.SZ', '300408.SZ', '300409.SZ', '300410.SZ', '300411.SZ', '300412.SZ', '300413.SZ', '300414.SZ', '300415.SZ', '300416.SZ', '300417.SZ', '300418.SZ', '300419.SZ', '300420.SZ', '300421.SZ', '300422.SZ', '300423.SZ', '300424.SZ', '300425.SZ', '300426.SZ', '300427.SZ', '300428.SZ', '300429.SZ', '300430.SZ', '300432.SZ', '300433.SZ', '300434.SZ', '300435.SZ', '300436.SZ', '300437.SZ', '300438.SZ', '300439.SZ', '300440.SZ', '300441.SZ', '300442.SZ', '300443.SZ', '300444.SZ', '300445.SZ', '300446.SZ', '300447.SZ', '300448.SZ', '300449.SZ', '300450.SZ', '300451.SZ', '300452.SZ', '300453.SZ', '300454.SZ', '300455.SZ', '300456.SZ', '300457.SZ', '300458.SZ', '300459.SZ', '300460.SZ', '300461.SZ', '300462.SZ', '300463.SZ', '300464.SZ', '300465.SZ', '300466.SZ', '300467.SZ', '300468.SZ', '300469.SZ', '300470.SZ', '300471.SZ', '300472.SZ', '300473.SZ', '300474.SZ', '300475.SZ', '300476.SZ', '300477.SZ', '300478.SZ', '300479.SZ', '300480.SZ', '300481.SZ', '300482.SZ', '300483.SZ', '300484.SZ', '300485.SZ', '300486.SZ', '300487.SZ', '300488.SZ', '300489.SZ', '300490.SZ', '300491.SZ', '300492.SZ', '300493.SZ', '300494.SZ', '300496.SZ', '300497.SZ', '300498.SZ', '300499.SZ', '300500.SZ', '300501.SZ', '300502.SZ', '300503.SZ', '300504.SZ', '300505.SZ', '300506.SZ', '300507.SZ', '300508.SZ', '300509.SZ', '300510.SZ', '300511.SZ', '300512.SZ', '300513.SZ', '300514.SZ', '300515.SZ', '300516.SZ', '300517.SZ', '300518.SZ', '300519.SZ', '300520.SZ', '300521.SZ', '300522.SZ', '300523.SZ', '300525.SZ', '300527.SZ', '300528.SZ', '300529.SZ', '300530.SZ', '300531.SZ', '300532.SZ', '300533.SZ', '300534.SZ', '300535.SZ', '300536.SZ', '300537.SZ', '300538.SZ', '300539.SZ', '300540.SZ', '300541.SZ', '300542.SZ', '300543.SZ', '300545.SZ', '300546.SZ', '300547.SZ', '300548.SZ', '300549.SZ', '300550.SZ', '300551.SZ', '300552.SZ', '300553.SZ', '300554.SZ', '300555.SZ', '300556.SZ', '300557.SZ', '300558.SZ', '300559.SZ', '300560.SZ', '300561.SZ', '300562.SZ', '300563.SZ', '300564.SZ', '300565.SZ', '300566.SZ', '300567.SZ', '300568.SZ', '300569.SZ', '300570.SZ', '300571.SZ', '300572.SZ', '300573.SZ', '300575.SZ', '300576.SZ', '300577.SZ', '300578.SZ', '300579.SZ', '300580.SZ', '300581.SZ', '300582.SZ', '300583.SZ', '300584.SZ', '300585.SZ', '300586.SZ', '300587.SZ', '300588.SZ', '300589.SZ', '300590.SZ', '300591.SZ', '300592.SZ', '300593.SZ', '300594.SZ', '300595.SZ', '300596.SZ', '300597.SZ', '300598.SZ', '300599.SZ', '300600.SZ', '300601.SZ', '300602.SZ', '300603.SZ', '300604.SZ', '300605.SZ', '300606.SZ', '300607.SZ', '300608.SZ', '300609.SZ', '300610.SZ', '300611.SZ', '300612.SZ', '300613.SZ', '300614.SZ', '300615.SZ', '300616.SZ', '300617.SZ', '300618.SZ', '300619.SZ', '300620.SZ', '300621.SZ', '300622.SZ', '300623.SZ', '300624.SZ', '300625.SZ', '300626.SZ', '300627.SZ', '300628.SZ', '300629.SZ', '300630.SZ', '300631.SZ', '300632.SZ', '300633.SZ', '300634.SZ', '300635.SZ', '300636.SZ', '300637.SZ', '300638.SZ', '300639.SZ', '300640.SZ', '300641.SZ', '300642.SZ', '300643.SZ', '300644.SZ', '300645.SZ', '300647.SZ', '300648.SZ', '300649.SZ', '300650.SZ', '300651.SZ', '300652.SZ', '300653.SZ', '300654.SZ', '300655.SZ', '300656.SZ', '300657.SZ', '300658.SZ', '300659.SZ', '300660.SZ', '300661.SZ', '300662.SZ', '300663.SZ', '300664.SZ', '300665.SZ', '300666.SZ', '300667.SZ', '300668.SZ', '300669.SZ', '300670.SZ', '300671.SZ', '300672.SZ', '300673.SZ', '300674.SZ', '300675.SZ', '300676.SZ', '300677.SZ', '300678.SZ', '300679.SZ', '300680.SZ', '300681.SZ', '300682.SZ', '300683.SZ', '300684.SZ', '300685.SZ', '300686.SZ', '300687.SZ', '300688.SZ', '300689.SZ', '300690.SZ', '300691.SZ', '300692.SZ', '300693.SZ', '300694.SZ', '300695.SZ', '300696.SZ', '300697.SZ', '300698.SZ', '300699.SZ', '300700.SZ', '300701.SZ', '300702.SZ', '300703.SZ', '300705.SZ', '300706.SZ', '300707.SZ', '300708.SZ', '300709.SZ', '300710.SZ', '300711.SZ', '300712.SZ', '300713.SZ', '300715.SZ', '300716.SZ', '300717.SZ', '300718.SZ', '300719.SZ', '300720.SZ', '300721.SZ', '300722.SZ', '300723.SZ', '300724.SZ', '300725.SZ', '300726.SZ', '300727.SZ', '300729.SZ', '300730.SZ', '300731.SZ', '300732.SZ', '300733.SZ', '300735.SZ', '300736.SZ', '300737.SZ', '300738.SZ', '300739.SZ', '300740.SZ', '300741.SZ', '300743.SZ', '300745.SZ', '300746.SZ', '300747.SZ', '300748.SZ', '300749.SZ', '300750.SZ', '300751.SZ', '300752.SZ', '300753.SZ', '300755.SZ', '300756.SZ', '300757.SZ', '300758.SZ', '300759.SZ', '300760.SZ', '300761.SZ', '300762.SZ', '300763.SZ', '300765.SZ', '300766.SZ', '300767.SZ', '300768.SZ', '300769.SZ', '300770.SZ', '300771.SZ', '300772.SZ', '300773.SZ', '300774.SZ', '300775.SZ', '300776.SZ', '300777.SZ', '300778.SZ', '300779.SZ', '300780.SZ', '300781.SZ', '300782.SZ', '300783.SZ', '300784.SZ', '300785.SZ', '300786.SZ', '300787.SZ', '300788.SZ', '300789.SZ', '300790.SZ', '300791.SZ', '300792.SZ', '300793.SZ', '300795.SZ', '300796.SZ', '300797.SZ', '300798.SZ', '300800.SZ', '300801.SZ', '300802.SZ', '300803.SZ', '300804.SZ', '300805.SZ', '300806.SZ', '300807.SZ', '300808.SZ', '300809.SZ', '300810.SZ', '300811.SZ', '300812.SZ', '300813.SZ', '300814.SZ', '300815.SZ', '300816.SZ', '300817.SZ', '300818.SZ', '300819.SZ', '300820.SZ', '300821.SZ', '300822.SZ', '300823.SZ', '300824.SZ', '300825.SZ', '300826.SZ', '300827.SZ', '300828.SZ', '300829.SZ', '300830.SZ', '300831.SZ', '300832.SZ', '300833.SZ', '300834.SZ', '300835.SZ', '300836.SZ', '300837.SZ', '300838.SZ', '300839.SZ', '300840.SZ', '300841.SZ', '300842.SZ', '300843.SZ', '300844.SZ', '300845.SZ', '300846.SZ', '300847.SZ', '300848.SZ', '300849.SZ', '300850.SZ', '300851.SZ', '300852.SZ', '300853.SZ', '300854.SZ', '300855.SZ', '300856.SZ', '300857.SZ', '300858.SZ', '300859.SZ', '300860.SZ', '300861.SZ', '300862.SZ', '300863.SZ', '300864.SZ', '300865.SZ', '300866.SZ', '300867.SZ', '300868.SZ', '300869.SZ', '300870.SZ', '300871.SZ', '300872.SZ', '300873.SZ', '300875.SZ', '300876.SZ', '300877.SZ', '300878.SZ', '300879.SZ', '300880.SZ', '300881.SZ', '300882.SZ', '300883.SZ', '300884.SZ', '300885.SZ', '300886.SZ', '300887.SZ', '300888.SZ', '300889.SZ', '300890.SZ', '300891.SZ', '300892.SZ', '300893.SZ', '300894.SZ', '300895.SZ', '300896.SZ', '300897.SZ', '300898.SZ', '300899.SZ', '300900.SZ', '300901.SZ', '300902.SZ', '300903.SZ', '300904.SZ', '300905.SZ', '300906.SZ', '300907.SZ', '300908.SZ', '300909.SZ', '300910.SZ', '300911.SZ', '300912.SZ', '300913.SZ', '300915.SZ', '300916.SZ', '300917.SZ', '300918.SZ', '300919.SZ', '300920.SZ', '300921.SZ', '300922.SZ', '300923.SZ', '300925.SZ', '300926.SZ', '300927.SZ', '300928.SZ', '300929.SZ', '300930.SZ', '300931.SZ', '300932.SZ', '300933.SZ', '300935.SZ', '300936.SZ', '300937.SZ', '300938.SZ', '300939.SZ', '300940.SZ', '300941.SZ', '300942.SZ', '300943.SZ', '300945.SZ', '300946.SZ', '300947.SZ', '300948.SZ', '300949.SZ', '300950.SZ', '300951.SZ', '300952.SZ', '300953.SZ', '300955.SZ', '300956.SZ', '300957.SZ', '300958.SZ', '300959.SZ', '300960.SZ', '300961.SZ', '300962.SZ', '300963.SZ', '300964.SZ', '300965.SZ', '300966.SZ', '300967.SZ', '300968.SZ', '300969.SZ', '300970.SZ', '300971.SZ', '300972.SZ', '300973.SZ', '300975.SZ', '300976.SZ', '300977.SZ', '300978.SZ', '300979.SZ', '300980.SZ', '300981.SZ', '300982.SZ', '300983.SZ', '300984.SZ', '300985.SZ', '300986.SZ', '300987.SZ', '300988.SZ', '300989.SZ', '300990.SZ', '300991.SZ', '300992.SZ', '300993.SZ', '300994.SZ', '300995.SZ', '300996.SZ', '300997.SZ', '300998.SZ', '300999.SZ', '301000.SZ', '301001.SZ', '301002.SZ', '301003.SZ', '301004.SZ', '301005.SZ', '301006.SZ', '301007.SZ', '301008.SZ', '301009.SZ', '301010.SZ', '301011.SZ', '301012.SZ', '301013.SZ', '301015.SZ', '301016.SZ', '301017.SZ', '301018.SZ', '301019.SZ', '301020.SZ', '301021.SZ', '301022.SZ', '301023.SZ', '301024.SZ', '301025.SZ', '301026.SZ', '301027.SZ', '301028.SZ', '301029.SZ', '301030.SZ', '301031.SZ', '301032.SZ', '301033.SZ', '301035.SZ', '301036.SZ', '301037.SZ', '301038.SZ', '301039.SZ', '301040.SZ', '301041.SZ', '301042.SZ', '301043.SZ', '301045.SZ', '301046.SZ', '301047.SZ', '301048.SZ', '301049.SZ', '301050.SZ', '301051.SZ', '301052.SZ', '301053.SZ', '301055.SZ', '301056.SZ', '301057.SZ', '301058.SZ', '301059.SZ', '301060.SZ', '301061.SZ', '301062.SZ', '301063.SZ', '301065.SZ', '301066.SZ', '301067.SZ', '301068.SZ', '301069.SZ', '301070.SZ', '301071.SZ', '301072.SZ', '301073.SZ', '301075.SZ', '301076.SZ', '301077.SZ', '301078.SZ', '301079.SZ', '301080.SZ', '301081.SZ', '301082.SZ', '301083.SZ', '301085.SZ', '301086.SZ', '301087.SZ', '301088.SZ', '301089.SZ', '301090.SZ', '301091.SZ', '301092.SZ', '301093.SZ', '301095.SZ', '301096.SZ', '301097.SZ', '301098.SZ', '301099.SZ', '301100.SZ', '301101.SZ', '301102.SZ', '301103.SZ', '301105.SZ', '301106.SZ', '301107.SZ', '301108.SZ', '301109.SZ', '301110.SZ', '301111.SZ', '301112.SZ', '301113.SZ', '301115.SZ', '301116.SZ', '301117.SZ', '301118.SZ', '301119.SZ', '301120.SZ', '301121.SZ', '301122.SZ', '301123.SZ', '301125.SZ', '301126.SZ', '301127.SZ', '301128.SZ', '301129.SZ', '301130.SZ', '301131.SZ', '301132.SZ', '301133.SZ', '301135.SZ', '301136.SZ', '301137.SZ', '301138.SZ', '301139.SZ', '301141.SZ', '301148.SZ', '301149.SZ', '301150.SZ', '301151.SZ', '301152.SZ', '301153.SZ', '301155.SZ', '301156.SZ', '301157.SZ', '301158.SZ', '301159.SZ', '301160.SZ', '301161.SZ', '301162.SZ', '301163.SZ', '301165.SZ', '301166.SZ', '301167.SZ', '301168.SZ', '301169.SZ', '301170.SZ', '301171.SZ', '301172.SZ', '301173.SZ', '301175.SZ', '301176.SZ', '301177.SZ', '301178.SZ', '301179.SZ', '301180.SZ', '301181.SZ', '301182.SZ', '301183.SZ', '301185.SZ', '301186.SZ', '301187.SZ', '301188.SZ', '301189.SZ', '301190.SZ', '301191.SZ', '301192.SZ', '301193.SZ', '301195.SZ', '301196.SZ', '301197.SZ', '301198.SZ', '301199.SZ', '301200.SZ', '301201.SZ', '301202.SZ', '301203.SZ', '301205.SZ', '301206.SZ', '301207.SZ', '301208.SZ', '301209.SZ', '301210.SZ', '301211.SZ', '301212.SZ', '301213.SZ', '301215.SZ', '301216.SZ', '301217.SZ', '301218.SZ', '301219.SZ', '301220.SZ', '301221.SZ', '301222.SZ', '301223.SZ', '301225.SZ', '301226.SZ', '301227.SZ', '301228.SZ', '301229.SZ', '301230.SZ', '301231.SZ', '301232.SZ', '301233.SZ', '301234.SZ', '301235.SZ', '301236.SZ', '301237.SZ', '301238.SZ', '301239.SZ', '301246.SZ', '301248.SZ', '301251.SZ', '301252.SZ', '301255.SZ', '301256.SZ', '301257.SZ', '301258.SZ', '301259.SZ', '301260.SZ', '301261.SZ', '301262.SZ', '301263.SZ', '301265.SZ', '301266.SZ', '301267.SZ', '301268.SZ', '301269.SZ', '301270.SZ', '301272.SZ', '301273.SZ', '301275.SZ', '301276.SZ', '301277.SZ', '301278.SZ', '301279.SZ', '301280.SZ', '301281.SZ', '301282.SZ', '301283.SZ', '301285.SZ', '301286.SZ', '301287.SZ', '301288.SZ', '301289.SZ', '301290.SZ', '301291.SZ', '301292.SZ', '301293.SZ', '301295.SZ', '301296.SZ', '301297.SZ', '301298.SZ', '301299.SZ', '301300.SZ', '301301.SZ', '301302.SZ', '301303.SZ', '301305.SZ', '301306.SZ', '301307.SZ', '301308.SZ', '301309.SZ', '301310.SZ', '301311.SZ', '301312.SZ', '301313.SZ', '301314.SZ', '301315.SZ', '301316.SZ', '301317.SZ', '301318.SZ', '301319.SZ', '301320.SZ', '301321.SZ', '301322.SZ', '301323.SZ', '301325.SZ', '301326.SZ', '301327.SZ', '301328.SZ', '301329.SZ', '301330.SZ', '301331.SZ', '301332.SZ', '301333.SZ', '301335.SZ', '301336.SZ', '3013 查看全部
可以运行下面的代码:
def initialize(context):
# 初始化策略
g.security = "600570.SS"
set_universe(g.security)
run_daily(context, func,'20:13')
def handle_data(context, data):
print('公众号:可转债量化分析')
def func(context):
info = get_Ashares(date=None)
print(info)
它会打印沪深A股的代码:
北交所有83开头的,或者找一个北交所的股票代码,在输出里面找一下:
[code]2025-03-12 20:13:00 - INFO - ['600000.SS', '600004.SS', '600006.SS', '600007.SS', '600008.SS', '600009.SS', '600010.SS', '600011.SS', '600012.SS', '600015.SS', '600016.SS', '600017.SS', '600018.SS', '600019.SS', '600020.SS', '600021.SS', '600022.SS', '600023.SS', '600025.SS', '600026.SS', '600027.SS', '600028.SS', '600029.SS', '600030.SS', '600031.SS', '600032.SS', '600033.SS', '600035.SS', '600036.SS', '600037.SS', '600038.SS', '600039.SS', '600048.SS', '600050.SS', '600051.SS', '600052.SS', '600053.SS', '600054.SS', '600055.SS', '600056.SS', '600057.SS', '600058.SS', '600059.SS', '600060.SS', '600061.SS', '600062.SS', '600063.SS', '600064.SS', '600066.SS', '600067.SS', '600070.SS', '600071.SS', '600072.SS', '600073.SS', '600075.SS', '600076.SS', '600078.SS', '600079.SS', '600080.SS', '600081.SS', '600082.SS', '600084.SS', '600085.SS', '600088.SS', '600089.SS', '600094.SS', '600095.SS', '600096.SS', '600097.SS', '600098.SS', '600099.SS', '600100.SS', '600101.SS', '600103.SS', '600104.SS', '600105.SS', '600106.SS', '600107.SS', '600108.SS', '600109.SS', '600110.SS', '600111.SS', '600113.SS', '600114.SS', '600115.SS', '600116.SS', '600117.SS', '600118.SS', '600119.SS', '600120.SS', '600121.SS', '600123.SS', '600125.SS', '600126.SS', '600127.SS', '600128.SS', '600129.SS', '600130.SS', '600131.SS', '600132.SS', '600133.SS', '600135.SS', '600136.SS', '600137.SS', '600138.SS', '600141.SS', '600143.SS', '600148.SS', '600149.SS', '600150.SS', '600151.SS', '600152.SS', '600153.SS', '600155.SS', '600156.SS', '600157.SS', '600158.SS', '600159.SS', '600160.SS', '600161.SS', '600162.SS', '600163.SS', '600165.SS', '600166.SS', '600167.SS', '600168.SS', '600169.SS', '600170.SS', '600171.SS', '600172.SS', '600173.SS', '600176.SS', '600177.SS', '600178.SS', '600179.SS', '600180.SS', '600182.SS', '600183.SS', '600184.SS', '600185.SS', '600186.SS', '600187.SS', '600188.SS', '600189.SS', '600190.SS', '600191.SS', '600192.SS', '600193.SS', '600195.SS', '600196.SS', '600197.SS', '600198.SS', '600199.SS', '600200.SS', '600201.SS', '600202.SS', '600203.SS', '600206.SS', '600207.SS', '600208.SS', '600210.SS', '600211.SS', '600212.SS', '600215.SS', '600216.SS', '600217.SS', '600218.SS', '600219.SS', '600221.SS', '600222.SS', '600223.SS', '600226.SS', '600227.SS', '600228.SS', '600229.SS', '600230.SS', '600231.SS', '600232.SS', '600233.SS', '600234.SS', '600235.SS', '600236.SS', '600237.SS', '600238.SS', '600239.SS', '600241.SS', '600243.SS', '600246.SS', '600248.SS', '600249.SS', '600250.SS', '600251.SS', '600252.SS', '600255.SS', '600256.SS', '600257.SS', '600258.SS', '600259.SS', '600261.SS', '600262.SS', '600265.SS', '600266.SS', '600267.SS', '600268.SS', '600269.SS', '600271.SS', '600272.SS', '600273.SS', '600276.SS', '600278.SS', '600279.SS', '600280.SS', '600281.SS', '600282.SS', '600283.SS', '600284.SS', '600285.SS', '600287.SS', '600288.SS', '600289.SS', '600292.SS', '600293.SS', '600295.SS', '600298.SS', '600299.SS', '600300.SS', '600301.SS', '600302.SS', '600303.SS', '600305.SS', '600307.SS', '600308.SS', '600309.SS', '600310.SS', '600312.SS', '600313.SS', '600315.SS', '600316.SS', '600318.SS', '600319.SS', '600320.SS', '600322.SS', '600323.SS', '600325.SS', '600326.SS', '600327.SS', '600328.SS', '600329.SS', '600330.SS', '600331.SS', '600332.SS', '600333.SS', '600335.SS', '600336.SS', '600337.SS', '600338.SS', '600339.SS', '600340.SS', '600343.SS', '600345.SS', '600346.SS', '600348.SS', '600350.SS', '600351.SS', '600352.SS', '600353.SS', '600354.SS', '600355.SS', '600356.SS', '600358.SS', '600359.SS', '600360.SS', '600361.SS', '600362.SS', '600363.SS', '600365.SS', '600366.SS', '600367.SS', '600368.SS', '600369.SS', '600370.SS', '600371.SS', '600372.SS', '600373.SS', '600375.SS', '600376.SS', '600377.SS', '600378.SS', '600379.SS', '600380.SS', '600381.SS', '600382.SS', '600383.SS', '600386.SS', '600387.SS', '600388.SS', '600389.SS', '600390.SS', '600391.SS', '600392.SS', '600395.SS', '600396.SS', '600397.SS', '600398.SS', '600399.SS', '600400.SS', '600403.SS', '600405.SS', '600406.SS', '600408.SS', '600409.SS', '600410.SS', '600415.SS', '600416.SS', '600418.SS', '600419.SS', '600420.SS', '600421.SS', '600422.SS', '600423.SS', '600425.SS', '600426.SS', '600428.SS', '600429.SS', '600433.SS', '600435.SS', '600436.SS', '600438.SS', '600439.SS', '600444.SS', '600446.SS', '600448.SS', '600449.SS', '600452.SS', '600455.SS', '600456.SS', '600458.SS', '600459.SS', '600460.SS', '600461.SS', '600462.SS', '600463.SS', '600467.SS', '600468.SS', '600469.SS', '600470.SS', '600475.SS', '600476.SS', '600477.SS', '600478.SS', '600479.SS', '600480.SS', '600481.SS', '600482.SS', '600483.SS', '600486.SS', '600487.SS', '600488.SS', '600489.SS', '600490.SS', '600491.SS', '600493.SS', '600495.SS', '600496.SS', '600497.SS', '600498.SS', '600499.SS', '600500.SS', '600501.SS', '600502.SS', '600503.SS', '600505.SS', '600506.SS', '600507.SS', '600508.SS', '600509.SS', '600510.SS', '600511.SS', '600512.SS', '600513.SS', '600515.SS', '600516.SS', '600517.SS', '600518.SS', '600519.SS', '600520.SS', '600521.SS', '600522.SS', '600523.SS', '600525.SS', '600526.SS', '600527.SS', '600528.SS', '600529.SS', '600530.SS', '600531.SS', '600533.SS', '600535.SS', '600536.SS', '600537.SS', '600538.SS', '600539.SS', '600540.SS', '600543.SS', '600545.SS', '600546.SS', '600547.SS', '600548.SS', '600549.SS', '600550.SS', '600551.SS', '600552.SS', '600556.SS', '600557.SS', '600558.SS', '600559.SS', '600560.SS', '600561.SS', '600562.SS', '600563.SS', '600566.SS', '600567.SS', '600568.SS', '600569.SS', '600570.SS', '600571.SS', '600572.SS', '600573.SS', '600575.SS', '600576.SS', '600577.SS', '600578.SS', '600579.SS', '600580.SS', '600581.SS', '600582.SS', '600583.SS', '600584.SS', '600585.SS', '600586.SS', '600587.SS', '600588.SS', '600589.SS', '600590.SS', '600592.SS', '600593.SS', '600594.SS', '600595.SS', '600596.SS', '600597.SS', '600598.SS', '600599.SS', '600600.SS', '600601.SS', '600602.SS', '600603.SS', '600604.SS', '600605.SS', '600606.SS', '600608.SS', '600609.SS', '600610.SS', '600611.SS', '600612.SS', '600613.SS', '600615.SS', '600616.SS', '600617.SS', '600618.SS', '600619.SS', '600620.SS', '600621.SS', '600622.SS', '600623.SS', '600624.SS', '600626.SS', '600628.SS', '600629.SS', '600630.SS', '600633.SS', '600635.SS', '600636.SS', '600637.SS', '600638.SS', '600639.SS', '600640.SS', '600641.SS', '600642.SS', '600643.SS', '600644.SS', '600645.SS', '600648.SS', '600649.SS', '600650.SS', '600651.SS', '600653.SS', '600654.SS', '600655.SS', '600657.SS', '600658.SS', '600660.SS', '600661.SS', '600662.SS', '600663.SS', '600664.SS', '600665.SS', '600666.SS', '600667.SS', '600668.SS', '600671.SS', '600673.SS', '600674.SS', '600675.SS', '600676.SS', '600678.SS', '600679.SS', '600681.SS', '600682.SS', '600683.SS', '600684.SS', '600685.SS', '600686.SS', '600688.SS', '600689.SS', '600690.SS', '600691.SS', '600692.SS', '600693.SS', '600694.SS', '600696.SS', '600697.SS', '600698.SS', '600699.SS', '600702.SS', '600703.SS', '600704.SS', '600705.SS', '600706.SS', '600707.SS', '600708.SS', '600710.SS', '600711.SS', '600712.SS', '600713.SS', '600714.SS', '600715.SS', '600716.SS', '600717.SS', '600718.SS', '600719.SS', '600720.SS', '600721.SS', '600722.SS', '600724.SS', '600725.SS', '600726.SS', '600727.SS', '600728.SS', '600729.SS', '600730.SS', '600731.SS', '600732.SS', '600733.SS', '600734.SS', '600735.SS', '600736.SS', '600737.SS', '600738.SS', '600739.SS', '600740.SS', '600741.SS', '600742.SS', '600743.SS', '600744.SS', '600745.SS', '600746.SS', '600748.SS', '600749.SS', '600750.SS', '600751.SS', '600753.SS', '600754.SS', '600755.SS', '600756.SS', '600757.SS', '600758.SS', '600759.SS', '600760.SS', '600761.SS', '600763.SS', '600764.SS', '600765.SS', '600768.SS', '600769.SS', '600770.SS', '600771.SS', '600773.SS', '600774.SS', '600775.SS', '600776.SS', '600777.SS', '600778.SS', '600779.SS', '600780.SS', '600782.SS', '600783.SS', '600784.SS', '600785.SS', '600787.SS', '600789.SS', '600790.SS', '600791.SS', '600792.SS', '600793.SS', '600794.SS', '600795.SS', '600796.SS', '600797.SS', '600798.SS', '600800.SS', '600801.SS', '600802.SS', '600803.SS', '600804.SS', '600805.SS', '600807.SS', '600808.SS', '600809.SS', '600810.SS', '600811.SS', '600812.SS', '600814.SS', '600815.SS', '600816.SS', '600817.SS', '600818.SS', '600819.SS', '600820.SS', '600821.SS', '600822.SS', '600824.SS', '600825.SS', '600826.SS', '600827.SS', '600828.SS', '600829.SS', '600830.SS', '600831.SS', '600833.SS', '600834.SS', '600835.SS', '600838.SS', '600839.SS', '600841.SS', '600843.SS', '600844.SS', '600845.SS', '600846.SS', '600847.SS', '600848.SS', '600850.SS', '600851.SS', '600853.SS', '600854.SS', '600855.SS', '600857.SS', '600858.SS', '600859.SS', '600860.SS', '600861.SS', '600862.SS', '600863.SS', '600864.SS', '600865.SS', '600866.SS', '600867.SS', '600868.SS', '600869.SS', '600871.SS', '600872.SS', '600873.SS', '600874.SS', '600875.SS', '600876.SS', '600877.SS', '600879.SS', '600880.SS', '600881.SS', '600882.SS', '600883.SS', '600884.SS', '600885.SS', '600886.SS', '600887.SS', '600888.SS', '600889.SS', '600892.SS', '600893.SS', '600894.SS', '600895.SS', '600897.SS', '600900.SS', '600901.SS', '600903.SS', '600905.SS', '600906.SS', '600908.SS', '600909.SS', '600916.SS', '600917.SS', '600918.SS', '600919.SS', '600925.SS', '600926.SS', '600927.SS', '600928.SS', '600929.SS', '600933.SS', '600935.SS', '600936.SS', '600938.SS', '600939.SS', '600941.SS', '600955.SS', '600956.SS', '600958.SS', '600959.SS', '600960.SS', '600961.SS', '600962.SS', '600963.SS', '600965.SS', '600966.SS', '600967.SS', '600968.SS', '600969.SS', '600970.SS', '600971.SS', '600973.SS', '600975.SS', '600976.SS', '600977.SS', '600979.SS', '600980.SS', '600981.SS', '600982.SS', '600983.SS', '600984.SS', '600985.SS', '600986.SS', '600987.SS', '600988.SS', '600989.SS', '600990.SS', '600992.SS', '600993.SS', '600995.SS', '600996.SS', '600997.SS', '600998.SS', '600999.SS', '601000.SS', '601001.SS', '601002.SS', '601003.SS', '601005.SS', '601006.SS', '601007.SS', '601008.SS', '601009.SS', '601010.SS', '601011.SS', '601012.SS', '601015.SS', '601016.SS', '601018.SS', '601019.SS', '601020.SS', '601021.SS', '601022.SS', '601028.SS', '601033.SS', '601038.SS', '601058.SS', '601059.SS', '601061.SS', '601065.SS', '601066.SS', '601068.SS', '601069.SS', '601077.SS', '601083.SS', '601086.SS', '601088.SS', '601089.SS', '601096.SS', '601098.SS', '601099.SS', '601100.SS', '601101.SS', '601106.SS', '601107.SS', '601108.SS', '601111.SS', '601113.SS', '601116.SS', '601117.SS', '601118.SS', '601121.SS', '601126.SS', '601127.SS', '601128.SS', '601133.SS', '601136.SS', '601137.SS', '601138.SS', '601139.SS', '601155.SS', '601156.SS', '601158.SS', '601162.SS', '601163.SS', '601166.SS', '601168.SS', '601169.SS', '601177.SS', '601179.SS', '601186.SS', '601187.SS', '601188.SS', '601198.SS', '601199.SS', '601200.SS', '601208.SS', '601211.SS', '601212.SS', '601216.SS', '601218.SS', '601222.SS', '601225.SS', '601226.SS', '601228.SS', '601229.SS', '601231.SS', '601233.SS', '601236.SS', '601238.SS', '601279.SS', '601288.SS', '601298.SS', '601311.SS', '601318.SS', '601319.SS', '601326.SS', '601328.SS', '601330.SS', '601333.SS', '601336.SS', '601339.SS', '601360.SS', '601366.SS', '601368.SS', '601369.SS', '601375.SS', '601377.SS', '601388.SS', '601390.SS', '601398.SS', '601399.SS', '601456.SS', '601500.SS', '601512.SS', '601515.SS', '601518.SS', '601519.SS', '601528.SS', '601555.SS', '601566.SS', '601567.SS', '601568.SS', '601577.SS', '601579.SS', '601588.SS', '601595.SS', '601598.SS', '601599.SS', '601600.SS', '601601.SS', '601606.SS', '601607.SS', '601608.SS', '601609.SS', '601611.SS', '601615.SS', '601616.SS', '601618.SS', '601619.SS', '601628.SS', '601633.SS', '601636.SS', '601658.SS', '601665.SS', '601666.SS', '601668.SS', '601669.SS', '601677.SS', '601678.SS', '601686.SS', '601688.SS', '601689.SS', '601696.SS', '601698.SS', '601699.SS', '601700.SS', '601702.SS', '601717.SS', '601718.SS', '601727.SS', '601728.SS', '601766.SS', '601777.SS', '601778.SS', '601788.SS', '601789.SS', '601798.SS', '601799.SS', '601800.SS', '601801.SS', '601808.SS', '601811.SS', '601816.SS', '601818.SS', '601825.SS', '601827.SS', '601828.SS', '601838.SS', '601857.SS', '601858.SS', '601860.SS', '601865.SS', '601866.SS', '601868.SS', '601869.SS', '601872.SS', '601877.SS', '601878.SS', '601880.SS', '601881.SS', '601882.SS', '601886.SS', '601888.SS', '601890.SS', '601898.SS', '601899.SS', '601900.SS', '601901.SS', '601908.SS', '601916.SS', '601918.SS', '601919.SS', '601921.SS', '601928.SS', '601929.SS', '601933.SS', '601939.SS', '601949.SS', '601952.SS', '601956.SS', '601958.SS', '601963.SS', '601965.SS', '601966.SS', '601968.SS', '601969.SS', '601975.SS', '601985.SS', '601988.SS', '601989.SS', '601990.SS', '601991.SS', '601992.SS', '601995.SS', '601996.SS', '601997.SS', '601998.SS', '601999.SS', '603000.SS', '603001.SS', '603002.SS', '603003.SS', '603004.SS', '603005.SS', '603006.SS', '603007.SS', '603008.SS', '603009.SS', '603010.SS', '603011.SS', '603012.SS', '603013.SS', '603015.SS', '603016.SS', '603017.SS', '603018.SS', '603019.SS', '603020.SS', '603021.SS', '603022.SS', '603023.SS', '603025.SS', '603026.SS', '603027.SS', '603028.SS', '603029.SS', '603030.SS', '603031.SS', '603032.SS', '603033.SS', '603035.SS', '603036.SS', '603037.SS', '603038.SS', '603039.SS', '603040.SS', '603041.SS', '603042.SS', '603043.SS', '603045.SS', '603048.SS', '603050.SS', '603051.SS', '603052.SS', '603053.SS', '603055.SS', '603056.SS', '603057.SS', '603058.SS', '603059.SS', '603060.SS', '603061.SS', '603062.SS', '603063.SS', '603065.SS', '603066.SS', '603067.SS', '603068.SS', '603069.SS', '603070.SS', '603071.SS', '603072.SS', '603073.SS', '603075.SS', '603076.SS', '603077.SS', '603078.SS', '603079.SS', '603080.SS', '603081.SS', '603082.SS', '603083.SS', '603085.SS', '603086.SS', '603087.SS', '603088.SS', '603089.SS', '603090.SS', '603091.SS', '603093.SS', '603095.SS', '603096.SS', '603097.SS', '603098.SS', '603099.SS', '603100.SS', '603101.SS', '603102.SS', '603103.SS', '603105.SS', '603106.SS', '603107.SS', '603108.SS', '603109.SS', '603110.SS', '603111.SS', '603112.SS', '603113.SS', '603115.SS', '603116.SS', '603117.SS', '603118.SS', '603119.SS', '603121.SS', '603122.SS', '603123.SS', '603125.SS', '603126.SS', '603127.SS', '603128.SS', '603129.SS', '603130.SS', '603131.SS', '603132.SS', '603135.SS', '603136.SS', '603137.SS', '603138.SS', '603139.SS', '603150.SS', '603151.SS', '603153.SS', '603155.SS', '603156.SS', '603158.SS', '603159.SS', '603160.SS', '603161.SS', '603162.SS', '603163.SS', '603165.SS', '603166.SS', '603167.SS', '603168.SS', '603169.SS', '603170.SS', '603171.SS', '603172.SS', '603173.SS', '603176.SS', '603177.SS', '603178.SS', '603179.SS', '603180.SS', '603181.SS', '603182.SS', '603183.SS', '603185.SS', '603186.SS', '603187.SS', '603188.SS', '603189.SS', '603190.SS', '603191.SS', '603192.SS', '603193.SS', '603194.SS', '603195.SS', '603196.SS', '603197.SS', '603198.SS', '603199.SS', '603200.SS', '603201.SS', '603203.SS', '603205.SS', '603206.SS', '603207.SS', '603208.SS', '603209.SS', '603211.SS', '603212.SS', '603213.SS', '603214.SS', '603215.SS', '603216.SS', '603217.SS', '603218.SS', '603219.SS', '603220.SS', '603221.SS', '603222.SS', '603223.SS', '603225.SS', '603226.SS', '603227.SS', '603228.SS', '603229.SS', '603230.SS', '603231.SS', '603232.SS', '603233.SS', '603235.SS', '603236.SS', '603237.SS', '603238.SS', '603239.SS', '603255.SS', '603256.SS', '603258.SS', '603259.SS', '603260.SS', '603261.SS', '603266.SS', '603267.SS', '603268.SS', '603269.SS', '603270.SS', '603271.SS', '603272.SS', '603273.SS', '603275.SS', '603276.SS', '603277.SS', '603278.SS', '603279.SS', '603280.SS', '603281.SS', '603282.SS', '603283.SS', '603285.SS', '603286.SS', '603288.SS', '603289.SS', '603290.SS', '603291.SS', '603296.SS', '603297.SS', '603298.SS', '603299.SS', '603300.SS', '603301.SS', '603303.SS', '603305.SS', '603306.SS', '603307.SS', '603308.SS', '603309.SS', '603310.SS', '603311.SS', '603312.SS', '603313.SS', '603315.SS', '603316.SS', '603317.SS', '603318.SS', '603319.SS', '603320.SS', '603321.SS', '603322.SS', '603323.SS', '603324.SS', '603325.SS', '603326.SS', '603327.SS', '603328.SS', '603329.SS', '603330.SS', '603331.SS', '603332.SS', '603333.SS', '603335.SS', '603336.SS', '603337.SS', '603338.SS', '603339.SS', '603341.SS', '603344.SS', '603345.SS', '603348.SS', '603350.SS', '603351.SS', '603353.SS', '603355.SS', '603356.SS', '603357.SS', '603358.SS', '603359.SS', '603360.SS', '603363.SS', '603365.SS', '603366.SS', '603367.SS', '603368.SS', '603369.SS', '603373.SS', '603375.SS', '603377.SS', '603378.SS', '603379.SS', '603380.SS', '603381.SS', '603383.SS', '603385.SS', '603386.SS', '603387.SS', '603388.SS', '603389.SS', '603390.SS', '603391.SS', '603392.SS', '603393.SS', '603395.SS', '603396.SS', '603398.SS', '603399.SS', '603408.SS', '603409.SS', '603416.SS', '603421.SS', '603429.SS', '603439.SS', '603444.SS', '603456.SS', '603458.SS', '603466.SS', '603477.SS', '603486.SS', '603488.SS', '603489.SS', '603496.SS', '603499.SS', '603500.SS', '603501.SS', '603505.SS', '603506.SS', '603507.SS', '603508.SS', '603511.SS', '603515.SS', '603516.SS', '603517.SS', '603518.SS', '603519.SS', '603520.SS', '603527.SS', '603528.SS', '603529.SS', '603530.SS', '603533.SS', '603535.SS', '603536.SS', '603538.SS', '603551.SS', '603556.SS', '603557.SS', '603558.SS', '603559.SS', '603565.SS', '603566.SS', '603567.SS', '603568.SS', '603569.SS', '603577.SS', '603578.SS', '603579.SS', '603580.SS', '603583.SS', '603585.SS', '603586.SS', '603587.SS', '603588.SS', '603589.SS', '603590.SS', '603595.SS', '603596.SS', '603598.SS', '603599.SS', '603600.SS', '603601.SS', '603602.SS', '603605.SS', '603606.SS', '603607.SS', '603608.SS', '603609.SS', '603610.SS', '603611.SS', '603612.SS', '603613.SS', '603615.SS', '603616.SS', '603617.SS', '603618.SS', '603619.SS', '603626.SS', '603628.SS', '603629.SS', '603630.SS', '603633.SS', '603636.SS', '603637.SS', '603638.SS', '603639.SS', '603648.SS', '603650.SS', '603655.SS', '603656.SS', '603657.SS', '603658.SS', '603659.SS', '603660.SS', '603661.SS', '603662.SS', '603663.SS', '603665.SS', '603666.SS', '603667.SS', '603668.SS', '603669.SS', '603676.SS', '603677.SS', '603678.SS', '603679.SS', '603680.SS', '603681.SS', '603682.SS', '603683.SS', '603685.SS', '603686.SS', '603687.SS', '603688.SS', '603689.SS', '603690.SS', '603693.SS', '603696.SS', '603697.SS', '603698.SS', '603699.SS', '603700.SS', '603701.SS', '603703.SS', '603706.SS', '603707.SS', '603708.SS', '603709.SS', '603711.SS', '603712.SS', '603713.SS', '603716.SS', '603717.SS', '603718.SS', '603719.SS', '603721.SS', '603722.SS', '603725.SS', '603726.SS', '603727.SS', '603728.SS', '603729.SS', '603730.SS', '603733.SS', '603737.SS', '603738.SS', '603739.SS', '603755.SS', '603757.SS', '603758.SS', '603759.SS', '603766.SS', '603767.SS', '603768.SS', '603773.SS', '603776.SS', '603777.SS', '603778.SS', '603779.SS', '603786.SS', '603787.SS', '603788.SS', '603789.SS', '603790.SS', '603797.SS', '603798.SS', '603799.SS', '603800.SS', '603801.SS', '603803.SS', '603806.SS', '603808.SS', '603809.SS', '603810.SS', '603811.SS', '603813.SS', '603815.SS', '603816.SS', '603817.SS', '603818.SS', '603819.SS', '603822.SS', '603823.SS', '603825.SS', '603826.SS', '603828.SS', '603829.SS', '603833.SS', '603836.SS', '603838.SS', '603839.SS', '603843.SS', '603848.SS', '603855.SS', '603856.SS', '603858.SS', '603859.SS', '603860.SS', '603861.SS', '603863.SS', '603866.SS', '603867.SS', '603868.SS', '603869.SS', '603871.SS', '603876.SS', '603877.SS', '603878.SS', '603879.SS', '603880.SS', '603881.SS', '603882.SS', '603883.SS', '603885.SS', '603886.SS', '603887.SS', '603888.SS', '603889.SS', '603890.SS', '603893.SS', '603895.SS', '603896.SS', '603897.SS', '603898.SS', '603899.SS', '603900.SS', '603901.SS', '603903.SS', '603906.SS', '603908.SS', '603909.SS', '603912.SS', '603915.SS', '603916.SS', '603917.SS', '603918.SS', '603919.SS', '603920.SS', '603922.SS', '603926.SS', '603927.SS', '603928.SS', '603929.SS', '603931.SS', '603933.SS', '603936.SS', '603937.SS', '603938.SS', '603939.SS', '603948.SS', '603949.SS', '603950.SS', '603955.SS', '603956.SS', '603958.SS', '603959.SS', '603960.SS', '603963.SS', '603966.SS', '603967.SS', '603968.SS', '603969.SS', '603970.SS', '603976.SS', '603977.SS', '603978.SS', '603979.SS', '603980.SS', '603982.SS', '603983.SS', '603985.SS', '603986.SS', '603987.SS', '603988.SS', '603989.SS', '603990.SS', '603991.SS', '603992.SS', '603993.SS', '603995.SS', '603997.SS', '603998.SS', '603999.SS', '605001.SS', '605003.SS', '605005.SS', '605006.SS', '605007.SS', '605008.SS', '605009.SS', '605011.SS', '605016.SS', '605018.SS', '605020.SS', '605028.SS', '605033.SS', '605050.SS', '605055.SS', '605056.SS', '605058.SS', '605060.SS', '605066.SS', '605068.SS', '605069.SS', '605077.SS', '605080.SS', '605081.SS', '605086.SS', '605088.SS', '605089.SS', '605090.SS', '605098.SS', '605099.SS', '605100.SS', '605108.SS', '605111.SS', '605116.SS', '605117.SS', '605118.SS', '605122.SS', '605123.SS', '605128.SS', '605133.SS', '605136.SS', '605138.SS', '605151.SS', '605155.SS', '605158.SS', '605162.SS', '605166.SS', '605167.SS', '605168.SS', '605169.SS', '605177.SS', '605178.SS', '605179.SS', '605180.SS', '605183.SS', '605186.SS', '605188.SS', '605189.SS', '605196.SS', '605198.SS', '605199.SS', '605208.SS', '605218.SS', '605222.SS', '605228.SS', '605255.SS', '605258.SS', '605259.SS', '605266.SS', '605268.SS', '605277.SS', '605286.SS', '605287.SS', '605288.SS', '605289.SS', '605296.SS', '605298.SS', '605299.SS', '605300.SS', '605303.SS', '605305.SS', '605318.SS', '605319.SS', '605333.SS', '605336.SS', '605337.SS', '605338.SS', '605339.SS', '605358.SS', '605365.SS', '605366.SS', '605368.SS', '605369.SS', '605376.SS', '605377.SS', '605378.SS', '605388.SS', '605389.SS', '605398.SS', '605399.SS', '605488.SS', '605499.SS', '605500.SS', '605507.SS', '605555.SS', '605566.SS', '605567.SS', '605577.SS', '605580.SS', '605588.SS', '605589.SS', '605598.SS', '605599.SS', '000001.SZ', '000002.SZ', '000004.SZ', '000006.SZ', '000007.SZ', '000008.SZ', '000009.SZ', '000010.SZ', '000011.SZ', '000012.SZ', '000014.SZ', '000016.SZ', '000017.SZ', '000019.SZ', '000020.SZ', '000021.SZ', '000025.SZ', '000026.SZ', '000027.SZ', '000028.SZ', '000029.SZ', '000030.SZ', '000031.SZ', '000032.SZ', '000034.SZ', '000035.SZ', '000036.SZ', '000037.SZ', '000039.SZ', '000040.SZ', '000042.SZ', '000045.SZ', '000048.SZ', '000049.SZ', '000050.SZ', '000055.SZ', '000056.SZ', '000058.SZ', '000059.SZ', '000060.SZ', '000061.SZ', '000062.SZ', '000063.SZ', '000065.SZ', '000066.SZ', '000068.SZ', '000069.SZ', '000070.SZ', '000078.SZ', '000088.SZ', '000089.SZ', '000090.SZ', '000096.SZ', '000099.SZ', '000100.SZ', '000151.SZ', '000153.SZ', '000155.SZ', '000156.SZ', '000157.SZ', '000158.SZ', '000159.SZ', '000166.SZ', '000301.SZ', '000333.SZ', '000338.SZ', '000400.SZ', '000401.SZ', '000402.SZ', '000403.SZ', '000404.SZ', '000407.SZ', '000408.SZ', '000409.SZ', '000410.SZ', '000411.SZ', '000415.SZ', '000417.SZ', '000419.SZ', '000420.SZ', '000421.SZ', '000422.SZ', '000423.SZ', '000425.SZ', '000426.SZ', '000428.SZ', '000429.SZ', '000430.SZ', '000488.SZ', '000498.SZ', '000501.SZ', '000503.SZ', '000504.SZ', '000505.SZ', '000506.SZ', '000507.SZ', '000509.SZ', '000510.SZ', '000513.SZ', '000514.SZ', '000516.SZ', '000517.SZ', '000518.SZ', '000519.SZ', '000520.SZ', '000521.SZ', '000523.SZ', '000524.SZ', '000525.SZ', '000526.SZ', '000528.SZ', '000529.SZ', '000530.SZ', '000531.SZ', '000532.SZ', '000533.SZ', '000534.SZ', '000536.SZ', '000537.SZ', '000538.SZ', '000539.SZ', '000541.SZ', '000543.SZ', '000544.SZ', '000545.SZ', '000546.SZ', '000547.SZ', '000548.SZ', '000550.SZ', '000551.SZ', '000552.SZ', '000553.SZ', '000554.SZ', '000555.SZ', '000557.SZ', '000558.SZ', '000559.SZ', '000560.SZ', '000561.SZ', '000563.SZ', '000564.SZ', '000565.SZ', '000566.SZ', '000567.SZ', '000568.SZ', '000570.SZ', '000571.SZ', '000572.SZ', '000573.SZ', '000576.SZ', '000581.SZ', '000582.SZ', '000584.SZ', '000586.SZ', '000589.SZ', '000590.SZ', '000591.SZ', '000592.SZ', '000593.SZ', '000595.SZ', '000596.SZ', '000597.SZ', '000598.SZ', '000599.SZ', '000600.SZ', '000601.SZ', '000603.SZ', '000605.SZ', '000607.SZ', '000608.SZ', '000609.SZ', '000610.SZ', '000612.SZ', '000615.SZ', '000617.SZ', '000619.SZ', '000620.SZ', '000622.SZ', '000623.SZ', '000625.SZ', '000626.SZ', '000627.SZ', '000628.SZ', '000629.SZ', '000630.SZ', '000631.SZ', '000632.SZ', '000633.SZ', '000635.SZ', '000636.SZ', '000637.SZ', '000638.SZ', '000639.SZ', '000650.SZ', '000651.SZ', '000652.SZ', '000655.SZ', '000656.SZ', '000657.SZ', '000659.SZ', '000661.SZ', '000663.SZ', '000665.SZ', '000668.SZ', '000669.SZ', '000670.SZ', '000672.SZ', '000676.SZ', '000677.SZ', '000678.SZ', '000679.SZ', '000680.SZ', '000681.SZ', '000682.SZ', '000683.SZ', '000685.SZ', '000686.SZ', '000688.SZ', '000690.SZ', '000691.SZ', '000692.SZ', '000695.SZ', '000697.SZ', '000698.SZ', '000700.SZ', '000701.SZ', '000702.SZ', '000703.SZ', '000705.SZ', '000707.SZ', '000708.SZ', '000709.SZ', '000710.SZ', '000711.SZ', '000712.SZ', '000713.SZ', '000715.SZ', '000716.SZ', '000717.SZ', '000718.SZ', '000719.SZ', '000720.SZ', '000721.SZ', '000722.SZ', '000723.SZ', '000725.SZ', '000726.SZ', '000727.SZ', '000728.SZ', '000729.SZ', '000731.SZ', '000733.SZ', '000735.SZ', '000736.SZ', '000737.SZ', '000738.SZ', '000739.SZ', '000750.SZ', '000751.SZ', '000752.SZ', '000753.SZ', '000755.SZ', '000756.SZ', '000757.SZ', '000758.SZ', '000759.SZ', '000761.SZ', '000762.SZ', '000766.SZ', '000767.SZ', '000768.SZ', '000776.SZ', '000777.SZ', '000778.SZ', '000779.SZ', '000782.SZ', '000783.SZ', '000785.SZ', '000786.SZ', '000788.SZ', '000789.SZ', '000790.SZ', '000791.SZ', '000792.SZ', '000793.SZ', '000795.SZ', '000796.SZ', '000797.SZ', '000798.SZ', '000799.SZ', '000800.SZ', '000801.SZ', '000802.SZ', '000803.SZ', '000807.SZ', '000809.SZ', '000810.SZ', '000811.SZ', '000812.SZ', '000813.SZ', '000815.SZ', '000816.SZ', '000818.SZ', '000819.SZ', '000820.SZ', '000821.SZ', '000822.SZ', '000823.SZ', '000825.SZ', '000826.SZ', '000828.SZ', '000829.SZ', '000830.SZ', '000831.SZ', '000833.SZ', '000837.SZ', '000838.SZ', '000839.SZ', '000848.SZ', '000850.SZ', '000851.SZ', '000852.SZ', '000856.SZ', '000858.SZ', '000859.SZ', '000860.SZ', '000862.SZ', '000863.SZ', '000868.SZ', '000869.SZ', '000875.SZ', '000876.SZ', '000877.SZ', '000878.SZ', '000880.SZ', '000881.SZ', '000882.SZ', '000883.SZ', '000885.SZ', '000886.SZ', '000887.SZ', '000888.SZ', '000889.SZ', '000890.SZ', '000892.SZ', '000893.SZ', '000895.SZ', '000897.SZ', '000898.SZ', '000899.SZ', '000900.SZ', '000901.SZ', '000902.SZ', '000903.SZ', '000905.SZ', '000906.SZ', '000908.SZ', '000909.SZ', '000910.SZ', '000911.SZ', '000912.SZ', '000913.SZ', '000915.SZ', '000917.SZ', '000919.SZ', '000920.SZ', '000921.SZ', '000922.SZ', '000923.SZ', '000925.SZ', '000926.SZ', '000927.SZ', '000928.SZ', '000929.SZ', '000930.SZ', '000931.SZ', '000932.SZ', '000933.SZ', '000935.SZ', '000936.SZ', '000937.SZ', '000938.SZ', '000948.SZ', '000949.SZ', '000950.SZ', '000951.SZ', '000952.SZ', '000953.SZ', '000955.SZ', '000957.SZ', '000958.SZ', '000959.SZ', '000960.SZ', '000962.SZ', '000963.SZ', '000965.SZ', '000966.SZ', '000967.SZ', '000968.SZ', '000969.SZ', '000970.SZ', '000972.SZ', '000973.SZ', '000975.SZ', '000977.SZ', '000978.SZ', '000980.SZ', '000981.SZ', '000983.SZ', '000985.SZ', '000987.SZ', '000988.SZ', '000989.SZ', '000990.SZ', '000993.SZ', '000995.SZ', '000997.SZ', '000998.SZ', '000999.SZ', '001201.SZ', '001202.SZ', '001203.SZ', '001205.SZ', '001206.SZ', '001207.SZ', '001208.SZ', '001209.SZ', '001210.SZ', '001211.SZ', '001212.SZ', '001213.SZ', '001215.SZ', '001216.SZ', '001217.SZ', '001218.SZ', '001219.SZ', '001222.SZ', '001223.SZ', '001225.SZ', '001226.SZ', '001227.SZ', '001228.SZ', '001229.SZ', '001230.SZ', '001231.SZ', '001234.SZ', '001236.SZ', '001238.SZ', '001239.SZ', '001255.SZ', '001256.SZ', '001258.SZ', '001259.SZ', '001260.SZ', '001266.SZ', '001267.SZ', '001268.SZ', '001269.SZ', '001270.SZ', '001277.SZ', '001278.SZ', '001279.SZ', '001282.SZ', '001283.SZ', '001286.SZ', '001287.SZ', '001288.SZ', '001289.SZ', '001296.SZ', '001298.SZ', '001299.SZ', '001300.SZ', '001301.SZ', '001306.SZ', '001308.SZ', '001309.SZ', '001311.SZ', '001313.SZ', '001314.SZ', '001316.SZ', '001317.SZ', '001318.SZ', '001319.SZ', '001322.SZ', '001323.SZ', '001324.SZ', '001326.SZ', '001328.SZ', '001330.SZ', '001331.SZ', '001332.SZ', '001333.SZ', '001336.SZ', '001337.SZ', '001338.SZ', '001339.SZ', '001356.SZ', '001358.SZ', '001359.SZ', '001360.SZ', '001366.SZ', '001367.SZ', '001368.SZ', '001373.SZ', '001376.SZ', '001378.SZ', '001379.SZ', '001380.SZ', '001387.SZ', '001389.SZ', '001391.SZ', '001395.SZ', '001696.SZ', '001872.SZ', '001896.SZ', '001914.SZ', '001965.SZ', '001979.SZ', '002001.SZ', '002003.SZ', '002004.SZ', '002005.SZ', '002006.SZ', '002007.SZ', '002008.SZ', '002009.SZ', '002010.SZ', '002011.SZ', '002012.SZ', '002014.SZ', '002015.SZ', '002016.SZ', '002017.SZ', '002019.SZ', '002020.SZ', '002021.SZ', '002022.SZ', '002023.SZ', '002024.SZ', '002025.SZ', '002026.SZ', '002027.SZ', '002028.SZ', '002029.SZ', '002030.SZ', '002031.SZ', '002032.SZ', '002033.SZ', '002034.SZ', '002035.SZ', '002036.SZ', '002037.SZ', '002038.SZ', '002039.SZ', '002040.SZ', '002041.SZ', '002042.SZ', '002043.SZ', '002044.SZ', '002045.SZ', '002046.SZ', '002047.SZ', '002048.SZ', '002049.SZ', '002050.SZ', '002051.SZ', '002052.SZ', '002053.SZ', '002054.SZ', '002055.SZ', '002056.SZ', '002057.SZ', '002058.SZ', '002059.SZ', '002060.SZ', '002061.SZ', '002062.SZ', '002063.SZ', '002064.SZ', '002065.SZ', '002066.SZ', '002067.SZ', '002068.SZ', '002069.SZ', '002072.SZ', '002073.SZ', '002074.SZ', '002075.SZ', '002076.SZ', '002077.SZ', '002078.SZ', '002079.SZ', '002080.SZ', '002081.SZ', '002082.SZ', '002083.SZ', '002084.SZ', '002085.SZ', '002086.SZ', '002088.SZ', '002090.SZ', '002091.SZ', '002092.SZ', '002093.SZ', '002094.SZ', '002095.SZ', '002096.SZ', '002097.SZ', '002098.SZ', '002099.SZ', '002100.SZ', '002101.SZ', '002102.SZ', '002103.SZ', '002104.SZ', '002105.SZ', '002106.SZ', '002107.SZ', '002108.SZ', '002109.SZ', '002110.SZ', '002111.SZ', '002112.SZ', '002114.SZ', '002115.SZ', '002116.SZ', '002117.SZ', '002119.SZ', '002120.SZ', '002121.SZ', '002122.SZ', '002123.SZ', '002124.SZ', '002125.SZ', '002126.SZ', '002127.SZ', '002128.SZ', '002129.SZ', '002130.SZ', '002131.SZ', '002132.SZ', '002133.SZ', '002134.SZ', '002135.SZ', '002136.SZ', '002137.SZ', '002138.SZ', '002139.SZ', '002140.SZ', '002141.SZ', '002142.SZ', '002144.SZ', '002145.SZ', '002146.SZ', '002148.SZ', '002149.SZ', '002150.SZ', '002151.SZ', '002152.SZ', '002153.SZ', '002154.SZ', '002155.SZ', '002156.SZ', '002157.SZ', '002158.SZ', '002159.SZ', '002160.SZ', '002161.SZ', '002162.SZ', '002163.SZ', '002164.SZ', '002165.SZ', '002166.SZ', '002167.SZ', '002168.SZ', '002169.SZ', '002170.SZ', '002171.SZ', '002172.SZ', '002173.SZ', '002174.SZ', '002175.SZ', '002176.SZ', '002177.SZ', '002178.SZ', '002179.SZ', '002180.SZ', '002181.SZ', '002182.SZ', '002183.SZ', '002184.SZ', '002185.SZ', '002186.SZ', '002187.SZ', '002188.SZ', '002189.SZ', '002190.SZ', '002191.SZ', '002192.SZ', '002193.SZ', '002194.SZ', '002195.SZ', '002196.SZ', '002197.SZ', '002198.SZ', '002199.SZ', '002200.SZ', '002201.SZ', '002202.SZ', '002203.SZ', '002204.SZ', '002205.SZ', '002206.SZ', '002207.SZ', '002208.SZ', '002209.SZ', '002210.SZ', '002211.SZ', '002212.SZ', '002213.SZ', '002214.SZ', '002215.SZ', '002216.SZ', '002217.SZ', '002218.SZ', '002219.SZ', '002221.SZ', '002222.SZ', '002223.SZ', '002224.SZ', '002225.SZ', '002226.SZ', '002227.SZ', '002228.SZ', '002229.SZ', '002230.SZ', '002231.SZ', '002232.SZ', '002233.SZ', '002234.SZ', '002235.SZ', '002236.SZ', '002237.SZ', '002238.SZ', '002239.SZ', '002240.SZ', '002241.SZ', '002242.SZ', '002243.SZ', '002244.SZ', '002245.SZ', '002246.SZ', '002247.SZ', '002248.SZ', '002249.SZ', '002250.SZ', '002251.SZ', '002252.SZ', '002253.SZ', '002254.SZ', '002255.SZ', '002256.SZ', '002258.SZ', '002259.SZ', '002261.SZ', '002262.SZ', '002263.SZ', '002264.SZ', '002265.SZ', '002266.SZ', '002267.SZ', '002268.SZ', '002269.SZ', '002270.SZ', '002271.SZ', '002272.SZ', '002273.SZ', '002274.SZ', '002275.SZ', '002276.SZ', '002277.SZ', '002278.SZ', '002279.SZ', '002281.SZ', '002282.SZ', '002283.SZ', '002284.SZ', '002285.SZ', '002286.SZ', '002287.SZ', '002289.SZ', '002290.SZ', '002291.SZ', '002292.SZ', '002293.SZ', '002294.SZ', '002295.SZ', '002296.SZ', '002297.SZ', '002298.SZ', '002299.SZ', '002300.SZ', '002301.SZ', '002302.SZ', '002303.SZ', '002304.SZ', '002305.SZ', '002306.SZ', '002307.SZ', '002309.SZ', '002310.SZ', '002311.SZ', '002312.SZ', '002313.SZ', '002314.SZ', '002315.SZ', '002316.SZ', '002317.SZ', '002318.SZ', '002319.SZ', '002320.SZ', '002321.SZ', '002322.SZ', '002323.SZ', '002324.SZ', '002326.SZ', '002327.SZ', '002328.SZ', '002329.SZ', '002330.SZ', '002331.SZ', '002332.SZ', '002333.SZ', '002334.SZ', '002335.SZ', '002336.SZ', '002337.SZ', '002338.SZ', '002339.SZ', '002340.SZ', '002342.SZ', '002343.SZ', '002344.SZ', '002345.SZ', '002346.SZ', '002347.SZ', '002348.SZ', '002349.SZ', '002350.SZ', '002351.SZ', '002352.SZ', '002353.SZ', '002354.SZ', '002355.SZ', '002356.SZ', '002357.SZ', '002358.SZ', '002360.SZ', '002361.SZ', '002362.SZ', '002363.SZ', '002364.SZ', '002365.SZ', '002366.SZ', '002367.SZ', '002368.SZ', '002369.SZ', '002370.SZ', '002371.SZ', '002372.SZ', '002373.SZ', '002374.SZ', '002375.SZ', '002376.SZ', '002377.SZ', '002378.SZ', '002379.SZ', '002380.SZ', '002381.SZ', '002382.SZ', '002383.SZ', '002384.SZ', '002385.SZ', '002386.SZ', '002387.SZ', '002388.SZ', '002389.SZ', '002390.SZ', '002391.SZ', '002392.SZ', '002393.SZ', '002394.SZ', '002395.SZ', '002396.SZ', '002397.SZ', '002398.SZ', '002399.SZ', '002400.SZ', '002401.SZ', '002402.SZ', '002403.SZ', '002404.SZ', '002405.SZ', '002406.SZ', '002407.SZ', '002408.SZ', '002409.SZ', '002410.SZ', '002412.SZ', '002413.SZ', '002414.SZ', '002415.SZ', '002416.SZ', '002418.SZ', '002419.SZ', '002420.SZ', '002421.SZ', '002422.SZ', '002423.SZ', '002424.SZ', '002425.SZ', '002426.SZ', '002427.SZ', '002428.SZ', '002429.SZ', '002430.SZ', '002431.SZ', '002432.SZ', '002434.SZ', '002436.SZ', '002437.SZ', '002438.SZ', '002439.SZ', '002440.SZ', '002441.SZ', '002442.SZ', '002443.SZ', '002444.SZ', '002445.SZ', '002446.SZ', '002448.SZ', '002449.SZ', '002451.SZ', '002452.SZ', '002453.SZ', '002454.SZ', '002455.SZ', '002456.SZ', '002457.SZ', '002458.SZ', '002459.SZ', '002460.SZ', '002461.SZ', '002462.SZ', '002463.SZ', '002465.SZ', '002466.SZ', '002467.SZ', '002468.SZ', '002469.SZ', '002470.SZ', '002471.SZ', '002472.SZ', '002474.SZ', '002475.SZ', '002476.SZ', '002478.SZ', '002479.SZ', '002480.SZ', '002481.SZ', '002482.SZ', '002483.SZ', '002484.SZ', '002485.SZ', '002486.SZ', '002487.SZ', '002488.SZ', '002489.SZ', '002490.SZ', '002491.SZ', '002492.SZ', '002493.SZ', '002494.SZ', '002495.SZ', '002496.SZ', '002497.SZ', '002498.SZ', '002500.SZ', '002501.SZ', '002506.SZ', '002507.SZ', '002508.SZ', '002510.SZ', '002511.SZ', '002512.SZ', '002513.SZ', '002514.SZ', '002515.SZ', '002516.SZ', '002517.SZ', '002518.SZ', '002519.SZ', '002520.SZ', '002521.SZ', '002522.SZ', '002523.SZ', '002524.SZ', '002526.SZ', '002527.SZ', '002528.SZ', '002529.SZ', '002530.SZ', '002531.SZ', '002532.SZ', '002533.SZ', '002534.SZ', '002535.SZ', '002536.SZ', '002537.SZ', '002538.SZ', '002539.SZ', '002540.SZ', '002541.SZ', '002542.SZ', '002543.SZ', '002544.SZ', '002545.SZ', '002546.SZ', '002547.SZ', '002548.SZ', '002549.SZ', '002550.SZ', '002551.SZ', '002552.SZ', '002553.SZ', '002554.SZ', '002555.SZ', '002556.SZ', '002557.SZ', '002558.SZ', '002559.SZ', '002560.SZ', '002561.SZ', '002562.SZ', '002563.SZ', '002564.SZ', '002565.SZ', '002566.SZ', '002567.SZ', '002568.SZ', '002569.SZ', '002570.SZ', '002571.SZ', '002572.SZ', '002573.SZ', '002574.SZ', '002575.SZ', '002576.SZ', '002577.SZ', '002578.SZ', '002579.SZ', '002580.SZ', '002581.SZ', '002582.SZ', '002583.SZ', '002584.SZ', '002585.SZ', '002586.SZ', '002587.SZ', '002588.SZ', '002589.SZ', '002590.SZ', '002591.SZ', '002592.SZ', '002593.SZ', '002594.SZ', '002595.SZ', '002596.SZ', '002597.SZ', '002598.SZ', '002599.SZ', '002600.SZ', '002601.SZ', '002602.SZ', '002603.SZ', '002605.SZ', '002606.SZ', '002607.SZ', '002608.SZ', '002609.SZ', '002611.SZ', '002612.SZ', '002613.SZ', '002614.SZ', '002615.SZ', '002616.SZ', '002617.SZ', '002620.SZ', '002622.SZ', '002623.SZ', '002624.SZ', '002625.SZ', '002626.SZ', '002627.SZ', '002628.SZ', '002629.SZ', '002630.SZ', '002631.SZ', '002632.SZ', '002633.SZ', '002634.SZ', '002635.SZ', '002636.SZ', '002637.SZ', '002638.SZ', '002639.SZ', '002640.SZ', '002641.SZ', '002642.SZ', '002643.SZ', '002644.SZ', '002645.SZ', '002646.SZ', '002647.SZ', '002648.SZ', '002649.SZ', '002650.SZ', '002651.SZ', '002652.SZ', '002653.SZ', '002654.SZ', '002655.SZ', '002656.SZ', '002657.SZ', '002658.SZ', '002659.SZ', '002660.SZ', '002661.SZ', '002662.SZ', '002663.SZ', '002664.SZ', '002666.SZ', '002667.SZ', '002668.SZ', '002669.SZ', '002670.SZ', '002671.SZ', '002672.SZ', '002673.SZ', '002674.SZ', '002675.SZ', '002676.SZ', '002677.SZ', '002678.SZ', '002679.SZ', '002681.SZ', '002682.SZ', '002683.SZ', '002685.SZ', '002686.SZ', '002687.SZ', '002688.SZ', '002689.SZ', '002690.SZ', '002691.SZ', '002692.SZ', '002693.SZ', '002694.SZ', '002695.SZ', '002696.SZ', '002697.SZ', '002698.SZ', '002700.SZ', '002701.SZ', '002702.SZ', '002703.SZ', '002705.SZ', '002706.SZ', '002707.SZ', '002708.SZ', '002709.SZ', '002712.SZ', '002713.SZ', '002714.SZ', '002715.SZ', '002716.SZ', '002717.SZ', '002718.SZ', '002719.SZ', '002721.SZ', '002722.SZ', '002723.SZ', '002724.SZ', '002725.SZ', '002726.SZ', '002727.SZ', '002728.SZ', '002729.SZ', '002730.SZ', '002731.SZ', '002732.SZ', '002733.SZ', '002734.SZ', '002735.SZ', '002736.SZ', '002737.SZ', '002738.SZ', '002739.SZ', '002741.SZ', '002742.SZ', '002743.SZ', '002745.SZ', '002746.SZ', '002747.SZ', '002748.SZ', '002749.SZ', '002750.SZ', '002752.SZ', '002753.SZ', '002755.SZ', '002756.SZ', '002757.SZ', '002758.SZ', '002759.SZ', '002760.SZ', '002761.SZ', '002762.SZ', '002763.SZ', '002765.SZ', '002766.SZ', '002767.SZ', '002768.SZ', '002769.SZ', '002771.SZ', '002772.SZ', '002773.SZ', '002774.SZ', '002775.SZ', '002777.SZ', '002778.SZ', '002779.SZ', '002780.SZ', '002782.SZ', '002783.SZ', '002785.SZ', '002786.SZ', '002787.SZ', '002788.SZ', '002789.SZ', '002790.SZ', '002791.SZ', '002792.SZ', '002793.SZ', '002795.SZ', '002796.SZ', '002797.SZ', '002798.SZ', '002799.SZ', '002800.SZ', '002801.SZ', '002802.SZ', '002803.SZ', '002805.SZ', '002806.SZ', '002807.SZ', '002808.SZ', '002809.SZ', '002810.SZ', '002811.SZ', '002812.SZ', '002813.SZ', '002815.SZ', '002816.SZ', '002817.SZ', '002818.SZ', '002819.SZ', '002820.SZ', '002821.SZ', '002822.SZ', '002823.SZ', '002824.SZ', '002825.SZ', '002826.SZ', '002827.SZ', '002828.SZ', '002829.SZ', '002830.SZ', '002831.SZ', '002832.SZ', '002833.SZ', '002835.SZ', '002836.SZ', '002837.SZ', '002838.SZ', '002839.SZ', '002840.SZ', '002841.SZ', '002842.SZ', '002843.SZ', '002845.SZ', '002846.SZ', '002847.SZ', '002848.SZ', '002849.SZ', '002850.SZ', '002851.SZ', '002852.SZ', '002853.SZ', '002855.SZ', '002856.SZ', '002857.SZ', '002858.SZ', '002859.SZ', '002860.SZ', '002861.SZ', '002862.SZ', '002863.SZ', '002864.SZ', '002865.SZ', '002866.SZ', '002867.SZ', '002868.SZ', '002869.SZ', '002870.SZ', '002871.SZ', '002872.SZ', '002873.SZ', '002875.SZ', '002876.SZ', '002877.SZ', '002878.SZ', '002879.SZ', '002880.SZ', '002881.SZ', '002882.SZ', '002883.SZ', '002884.SZ', '002885.SZ', '002886.SZ', '002887.SZ', '002888.SZ', '002889.SZ', '002890.SZ', '002891.SZ', '002892.SZ', '002893.SZ', '002895.SZ', '002896.SZ', '002897.SZ', '002898.SZ', '002899.SZ', '002900.SZ', '002901.SZ', '002902.SZ', '002903.SZ', '002905.SZ', '002906.SZ', '002907.SZ', '002908.SZ', '002909.SZ', '002910.SZ', '002911.SZ', '002912.SZ', '002913.SZ', '002915.SZ', '002916.SZ', '002917.SZ', '002918.SZ', '002919.SZ', '002920.SZ', '002921.SZ', '002922.SZ', '002923.SZ', '002925.SZ', '002926.SZ', '002927.SZ', '002928.SZ', '002929.SZ', '002930.SZ', '002931.SZ', '002932.SZ', '002933.SZ', '002935.SZ', '002936.SZ', '002937.SZ', '002938.SZ', '002939.SZ', '002940.SZ', '002941.SZ', '002942.SZ', '002943.SZ', '002945.SZ', '002946.SZ', '002947.SZ', '002948.SZ', '002949.SZ', '002950.SZ', '002951.SZ', '002952.SZ', '002953.SZ', '002955.SZ', '002956.SZ', '002957.SZ', '002958.SZ', '002959.SZ', '002960.SZ', '002961.SZ', '002962.SZ', '002963.SZ', '002965.SZ', '002966.SZ', '002967.SZ', '002968.SZ', '002969.SZ', '002970.SZ', '002971.SZ', '002972.SZ', '002973.SZ', '002975.SZ', '002976.SZ', '002977.SZ', '002978.SZ', '002979.SZ', '002980.SZ', '002981.SZ', '002982.SZ', '002983.SZ', '002984.SZ', '002985.SZ', '002986.SZ', '002987.SZ', '002988.SZ', '002989.SZ', '002990.SZ', '002991.SZ', '002992.SZ', '002993.SZ', '002995.SZ', '002996.SZ', '002997.SZ', '002998.SZ', '002999.SZ', '003000.SZ', '003001.SZ', '003002.SZ', '003003.SZ', '003004.SZ', '003005.SZ', '003006.SZ', '003007.SZ', '003008.SZ', '003009.SZ', '003010.SZ', '003011.SZ', '003012.SZ', '003013.SZ', '003015.SZ', '003016.SZ', '003017.SZ', '003018.SZ', '003019.SZ', '003020.SZ', '003021.SZ', '003022.SZ', '003023.SZ', '003025.SZ', '003026.SZ', '003027.SZ', '003028.SZ', '003029.SZ', '003030.SZ', '003031.SZ', '003032.SZ', '003033.SZ', '003035.SZ', '003036.SZ', '003037.SZ', '003038.SZ', '003039.SZ', '003040.SZ', '003041.SZ', '003042.SZ', '003043.SZ', '003816.SZ', '688001.SS', '688002.SS', '688003.SS', '688004.SS', '688005.SS', '688006.SS', '688007.SS', '688008.SS', '688009.SS', '688010.SS', '688011.SS', '688012.SS', '688013.SS', '688015.SS', '688016.SS', '688017.SS', '688018.SS', '688019.SS', '688020.SS', '688021.SS', '688022.SS', '688023.SS', '688025.SS', '688026.SS', '688027.SS', '688028.SS', '688029.SS', '688030.SS', '688031.SS', '688032.SS', '688033.SS', '688035.SS', '688036.SS', '688037.SS', '688038.SS', '688039.SS', '688041.SS', '688045.SS', '688046.SS', '688047.SS', '688048.SS', '688049.SS', '688050.SS', '688051.SS', '688052.SS', '688053.SS', '688055.SS', '688056.SS', '688057.SS', '688058.SS', '688059.SS', '688060.SS', '688061.SS', '688062.SS', '688063.SS', '688065.SS', '688066.SS', '688067.SS', '688068.SS', '688069.SS', '688070.SS', '688071.SS', '688072.SS', '688073.SS', '688075.SS', '688076.SS', '688077.SS', '688078.SS', '688079.SS', '688080.SS', '688081.SS', '688082.SS', '688083.SS', '688084.SS', '688085.SS', '688087.SS', '688088.SS', '688089.SS', '688090.SS', '688091.SS', '688092.SS', '688093.SS', '688095.SS', '688096.SS', '688097.SS', '688098.SS', '688099.SS', '688100.SS', '688101.SS', '688102.SS', '688103.SS', '688105.SS', '688106.SS', '688107.SS', '688108.SS', '688109.SS', '688110.SS', '688111.SS', '688112.SS', '688113.SS', '688114.SS', '688115.SS', '688116.SS', '688117.SS', '688118.SS', '688119.SS', '688120.SS', '688121.SS', '688122.SS', '688123.SS', '688125.SS', '688126.SS', '688127.SS', '688128.SS', '688129.SS', '688130.SS', '688131.SS', '688132.SS', '688133.SS', '688135.SS', '688136.SS', '688137.SS', '688138.SS', '688139.SS', '688141.SS', '688143.SS', '688146.SS', '688147.SS', '688148.SS', '688150.SS', '688151.SS', '688152.SS', '688153.SS', '688155.SS', '688156.SS', '688157.SS', '688158.SS', '688159.SS', '688160.SS', '688161.SS', '688162.SS', '688163.SS', '688165.SS', '688166.SS', '688167.SS', '688168.SS', '688169.SS', '688170.SS', '688171.SS', '688172.SS', '688173.SS', '688175.SS', '688176.SS', '688177.SS', '688178.SS', '688179.SS', '688180.SS', '688181.SS', '688182.SS', '688183.SS', '688184.SS', '688185.SS', '688186.SS', '688187.SS', '688188.SS', '688189.SS', '688190.SS', '688191.SS', '688192.SS', '688193.SS', '688195.SS', '688196.SS', '688197.SS', '688198.SS', '688199.SS', '688200.SS', '688201.SS', '688202.SS', '688203.SS', '688205.SS', '688206.SS', '688207.SS', '688208.SS', '688209.SS', '688210.SS', '688211.SS', '688212.SS', '688213.SS', '688215.SS', '688216.SS', '688217.SS', '688218.SS', '688219.SS', '688220.SS', '688221.SS', '688222.SS', '688223.SS', '688225.SS', '688226.SS', '688227.SS', '688228.SS', '688229.SS', '688230.SS', '688231.SS', '688232.SS', '688233.SS', '688234.SS', '688235.SS', '688236.SS', '688237.SS', '688238.SS', '688239.SS', '688244.SS', '688246.SS', '688247.SS', '688248.SS', '688249.SS', '688251.SS', '688252.SS', '688253.SS', '688255.SS', '688256.SS', '688257.SS', '688258.SS', '688259.SS', '688260.SS', '688261.SS', '688262.SS', '688265.SS', '688266.SS', '688267.SS', '688268.SS', '688269.SS', '688270.SS', '688271.SS', '688272.SS', '688273.SS', '688275.SS', '688276.SS', '688277.SS', '688278.SS', '688279.SS', '688280.SS', '688281.SS', '688282.SS', '688283.SS', '688285.SS', '688286.SS', '688287.SS', '688288.SS', '688289.SS', '688290.SS', '688291.SS', '688292.SS', '688293.SS', '688295.SS', '688296.SS', '688297.SS', '688298.SS', '688299.SS', '688300.SS', '688301.SS', '688302.SS', '688303.SS', '688305.SS', '688306.SS', '688307.SS', '688308.SS', '688309.SS', '688310.SS', '688311.SS', '688312.SS', '688313.SS', '688314.SS', '688315.SS', '688316.SS', '688317.SS', '688318.SS', '688319.SS', '688320.SS', '688321.SS', '688322.SS', '688323.SS', '688325.SS', '688326.SS', '688327.SS', '688328.SS', '688329.SS', '688330.SS', '688331.SS', '688332.SS', '688333.SS', '688334.SS', '688335.SS', '688336.SS', '688337.SS', '688338.SS', '688339.SS', '688343.SS', '688345.SS', '688347.SS', '688348.SS', '688349.SS', '688350.SS', '688351.SS', '688352.SS', '688353.SS', '688355.SS', '688356.SS', '688357.SS', '688358.SS', '688359.SS', '688360.SS', '688361.SS', '688362.SS', '688363.SS', '688365.SS', '688366.SS', '688367.SS', '688368.SS', '688369.SS', '688370.SS', '688371.SS', '688372.SS', '688373.SS', '688375.SS', '688376.SS', '688377.SS', '688378.SS', '688379.SS', '688380.SS', '688381.SS', '688382.SS', '688383.SS', '688385.SS', '688386.SS', '688387.SS', '688388.SS', '688389.SS', '688390.SS', '688391.SS', '688392.SS', '688393.SS', '688395.SS', '688396.SS', '688398.SS', '688399.SS', '688400.SS', '688401.SS', '688403.SS', '688408.SS', '688409.SS', '688410.SS', '688411.SS', '688416.SS', '688418.SS', '688419.SS', '688420.SS', '688425.SS', '688426.SS', '688428.SS', '688429.SS', '688432.SS', '688433.SS', '688435.SS', '688439.SS', '688443.SS', '688448.SS', '688449.SS', '688450.SS', '688455.SS', '688456.SS', '688458.SS', '688459.SS', '688466.SS', '688468.SS', '688469.SS', '688472.SS', '688475.SS', '688478.SS', '688479.SS', '688480.SS', '688484.SS', '688485.SS', '688486.SS', '688488.SS', '688489.SS', '688496.SS', '688498.SS', '688499.SS', '688500.SS', '688501.SS', '688502.SS', '688503.SS', '688505.SS', '688506.SS', '688507.SS', '688508.SS', '688509.SS', '688510.SS', '688511.SS', '688512.SS', '688513.SS', '688515.SS', '688516.SS', '688517.SS', '688518.SS', '688519.SS', '688520.SS', '688521.SS', '688522.SS', '688523.SS', '688525.SS', '688526.SS', '688528.SS', '688529.SS', '688530.SS', '688531.SS', '688533.SS', '688535.SS', '688536.SS', '688538.SS', '688539.SS', '688543.SS', '688545.SS', '688548.SS', '688549.SS', '688550.SS', '688551.SS', '688552.SS', '688553.SS', '688556.SS', '688557.SS', '688558.SS', '688559.SS', '688560.SS', '688561.SS', '688562.SS', '688563.SS', '688565.SS', '688566.SS', '688567.SS', '688568.SS', '688569.SS', '688570.SS', '688571.SS', '688573.SS', '688575.SS', '688576.SS', '688577.SS', '688578.SS', '688579.SS', '688580.SS', '688581.SS', '688582.SS', '688583.SS', '688584.SS', '688585.SS', '688586.SS', '688588.SS', '688589.SS', '688590.SS', '688591.SS', '688592.SS', '688593.SS', '688595.SS', '688596.SS', '688597.SS', '688598.SS', '688599.SS', '688600.SS', '688601.SS', '688602.SS', '688603.SS', '688605.SS', '688606.SS', '688607.SS', '688608.SS', '688609.SS', '688610.SS', '688611.SS', '688612.SS', '688613.SS', '688615.SS', '688616.SS', '688617.SS', '688618.SS', '688619.SS', '688620.SS', '688621.SS', '688622.SS', '688623.SS', '688625.SS', '688626.SS', '688627.SS', '688628.SS', '688629.SS', '688630.SS', '688631.SS', '688633.SS', '688636.SS', '688638.SS', '688639.SS', '688646.SS', '688648.SS', '688651.SS', '688652.SS', '688653.SS', '688655.SS', '688656.SS', '688657.SS', '688658.SS', '688659.SS', '688660.SS', '688661.SS', '688662.SS', '688663.SS', '688665.SS', '688667.SS', '688668.SS', '688669.SS', '688670.SS', '688671.SS', '688676.SS', '688677.SS', '688678.SS', '688679.SS', '688680.SS', '688681.SS', '688682.SS', '688683.SS', '688685.SS', '688686.SS', '688687.SS', '688689.SS', '688690.SS', '688691.SS', '688692.SS', '688693.SS', '688695.SS', '688696.SS', '688697.SS', '688698.SS', '688699.SS', '688700.SS', '688701.SS', '688702.SS', '688707.SS', '688708.SS', '688709.SS', '688710.SS', '688711.SS', '688716.SS', '688717.SS', '688718.SS', '688719.SS', '688720.SS', '688721.SS', '688722.SS', '688726.SS', '688728.SS', '688733.SS', '688737.SS', '688739.SS', '688750.SS', '688758.SS', '688766.SS', '688767.SS', '688768.SS', '688772.SS', '688776.SS', '688777.SS', '688778.SS', '688779.SS', '688786.SS', '688787.SS', '688788.SS', '688789.SS', '688793.SS', '688798.SS', '688799.SS', '688800.SS', '688819.SS', '688981.SS', '689009.SS', '300001.SZ', '300002.SZ', '300003.SZ', '300004.SZ', '300005.SZ', '300006.SZ', '300007.SZ', '300008.SZ', '300009.SZ', '300010.SZ', '300011.SZ', '300012.SZ', '300013.SZ', '300014.SZ', '300015.SZ', '300016.SZ', '300017.SZ', '300018.SZ', '300019.SZ', '300020.SZ', '300021.SZ', '300022.SZ', '300024.SZ', '300025.SZ', '300026.SZ', '300027.SZ', '300029.SZ', '300030.SZ', '300031.SZ', '300032.SZ', '300033.SZ', '300034.SZ', '300035.SZ', '300036.SZ', '300037.SZ', '300039.SZ', '300040.SZ', '300041.SZ', '300042.SZ', '300043.SZ', '300044.SZ', '300045.SZ', '300046.SZ', '300047.SZ', '300048.SZ', '300049.SZ', '300050.SZ', '300051.SZ', '300052.SZ', '300053.SZ', '300054.SZ', '300055.SZ', '300056.SZ', '300057.SZ', '300058.SZ', '300059.SZ', '300061.SZ', '300062.SZ', '300063.SZ', '300065.SZ', '300066.SZ', '300067.SZ', '300068.SZ', '300069.SZ', '300070.SZ', '300071.SZ', '300072.SZ', '300073.SZ', '300074.SZ', '300075.SZ', '300076.SZ', '300077.SZ', '300078.SZ', '300079.SZ', '300080.SZ', '300081.SZ', '300082.SZ', '300083.SZ', '300084.SZ', '300085.SZ', '300086.SZ', '300087.SZ', '300088.SZ', '300091.SZ', '300092.SZ', '300093.SZ', '300094.SZ', '300095.SZ', '300096.SZ', '300097.SZ', '300098.SZ', '300099.SZ', '300100.SZ', '300101.SZ', '300102.SZ', '300103.SZ', '300105.SZ', '300106.SZ', '300107.SZ', '300108.SZ', '300109.SZ', '300110.SZ', '300111.SZ', '300112.SZ', '300113.SZ', '300115.SZ', '300117.SZ', '300118.SZ', '300119.SZ', '300120.SZ', '300121.SZ', '300122.SZ', '300123.SZ', '300124.SZ', '300125.SZ', '300126.SZ', '300127.SZ', '300128.SZ', '300129.SZ', '300130.SZ', '300131.SZ', '300132.SZ', '300133.SZ', '300134.SZ', '300135.SZ', '300136.SZ', '300137.SZ', '300138.SZ', '300139.SZ', '300140.SZ', '300141.SZ', '300142.SZ', '300143.SZ', '300144.SZ', '300145.SZ', '300146.SZ', '300147.SZ', '300148.SZ', '300149.SZ', '300150.SZ', '300151.SZ', '300152.SZ', '300153.SZ', '300154.SZ', '300155.SZ', '300157.SZ', '300158.SZ', '300159.SZ', '300160.SZ', '300161.SZ', '300162.SZ', '300163.SZ', '300164.SZ', '300165.SZ', '300166.SZ', '300167.SZ', '300168.SZ', '300169.SZ', '300170.SZ', '300171.SZ', '300172.SZ', '300173.SZ', '300174.SZ', '300175.SZ', '300176.SZ', '300177.SZ', '300179.SZ', '300180.SZ', '300181.SZ', '300182.SZ', '300183.SZ', '300184.SZ', '300185.SZ', '300187.SZ', '300188.SZ', '300189.SZ', '300190.SZ', '300191.SZ', '300192.SZ', '300193.SZ', '300194.SZ', '300195.SZ', '300196.SZ', '300197.SZ', '300198.SZ', '300199.SZ', '300200.SZ', '300201.SZ', '300203.SZ', '300204.SZ', '300205.SZ', '300206.SZ', '300207.SZ', '300208.SZ', '300209.SZ', '300210.SZ', '300211.SZ', '300212.SZ', '300213.SZ', '300214.SZ', '300215.SZ', '300217.SZ', '300218.SZ', '300219.SZ', '300220.SZ', '300221.SZ', '300222.SZ', '300223.SZ', '300224.SZ', '300225.SZ', '300226.SZ', '300227.SZ', '300228.SZ', '300229.SZ', '300230.SZ', '300231.SZ', '300232.SZ', '300233.SZ', '300234.SZ', '300235.SZ', '300236.SZ', '300237.SZ', '300238.SZ', '300239.SZ', '300240.SZ', '300241.SZ', '300242.SZ', '300243.SZ', '300244.SZ', '300245.SZ', '300246.SZ', '300247.SZ', '300248.SZ', '300249.SZ', '300250.SZ', '300251.SZ', '300252.SZ', '300253.SZ', '300254.SZ', '300255.SZ', '300256.SZ', '300257.SZ', '300258.SZ', '300259.SZ', '300260.SZ', '300261.SZ', '300263.SZ', '300264.SZ', '300265.SZ', '300266.SZ', '300267.SZ', '300268.SZ', '300269.SZ', '300270.SZ', '300271.SZ', '300272.SZ', '300274.SZ', '300275.SZ', '300276.SZ', '300277.SZ', '300278.SZ', '300279.SZ', '300280.SZ', '300281.SZ', '300283.SZ', '300284.SZ', '300285.SZ', '300286.SZ', '300287.SZ', '300288.SZ', '300289.SZ', '300290.SZ', '300291.SZ', '300292.SZ', '300293.SZ', '300294.SZ', '300295.SZ', '300296.SZ', '300298.SZ', '300299.SZ', '300300.SZ', '300301.SZ', '300302.SZ', '300303.SZ', '300304.SZ', '300305.SZ', '300306.SZ', '300307.SZ', '300308.SZ', '300310.SZ', '300311.SZ', '300313.SZ', '300314.SZ', '300315.SZ', '300316.SZ', '300317.SZ', '300318.SZ', '300319.SZ', '300320.SZ', '300321.SZ', '300322.SZ', '300323.SZ', '300324.SZ', '300326.SZ', '300327.SZ', '300328.SZ', '300329.SZ', '300331.SZ', '300332.SZ', '300333.SZ', '300334.SZ', '300335.SZ', '300337.SZ', '300338.SZ', '300339.SZ', '300340.SZ', '300341.SZ', '300342.SZ', '300343.SZ', '300344.SZ', '300345.SZ', '300346.SZ', '300347.SZ', '300348.SZ', '300349.SZ', '300350.SZ', '300351.SZ', '300352.SZ', '300353.SZ', '300354.SZ', '300355.SZ', '300357.SZ', '300358.SZ', '300359.SZ', '300360.SZ', '300363.SZ', '300364.SZ', '300365.SZ', '300366.SZ', '300368.SZ', '300369.SZ', '300370.SZ', '300371.SZ', '300373.SZ', '300374.SZ', '300375.SZ', '300376.SZ', '300377.SZ', '300378.SZ', '300379.SZ', '300380.SZ', '300381.SZ', '300382.SZ', '300383.SZ', '300384.SZ', '300385.SZ', '300386.SZ', '300387.SZ', '300388.SZ', '300389.SZ', '300390.SZ', '300391.SZ', '300393.SZ', '300394.SZ', '300395.SZ', '300396.SZ', '300397.SZ', '300398.SZ', '300399.SZ', '300400.SZ', '300401.SZ', '300402.SZ', '300403.SZ', '300404.SZ', '300405.SZ', '300406.SZ', '300407.SZ', '300408.SZ', '300409.SZ', '300410.SZ', '300411.SZ', '300412.SZ', '300413.SZ', '300414.SZ', '300415.SZ', '300416.SZ', '300417.SZ', '300418.SZ', '300419.SZ', '300420.SZ', '300421.SZ', '300422.SZ', '300423.SZ', '300424.SZ', '300425.SZ', '300426.SZ', '300427.SZ', '300428.SZ', '300429.SZ', '300430.SZ', '300432.SZ', '300433.SZ', '300434.SZ', '300435.SZ', '300436.SZ', '300437.SZ', '300438.SZ', '300439.SZ', '300440.SZ', '300441.SZ', '300442.SZ', '300443.SZ', '300444.SZ', '300445.SZ', '300446.SZ', '300447.SZ', '300448.SZ', '300449.SZ', '300450.SZ', '300451.SZ', '300452.SZ', '300453.SZ', '300454.SZ', '300455.SZ', '300456.SZ', '300457.SZ', '300458.SZ', '300459.SZ', '300460.SZ', '300461.SZ', '300462.SZ', '300463.SZ', '300464.SZ', '300465.SZ', '300466.SZ', '300467.SZ', '300468.SZ', '300469.SZ', '300470.SZ', '300471.SZ', '300472.SZ', '300473.SZ', '300474.SZ', '300475.SZ', '300476.SZ', '300477.SZ', '300478.SZ', '300479.SZ', '300480.SZ', '300481.SZ', '300482.SZ', '300483.SZ', '300484.SZ', '300485.SZ', '300486.SZ', '300487.SZ', '300488.SZ', '300489.SZ', '300490.SZ', '300491.SZ', '300492.SZ', '300493.SZ', '300494.SZ', '300496.SZ', '300497.SZ', '300498.SZ', '300499.SZ', '300500.SZ', '300501.SZ', '300502.SZ', '300503.SZ', '300504.SZ', '300505.SZ', '300506.SZ', '300507.SZ', '300508.SZ', '300509.SZ', '300510.SZ', '300511.SZ', '300512.SZ', '300513.SZ', '300514.SZ', '300515.SZ', '300516.SZ', '300517.SZ', '300518.SZ', '300519.SZ', '300520.SZ', '300521.SZ', '300522.SZ', '300523.SZ', '300525.SZ', '300527.SZ', '300528.SZ', '300529.SZ', '300530.SZ', '300531.SZ', '300532.SZ', '300533.SZ', '300534.SZ', '300535.SZ', '300536.SZ', '300537.SZ', '300538.SZ', '300539.SZ', '300540.SZ', '300541.SZ', '300542.SZ', '300543.SZ', '300545.SZ', '300546.SZ', '300547.SZ', '300548.SZ', '300549.SZ', '300550.SZ', '300551.SZ', '300552.SZ', '300553.SZ', '300554.SZ', '300555.SZ', '300556.SZ', '300557.SZ', '300558.SZ', '300559.SZ', '300560.SZ', '300561.SZ', '300562.SZ', '300563.SZ', '300564.SZ', '300565.SZ', '300566.SZ', '300567.SZ', '300568.SZ', '300569.SZ', '300570.SZ', '300571.SZ', '300572.SZ', '300573.SZ', '300575.SZ', '300576.SZ', '300577.SZ', '300578.SZ', '300579.SZ', '300580.SZ', '300581.SZ', '300582.SZ', '300583.SZ', '300584.SZ', '300585.SZ', '300586.SZ', '300587.SZ', '300588.SZ', '300589.SZ', '300590.SZ', '300591.SZ', '300592.SZ', '300593.SZ', '300594.SZ', '300595.SZ', '300596.SZ', '300597.SZ', '300598.SZ', '300599.SZ', '300600.SZ', '300601.SZ', '300602.SZ', '300603.SZ', '300604.SZ', '300605.SZ', '300606.SZ', '300607.SZ', '300608.SZ', '300609.SZ', '300610.SZ', '300611.SZ', '300612.SZ', '300613.SZ', '300614.SZ', '300615.SZ', '300616.SZ', '300617.SZ', '300618.SZ', '300619.SZ', '300620.SZ', '300621.SZ', '300622.SZ', '300623.SZ', '300624.SZ', '300625.SZ', '300626.SZ', '300627.SZ', '300628.SZ', '300629.SZ', '300630.SZ', '300631.SZ', '300632.SZ', '300633.SZ', '300634.SZ', '300635.SZ', '300636.SZ', '300637.SZ', '300638.SZ', '300639.SZ', '300640.SZ', '300641.SZ', '300642.SZ', '300643.SZ', '300644.SZ', '300645.SZ', '300647.SZ', '300648.SZ', '300649.SZ', '300650.SZ', '300651.SZ', '300652.SZ', '300653.SZ', '300654.SZ', '300655.SZ', '300656.SZ', '300657.SZ', '300658.SZ', '300659.SZ', '300660.SZ', '300661.SZ', '300662.SZ', '300663.SZ', '300664.SZ', '300665.SZ', '300666.SZ', '300667.SZ', '300668.SZ', '300669.SZ', '300670.SZ', '300671.SZ', '300672.SZ', '300673.SZ', '300674.SZ', '300675.SZ', '300676.SZ', '300677.SZ', '300678.SZ', '300679.SZ', '300680.SZ', '300681.SZ', '300682.SZ', '300683.SZ', '300684.SZ', '300685.SZ', '300686.SZ', '300687.SZ', '300688.SZ', '300689.SZ', '300690.SZ', '300691.SZ', '300692.SZ', '300693.SZ', '300694.SZ', '300695.SZ', '300696.SZ', '300697.SZ', '300698.SZ', '300699.SZ', '300700.SZ', '300701.SZ', '300702.SZ', '300703.SZ', '300705.SZ', '300706.SZ', '300707.SZ', '300708.SZ', '300709.SZ', '300710.SZ', '300711.SZ', '300712.SZ', '300713.SZ', '300715.SZ', '300716.SZ', '300717.SZ', '300718.SZ', '300719.SZ', '300720.SZ', '300721.SZ', '300722.SZ', '300723.SZ', '300724.SZ', '300725.SZ', '300726.SZ', '300727.SZ', '300729.SZ', '300730.SZ', '300731.SZ', '300732.SZ', '300733.SZ', '300735.SZ', '300736.SZ', '300737.SZ', '300738.SZ', '300739.SZ', '300740.SZ', '300741.SZ', '300743.SZ', '300745.SZ', '300746.SZ', '300747.SZ', '300748.SZ', '300749.SZ', '300750.SZ', '300751.SZ', '300752.SZ', '300753.SZ', '300755.SZ', '300756.SZ', '300757.SZ', '300758.SZ', '300759.SZ', '300760.SZ', '300761.SZ', '300762.SZ', '300763.SZ', '300765.SZ', '300766.SZ', '300767.SZ', '300768.SZ', '300769.SZ', '300770.SZ', '300771.SZ', '300772.SZ', '300773.SZ', '300774.SZ', '300775.SZ', '300776.SZ', '300777.SZ', '300778.SZ', '300779.SZ', '300780.SZ', '300781.SZ', '300782.SZ', '300783.SZ', '300784.SZ', '300785.SZ', '300786.SZ', '300787.SZ', '300788.SZ', '300789.SZ', '300790.SZ', '300791.SZ', '300792.SZ', '300793.SZ', '300795.SZ', '300796.SZ', '300797.SZ', '300798.SZ', '300800.SZ', '300801.SZ', '300802.SZ', '300803.SZ', '300804.SZ', '300805.SZ', '300806.SZ', '300807.SZ', '300808.SZ', '300809.SZ', '300810.SZ', '300811.SZ', '300812.SZ', '300813.SZ', '300814.SZ', '300815.SZ', '300816.SZ', '300817.SZ', '300818.SZ', '300819.SZ', '300820.SZ', '300821.SZ', '300822.SZ', '300823.SZ', '300824.SZ', '300825.SZ', '300826.SZ', '300827.SZ', '300828.SZ', '300829.SZ', '300830.SZ', '300831.SZ', '300832.SZ', '300833.SZ', '300834.SZ', '300835.SZ', '300836.SZ', '300837.SZ', '300838.SZ', '300839.SZ', '300840.SZ', '300841.SZ', '300842.SZ', '300843.SZ', '300844.SZ', '300845.SZ', '300846.SZ', '300847.SZ', '300848.SZ', '300849.SZ', '300850.SZ', '300851.SZ', '300852.SZ', '300853.SZ', '300854.SZ', '300855.SZ', '300856.SZ', '300857.SZ', '300858.SZ', '300859.SZ', '300860.SZ', '300861.SZ', '300862.SZ', '300863.SZ', '300864.SZ', '300865.SZ', '300866.SZ', '300867.SZ', '300868.SZ', '300869.SZ', '300870.SZ', '300871.SZ', '300872.SZ', '300873.SZ', '300875.SZ', '300876.SZ', '300877.SZ', '300878.SZ', '300879.SZ', '300880.SZ', '300881.SZ', '300882.SZ', '300883.SZ', '300884.SZ', '300885.SZ', '300886.SZ', '300887.SZ', '300888.SZ', '300889.SZ', '300890.SZ', '300891.SZ', '300892.SZ', '300893.SZ', '300894.SZ', '300895.SZ', '300896.SZ', '300897.SZ', '300898.SZ', '300899.SZ', '300900.SZ', '300901.SZ', '300902.SZ', '300903.SZ', '300904.SZ', '300905.SZ', '300906.SZ', '300907.SZ', '300908.SZ', '300909.SZ', '300910.SZ', '300911.SZ', '300912.SZ', '300913.SZ', '300915.SZ', '300916.SZ', '300917.SZ', '300918.SZ', '300919.SZ', '300920.SZ', '300921.SZ', '300922.SZ', '300923.SZ', '300925.SZ', '300926.SZ', '300927.SZ', '300928.SZ', '300929.SZ', '300930.SZ', '300931.SZ', '300932.SZ', '300933.SZ', '300935.SZ', '300936.SZ', '300937.SZ', '300938.SZ', '300939.SZ', '300940.SZ', '300941.SZ', '300942.SZ', '300943.SZ', '300945.SZ', '300946.SZ', '300947.SZ', '300948.SZ', '300949.SZ', '300950.SZ', '300951.SZ', '300952.SZ', '300953.SZ', '300955.SZ', '300956.SZ', '300957.SZ', '300958.SZ', '300959.SZ', '300960.SZ', '300961.SZ', '300962.SZ', '300963.SZ', '300964.SZ', '300965.SZ', '300966.SZ', '300967.SZ', '300968.SZ', '300969.SZ', '300970.SZ', '300971.SZ', '300972.SZ', '300973.SZ', '300975.SZ', '300976.SZ', '300977.SZ', '300978.SZ', '300979.SZ', '300980.SZ', '300981.SZ', '300982.SZ', '300983.SZ', '300984.SZ', '300985.SZ', '300986.SZ', '300987.SZ', '300988.SZ', '300989.SZ', '300990.SZ', '300991.SZ', '300992.SZ', '300993.SZ', '300994.SZ', '300995.SZ', '300996.SZ', '300997.SZ', '300998.SZ', '300999.SZ', '301000.SZ', '301001.SZ', '301002.SZ', '301003.SZ', '301004.SZ', '301005.SZ', '301006.SZ', '301007.SZ', '301008.SZ', '301009.SZ', '301010.SZ', '301011.SZ', '301012.SZ', '301013.SZ', '301015.SZ', '301016.SZ', '301017.SZ', '301018.SZ', '301019.SZ', '301020.SZ', '301021.SZ', '301022.SZ', '301023.SZ', '301024.SZ', '301025.SZ', '301026.SZ', '301027.SZ', '301028.SZ', '301029.SZ', '301030.SZ', '301031.SZ', '301032.SZ', '301033.SZ', '301035.SZ', '301036.SZ', '301037.SZ', '301038.SZ', '301039.SZ', '301040.SZ', '301041.SZ', '301042.SZ', '301043.SZ', '301045.SZ', '301046.SZ', '301047.SZ', '301048.SZ', '301049.SZ', '301050.SZ', '301051.SZ', '301052.SZ', '301053.SZ', '301055.SZ', '301056.SZ', '301057.SZ', '301058.SZ', '301059.SZ', '301060.SZ', '301061.SZ', '301062.SZ', '301063.SZ', '301065.SZ', '301066.SZ', '301067.SZ', '301068.SZ', '301069.SZ', '301070.SZ', '301071.SZ', '301072.SZ', '301073.SZ', '301075.SZ', '301076.SZ', '301077.SZ', '301078.SZ', '301079.SZ', '301080.SZ', '301081.SZ', '301082.SZ', '301083.SZ', '301085.SZ', '301086.SZ', '301087.SZ', '301088.SZ', '301089.SZ', '301090.SZ', '301091.SZ', '301092.SZ', '301093.SZ', '301095.SZ', '301096.SZ', '301097.SZ', '301098.SZ', '301099.SZ', '301100.SZ', '301101.SZ', '301102.SZ', '301103.SZ', '301105.SZ', '301106.SZ', '301107.SZ', '301108.SZ', '301109.SZ', '301110.SZ', '301111.SZ', '301112.SZ', '301113.SZ', '301115.SZ', '301116.SZ', '301117.SZ', '301118.SZ', '301119.SZ', '301120.SZ', '301121.SZ', '301122.SZ', '301123.SZ', '301125.SZ', '301126.SZ', '301127.SZ', '301128.SZ', '301129.SZ', '301130.SZ', '301131.SZ', '301132.SZ', '301133.SZ', '301135.SZ', '301136.SZ', '301137.SZ', '301138.SZ', '301139.SZ', '301141.SZ', '301148.SZ', '301149.SZ', '301150.SZ', '301151.SZ', '301152.SZ', '301153.SZ', '301155.SZ', '301156.SZ', '301157.SZ', '301158.SZ', '301159.SZ', '301160.SZ', '301161.SZ', '301162.SZ', '301163.SZ', '301165.SZ', '301166.SZ', '301167.SZ', '301168.SZ', '301169.SZ', '301170.SZ', '301171.SZ', '301172.SZ', '301173.SZ', '301175.SZ', '301176.SZ', '301177.SZ', '301178.SZ', '301179.SZ', '301180.SZ', '301181.SZ', '301182.SZ', '301183.SZ', '301185.SZ', '301186.SZ', '301187.SZ', '301188.SZ', '301189.SZ', '301190.SZ', '301191.SZ', '301192.SZ', '301193.SZ', '301195.SZ', '301196.SZ', '301197.SZ', '301198.SZ', '301199.SZ', '301200.SZ', '301201.SZ', '301202.SZ', '301203.SZ', '301205.SZ', '301206.SZ', '301207.SZ', '301208.SZ', '301209.SZ', '301210.SZ', '301211.SZ', '301212.SZ', '301213.SZ', '301215.SZ', '301216.SZ', '301217.SZ', '301218.SZ', '301219.SZ', '301220.SZ', '301221.SZ', '301222.SZ', '301223.SZ', '301225.SZ', '301226.SZ', '301227.SZ', '301228.SZ', '301229.SZ', '301230.SZ', '301231.SZ', '301232.SZ', '301233.SZ', '301234.SZ', '301235.SZ', '301236.SZ', '301237.SZ', '301238.SZ', '301239.SZ', '301246.SZ', '301248.SZ', '301251.SZ', '301252.SZ', '301255.SZ', '301256.SZ', '301257.SZ', '301258.SZ', '301259.SZ', '301260.SZ', '301261.SZ', '301262.SZ', '301263.SZ', '301265.SZ', '301266.SZ', '301267.SZ', '301268.SZ', '301269.SZ', '301270.SZ', '301272.SZ', '301273.SZ', '301275.SZ', '301276.SZ', '301277.SZ', '301278.SZ', '301279.SZ', '301280.SZ', '301281.SZ', '301282.SZ', '301283.SZ', '301285.SZ', '301286.SZ', '301287.SZ', '301288.SZ', '301289.SZ', '301290.SZ', '301291.SZ', '301292.SZ', '301293.SZ', '301295.SZ', '301296.SZ', '301297.SZ', '301298.SZ', '301299.SZ', '301300.SZ', '301301.SZ', '301302.SZ', '301303.SZ', '301305.SZ', '301306.SZ', '301307.SZ', '301308.SZ', '301309.SZ', '301310.SZ', '301311.SZ', '301312.SZ', '301313.SZ', '301314.SZ', '301315.SZ', '301316.SZ', '301317.SZ', '301318.SZ', '301319.SZ', '301320.SZ', '301321.SZ', '301322.SZ', '301323.SZ', '301325.SZ', '301326.SZ', '301327.SZ', '301328.SZ', '301329.SZ', '301330.SZ', '301331.SZ', '301332.SZ', '301333.SZ', '301335.SZ', '301336.SZ', '3013
ptrade python最新版本支持3.11
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 2728 次浏览 • 2025-02-27 17:42
国金证券 PTRADE智能策略交易终端预期3月底4月中做实盘版本升级。
操作手册和开发手册请登录测试客户端后点击右上角帮助和量化菜单下帮助获取。
量化接口升级说明下载链接:https:/pan.baidu.com/s/1S5xXHpOLFVDYdJrOgYDBqA 提取码:gjz9。
本次主干版本升级涉及的问题修复、功能优化和需求实现较多,策略量化AP变动较大,python版本升级311。
如您有在运行的策略程序、工具功能等,请务必进行测试环境验证调整,确认策略程序在python311环境、工具功能等可正常运行。
实盘确认升级完成后,您需要将测试环境验证后策略迁移实盘后重新启用。
如您需新开通测试环境账户,可与我司服务老师联系获取。感谢各位长期以来对我公司的信任和支持,由此给各位带来的不便敬请谅解。谢谢!
需要开通的可以联系: 查看全部
国金证券 PTRADE智能策略交易终端预期3月底4月中做实盘版本升级。
操作手册和开发手册请登录测试客户端后点击右上角帮助和量化菜单下帮助获取。
量化接口升级说明下载链接:https:/pan.baidu.com/s/1S5xXHpOLFVDYdJrOgYDBqA 提取码:gjz9。
本次主干版本升级涉及的问题修复、功能优化和需求实现较多,策略量化AP变动较大,python版本升级311。
如您有在运行的策略程序、工具功能等,请务必进行测试环境验证调整,确认策略程序在python311环境、工具功能等可正常运行。
实盘确认升级完成后,您需要将测试环境验证后策略迁移实盘后重新启用。
如您需新开通测试环境账户,可与我司服务老师联系获取。感谢各位长期以来对我公司的信任和支持,由此给各位带来的不便敬请谅解。谢谢!
需要开通的可以联系:
QMT获取北交所市场代码
QMT • 李魔佛 发表了文章 • 0 个评论 • 1965 次浏览 • 2025-02-21 11:30
现在的券商只要你开了科创板,可以直接开通北交所,不再需要20交易日,50w的要求。
QMT获取北交所代码:
运行输出结果:
需要开通量化api权限的券商,可以扫码关注并咨询 查看全部
ptrade支持外网,mysql 远程数据库的券商
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 2280 次浏览 • 2025-02-17 14:16
比如如果你要获取可转债的一些强赎数据,内置数据是不支持的。
那么如果你想要获取集思录的数据,那么就会无能为力。
不过有一个券商可以支持访问外部数据的。因为ptrade内置了pymysq,redis,zeromq,wsocket等第三方库,
所以你可以在ptrade内部,直接范围mysql的数据,zeromq的数据,甚至直接和外部的api进行双向通信。
实例中直接用requests访问的百度
实盘,模拟盘中均可操作。
需要开通的朋友可以公众号联系:
费率也支持万0.854 免5哦~ 查看全部
比如如果你要获取可转债的一些强赎数据,内置数据是不支持的。
那么如果你想要获取集思录的数据,那么就会无能为力。
不过有一个券商可以支持访问外部数据的。因为ptrade内置了pymysq,redis,zeromq,wsocket等第三方库,
所以你可以在ptrade内部,直接范围mysql的数据,zeromq的数据,甚至直接和外部的api进行双向通信。
实例中直接用requests访问的百度
实盘,模拟盘中均可操作。

需要开通的朋友可以公众号联系:
费率也支持万0.854 免5哦~
江海证券支持QMT,miniQMT,且低门槛开通
QMT • 李魔佛 发表了文章 • 0 个评论 • 3269 次浏览 • 2025-02-12 00:46
江海证券有限公司于2003年12月15日在哈尔滨市市场监督管理局登记成立。法定代表人孙名扬,公司经营范围包括证券经纪,证券承销与保荐,证券投资咨询,证券自营等。
这logo看起来有点像银河呢。
江海证券现有分支机构75家,其中17家分公司,58家营业部,遍布北京、上海、广州、深圳、厦门、青岛、大连、成都、武汉、长沙、合肥及黑龙江省内等主要城市,形成了“覆盖龙江、辐射沿海、布局全国”的业务发展格局。
不过上面的是2018年的数据,最新的可能会少一些。因为现在很多营业部都更加注重线上业务。也就是通过线上就可以开通账号。
目前江海证券能够开通量化QMT,和miniQMT的自动化交易权限。
下载地址:
江海证券QMT实盘_实盘_1.0.0.36190.exe
或者直接到官网:
https://www.jhzq.com.cn/main/home/software/index.shtml
选择QMT下载即可
江海证券也支持无限易量化平台。
需要的可以咨询公众号: 查看全部
江海证券有限公司于2003年12月15日在哈尔滨市市场监督管理局登记成立。法定代表人孙名扬,公司经营范围包括证券经纪,证券承销与保荐,证券投资咨询,证券自营等。
这logo看起来有点像银河呢。
江海证券现有分支机构75家,其中17家分公司,58家营业部,遍布北京、上海、广州、深圳、厦门、青岛、大连、成都、武汉、长沙、合肥及黑龙江省内等主要城市,形成了“覆盖龙江、辐射沿海、布局全国”的业务发展格局。
不过上面的是2018年的数据,最新的可能会少一些。因为现在很多营业部都更加注重线上业务。也就是通过线上就可以开通账号。
目前江海证券能够开通量化QMT,和miniQMT的自动化交易权限。
下载地址:
江海证券QMT实盘_实盘_1.0.0.36190.exe
或者直接到官网:
https://www.jhzq.com.cn/main/home/software/index.shtml
选择QMT下载即可
江海证券也支持无限易量化平台。
需要的可以咨询公众号:
QMT股票两融对冲建仓实盘
QMT • 李魔佛 发表了文章 • 0 个评论 • 2846 次浏览 • 2024-05-29 12:02
成交了多少量,就融券多少量。达到指标即可停止。
代写量化程序,可以关注公众号,后台联系。 价格比QMT官网低的多了。实战性选手,选过N多QMT,ptrade实盘代码。
查看全部
QMT实时获取涨停股,筛选流通盘大于X的股票
QMT • 李魔佛 发表了文章 • 0 个评论 • 4015 次浏览 • 2024-02-07 18:28
直接上代码:# coding:gbk
import time
class G():
pass
g = G()
def init(ContextInfo):
g.hsa = [item for item in ContextInfo.get_stock_list_in_sector('沪深A股') if not item.endswith('BJ')]
g.vol_dict = {}
for stock in g.hsa:
g.vol_dict[stock] = ContextInfo.get_last_volume(stock)
ContextInfo.run_time("execution", "1nSecond", "2019-10-14 13:20:00")
def execution(ContextInfo):
t0 = time.time()
full_tick = ContextInfo.get_full_tick(g.hsa)
total_market_value = 0
total_ratio = 0
count = 0
for stock in g.hsa:
if full_tick[stock]['lastClose'] == 0:
continue
ratio = full_tick[stock]['lastPrice'] / full_tick[stock]['lastClose'] - 1
rise_price = round(full_tick[stock]['lastClose'] * 1.2, 2) if stock[0] == '3' or stock[:3] == '688' else round(
full_tick[stock]['lastClose'] * 1.1, 2)
# 如果要打印涨停品种
if abs(full_tick[stock]['lastPrice'] - rise_price) <0.01:
print(f"涨停股票 {stock} {ContextInfo.get_stock_name(stock)}")
market_value = full_tick[stock]['lastPrice'] * g.vol_dict[stock]
total_ratio += ratio * market_value
total_market_value += market_value
count += 1
# print(count)
total_ratio /= total_market_value
total_ratio *= 100
print(f'A股加权涨幅 {round(total_ratio, 2)}% 函数运行耗时{round(time.time() - t0, 5)}秒')
欢迎关注公众号:
可转债量化分析 查看全部
直接上代码:
# coding:gbk
import time
class G():
pass
g = G()
def init(ContextInfo):
g.hsa = [item for item in ContextInfo.get_stock_list_in_sector('沪深A股') if not item.endswith('BJ')]
g.vol_dict = {}
for stock in g.hsa:
g.vol_dict[stock] = ContextInfo.get_last_volume(stock)
ContextInfo.run_time("execution", "1nSecond", "2019-10-14 13:20:00")
def execution(ContextInfo):
t0 = time.time()
full_tick = ContextInfo.get_full_tick(g.hsa)
total_market_value = 0
total_ratio = 0
count = 0
for stock in g.hsa:
if full_tick[stock]['lastClose'] == 0:
continue
ratio = full_tick[stock]['lastPrice'] / full_tick[stock]['lastClose'] - 1
rise_price = round(full_tick[stock]['lastClose'] * 1.2, 2) if stock[0] == '3' or stock[:3] == '688' else round(
full_tick[stock]['lastClose'] * 1.1, 2)
# 如果要打印涨停品种
if abs(full_tick[stock]['lastPrice'] - rise_price) <0.01:
print(f"涨停股票 {stock} {ContextInfo.get_stock_name(stock)}")
market_value = full_tick[stock]['lastPrice'] * g.vol_dict[stock]
total_ratio += ratio * market_value
total_market_value += market_value
count += 1
# print(count)
total_ratio /= total_market_value
total_ratio *= 100
print(f'A股加权涨幅 {round(total_ratio, 2)}% 函数运行耗时{round(time.time() - t0, 5)}秒')
欢迎关注公众号:
可转债量化分析
QMT | Ptrade 量化策略代写服务
量化交易 • 李魔佛 发表了文章 • 0 个评论 • 4471 次浏览 • 2023-11-01 10:43
多年交易经验,量化交易与开发经验。所以很多策略,其实用户大体描述,就知道要注意哪些地方,会提出一些建议,用户要注意,需不需要添加一些判读条件等等。(当然,策略的具体参数都是设置可以调节的,你不需要把实际的参数告诉我,代码给你后,你自己运行策略的时候把你策略的真正参数填上去就好了。)
有偿,收费,价格美丽。根据策略实际的复杂程度与预估的工时,收费。(不根据代码数量,因为我写代码很精简)
我也帮你们咨询过了迅投的客服。 因为他们官网也有提供策略代写服务。他们是不问你策略,直接是5000起步哦。然后根据策略,在5000的基础上不断加。
咨询完,我都感觉我自己以前的报价太低了,呜。
PS: 之前还有迅投的前员工私底下接单写策略,然后到我的星球里面白嫖我的代码,调用我接口数据,被我发现后举报到星球的。后面那个客户发现代码里面藏有我的公众号信息哈,找到我让我修改接口数据哈。
需要的代写策略的盆友,可以关注公众号,在菜单栏那里的“代写量化程序”或者 后台回复:策略代写,获取联系方式哦
扫码关注公众号:
查看全部
迅投的QMT和恒生电子的Ptrade, 还有掘金, 量化策略编程, 实盘和回测都行。只要你的需求明确,白纸黑字描述清楚,都可以做。股票,ETF,可转债都行。
多年交易经验,量化交易与开发经验。所以很多策略,其实用户大体描述,就知道要注意哪些地方,会提出一些建议,用户要注意,需不需要添加一些判读条件等等。(当然,策略的具体参数都是设置可以调节的,你不需要把实际的参数告诉我,代码给你后,你自己运行策略的时候把你策略的真正参数填上去就好了。)
有偿,收费,价格美丽。根据策略实际的复杂程度与预估的工时,收费。(不根据代码数量,因为我写代码很精简)
我也帮你们咨询过了迅投的客服。 因为他们官网也有提供策略代写服务。他们是不问你策略,直接是5000起步哦。然后根据策略,在5000的基础上不断加。
咨询完,我都感觉我自己以前的报价太低了,呜。
PS: 之前还有迅投的前员工私底下接单写策略,然后到我的星球里面白嫖我的代码,调用我接口数据,被我发现后举报到星球的。后面那个客户发现代码里面藏有我的公众号信息哈,找到我让我修改接口数据哈。
需要的代写策略的盆友,可以关注公众号,在菜单栏那里的“代写量化程序”或者 后台回复:策略代写,获取联系方式哦
扫码关注公众号:

小市值轮动-量化交易-程序化交易-Ptrade实盘
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 4268 次浏览 • 2023-10-07 14:14
当前策略持有30只。
点击查看大图
点击查看大图
基于股票的策略不敢多买,属于试验阶段,后期仍然会不断根据市场调仓; 主仓依然在可转债。
公众号:可转债量化分析
如果需要策略代写,(ptrade、qmt,其他量化平台)
可以公众号后台回复:
策略代写
查看全部
ptrade qmt无法登录问题
量化交易 • 李魔佛 发表了文章 • 0 个评论 • 4048 次浏览 • 2023-08-08 14:44
实际上这是在周五晚上和周末出现的问题,这是计划内的维护。部分券商没有技术服务支持,用户可能连服务器日常维护服务通知都无法及时得到通知。
PS:其实,大部分券商基本也就那样,ptrade和qmt的技术支持基本等于0,不敢说全部,至少90%的情况是这样的。 以至于我自己维护了一个ptrade,qmt的技术群(审核才可以加),日常有空就在里面解决群友的问题。基本都是些基础问题,部分可能是券商数据问题,大部分是用户的代码问题。 查看全部
ptrade批量获取股票的昨天的收盘价,转为字典json【一】
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 4304 次浏览 • 2023-07-17 19:50
ptrade接口文档:https://ptradeapi.com
笔者这里接写几个最简单的方式,供读者朋友参考。
下面代码适用于实盘,回测。
code_list = ['113578.SS','123014.SZ'] # 股票池,这里可以填几千个股票也没问题的
zz_df_price = get_price(code_list, start_date=None, end_date=None, frequency='1d', fields='close', fq=None, count=1)
yesterday_price_dict = zz_df_price.iloc[0].to_json()
讲解:
1.
code_list = ['113578.SS','123014.SZ'] # 股票池,这里可以填几千个股票也没问题的,比如你可以先拿沪深300指数的成分股,然后传入这个函数。
2.
zz_df_price = get_price(code_list, start_date=None, end_date=None, frequency='1d', fields='close', fq=None, count=1)
get_price: 获取历史数据。 这里不用get_history,因为这个函数太多bug了,主要是券商数据可能是缺的。拿历史数据我基本不敢用get_history。
因为我拿昨天的收盘价,所以我就不指定日期,只用count=1,获取1条数据,因为数据是从最新开始的,那么这一条数据肯定是上一个交易日的。
正常情况返回的数据是一个Pannel,三维的。不过因为filed=‘close',单个字段,特殊情况,这里返回的是一个dataframe
输出:
zz_df_price.iloc[0].to_json()
index 113578.SS 123014.SZ
2023-07-14 93.036 118.36
所以接下来要做的是,获取dataframe的第一行数据,直接转为json
得到:
'{"113578.SS":93.036,"123014.SZ":118.36}'
更多技术支持与解答,欢迎加入星球。
查看全部
ptrade接口文档:https://ptradeapi.com
笔者这里接写几个最简单的方式,供读者朋友参考。
下面代码适用于实盘,回测。
code_list = ['113578.SS','123014.SZ'] # 股票池,这里可以填几千个股票也没问题的
zz_df_price = get_price(code_list, start_date=None, end_date=None, frequency='1d', fields='close', fq=None, count=1)
yesterday_price_dict = zz_df_price.iloc[0].to_json()
讲解:
1.
code_list = ['113578.SS','123014.SZ'] # 股票池,这里可以填几千个股票也没问题的,比如你可以先拿沪深300指数的成分股,然后传入这个函数。
2.
zz_df_price = get_price(code_list, start_date=None, end_date=None, frequency='1d', fields='close', fq=None, count=1)
get_price: 获取历史数据。 这里不用get_history,因为这个函数太多bug了,主要是券商数据可能是缺的。拿历史数据我基本不敢用get_history。
因为我拿昨天的收盘价,所以我就不指定日期,只用count=1,获取1条数据,因为数据是从最新开始的,那么这一条数据肯定是上一个交易日的。
正常情况返回的数据是一个Pannel,三维的。不过因为filed=‘close',单个字段,特殊情况,这里返回的是一个dataframe
输出:
zz_df_price.iloc[0].to_json()index 113578.SS 123014.SZ
2023-07-14 93.036 118.36
所以接下来要做的是,获取dataframe的第一行数据,直接转为json
得到:
'{"113578.SS":93.036,"123014.SZ":118.36}'
更多技术支持与解答,欢迎加入星球。

目前支持量化接口的万一免五的券商有哪些?
量化交易-Ptrade-QMT • 李魔佛 发表了文章 • 0 个评论 • 6503 次浏览 • 2023-07-04 22:52
其中能够股票免五的有国金证券,国盛证券,国信证券,安信证券。
其中,国金证券,国盛证券支持QMT、MiniQMT、Ptrade。
国信证券,安信证券支持QMT。
东莞证券支持Ptrade
可转债默认免五。
开户后可加入量化技术交流群,可获得编程技术指导。
【提问者需要把问题描述清楚即可,PS: 有些人动不动就说:“Ptrade不行呀”,“QMT垃圾呀”,结果让他贴代码上来瞅瞅,是他本身代码写的拉垮,目前贴出来的已知的问题,90%是个人代码问题。】
扫码添加微信咨询开户:
查看全部
Ptrade/QMT 可转债转股操作 python代码
量化交易 • 李魔佛 发表了文章 • 0 个评论 • 4600 次浏览 • 2023-06-19 18:14
而这个转股操作是要在交易时间,也就是盘中时间下一个债转股的命令,然后盘后交易所会更会你盘中下的转股指令,将对应的可转债转为对应的股票,这是,持仓里面的可转债会消失,变成该可转债对应的正股。
(当然这是在全部转股的前提下的情况,也有可能有部分人转债只转一部分,这样持仓里面还仍然会有部分可转债没有被转为股票)
那么在Ptrade和QMT里面,如何调用API接口进行可转债转股呢?
Ptrade:
def initialize(context):
g.security = "600570.SS"
set_universe(g.security)
def before_trading_start(context, data):
g.count = 0
def handle_data(context, data):
if g.count == 0:
# 对持仓内的贝斯进行转股操作
debt_to_stock_order("123075.SZ", -1000)
g.count += 1
# 查看委托状态
log.info(get_orders())
g.count += 1
主要是上面的函数,
debt_to_stock_order 传入可转债代码和转股的数量,注意数量用加一个负号。
QMT可转债转股操作
#coding:gbk
c = True
account = '11111111' # 个人账户
def init(ContextInfo):
pass
def handlebar(ContextInfo):
if not ContextInfo.is_last_bar():
#历史k线不应该发出实盘信号 跳过
return
if c:
passorder(80,1101,account,s,5,0,-100,'1',2,'tzbz',ContextInfo)
c=False
passorder 里面的 80是 普通账户可转债转股
更多Ptrade,qmt知识,可以关注公众号
查看全部
而这个转股操作是要在交易时间,也就是盘中时间下一个债转股的命令,然后盘后交易所会更会你盘中下的转股指令,将对应的可转债转为对应的股票,这是,持仓里面的可转债会消失,变成该可转债对应的正股。
(当然这是在全部转股的前提下的情况,也有可能有部分人转债只转一部分,这样持仓里面还仍然会有部分可转债没有被转为股票)
那么在Ptrade和QMT里面,如何调用API接口进行可转债转股呢?
Ptrade:
def initialize(context):
g.security = "600570.SS"
set_universe(g.security)
def before_trading_start(context, data):
g.count = 0
def handle_data(context, data):
if g.count == 0:
# 对持仓内的贝斯进行转股操作
debt_to_stock_order("123075.SZ", -1000)
g.count += 1
# 查看委托状态
log.info(get_orders())
g.count += 1
主要是上面的函数,
debt_to_stock_order 传入可转债代码和转股的数量,注意数量用加一个负号。
QMT可转债转股操作
#coding:gbk
c = True
account = '11111111' # 个人账户
def init(ContextInfo):
pass
def handlebar(ContextInfo):
if not ContextInfo.is_last_bar():
#历史k线不应该发出实盘信号 跳过
return
if c:
passorder(80,1101,account,s,5,0,-100,'1',2,'tzbz',ContextInfo)
c=False
passorder 里面的 80是 普通账户可转债转股
更多Ptrade,qmt知识,可以关注公众号

国金证券QMT量化新人培训教程
QMT • 李魔佛 发表了文章 • 0 个评论 • 9074 次浏览 • 2023-05-29 00:37
视频已经整理放到B站:
https://space.bilibili.com/73827743/channel/seriesdetail?sid=3326385&ctype=0
视频目录:
量化新人用QMT+chat GPT快速上手量化策略(一)QMT基础介绍
量化新人用QMT+chat GPT快速上手量化策略(二)QMT均线盘后选股
量化新人用QMT+chat GPT快速上手量化策略(三)一个基本的回测策略代码
量化新人用QMT+chat GPT快速上手量化策略(四) QMT运行一个策略的整体流程
量化新人用QMT+chat GPT快速上手量化策略(五) 获取股票数据
量化新人用QMT+chat GPT快速上手量化策略(六) tablib计算指标
量化新人用QMT+chat GPT快速上手量化策略(七) 下单代码编写
欢迎观看并提出疑问。
公众号:可转债量化分析 查看全部
视频已经整理放到B站:
https://space.bilibili.com/73827743/channel/seriesdetail?sid=3326385&ctype=0
视频目录:
量化新人用QMT+chat GPT快速上手量化策略(一)QMT基础介绍
量化新人用QMT+chat GPT快速上手量化策略(二)QMT均线盘后选股
量化新人用QMT+chat GPT快速上手量化策略(三)一个基本的回测策略代码
量化新人用QMT+chat GPT快速上手量化策略(四) QMT运行一个策略的整体流程
量化新人用QMT+chat GPT快速上手量化策略(五) 获取股票数据
量化新人用QMT+chat GPT快速上手量化策略(六) tablib计算指标
量化新人用QMT+chat GPT快速上手量化策略(七) 下单代码编写
欢迎观看并提出疑问。
公众号:可转债量化分析
用户问的比较多的关于ptrade基础问题
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 5477 次浏览 • 2023-05-04 01:19
1. 国金的Ptrade 实盘交易客户端是无法进行回测的,在任何时间段;
而模拟客户端可以,可以找自己的经理申请一个Ptrade模拟客户端账户;
2. 国盛的Ptrade实盘交易客户端仅在交易时间无法回测,但非交易时间可以回测;
主要是因为实盘回测和交易在同一个服务器,回测占用过多资源会影响实盘交易;模拟客户端没有这个问题;
任何时间段均可以回测; (之前某个券商的ptrade实盘服务器,因为某个用户开了40多个回测策略,一直在后台运行,而且是关于运算密集型的,导致实盘交易的程序也崩溃了)
3. 国金Ptrade无法回测星球上面的可转债实盘代码,实盘代码是基于当前的实时数据,用来进行回测没有意义,因为获取不到可转债的历史数据(溢价率,规模等),只有历史的价格数据;
4. 国金Ptrade无法使用星球上的可转债代码进行实盘,因为无法访问外网,无法访问我部署的接口数据; 而国盛的Ptrade可以;如果国金Ptrade需要实盘交易可转债,需要手工上传一些基础数据,Ptrade提供上传功能,具体操作可查找星球相关文章;
5. 在共享的Ptrade模拟试用账户上,不要保留个人代码记录,跑完后记得删除,否则其他共有同一个账户的人可以进去修改复制你的策略和代码;如果是单独的个人模拟账户,则没有这个问题。
查看全部
1. 国金的Ptrade 实盘交易客户端是无法进行回测的,在任何时间段;
而模拟客户端可以,可以找自己的经理申请一个Ptrade模拟客户端账户;
2. 国盛的Ptrade实盘交易客户端仅在交易时间无法回测,但非交易时间可以回测;
主要是因为实盘回测和交易在同一个服务器,回测占用过多资源会影响实盘交易;模拟客户端没有这个问题;
任何时间段均可以回测; (之前某个券商的ptrade实盘服务器,因为某个用户开了40多个回测策略,一直在后台运行,而且是关于运算密集型的,导致实盘交易的程序也崩溃了)
3. 国金Ptrade无法回测星球上面的可转债实盘代码,实盘代码是基于当前的实时数据,用来进行回测没有意义,因为获取不到可转债的历史数据(溢价率,规模等),只有历史的价格数据;
4. 国金Ptrade无法使用星球上的可转债代码进行实盘,因为无法访问外网,无法访问我部署的接口数据; 而国盛的Ptrade可以;如果国金Ptrade需要实盘交易可转债,需要手工上传一些基础数据,Ptrade提供上传功能,具体操作可查找星球相关文章;
5. 在共享的Ptrade模拟试用账户上,不要保留个人代码记录,跑完后记得删除,否则其他共有同一个账户的人可以进去修改复制你的策略和代码;如果是单独的个人模拟账户,则没有这个问题。
Ptrade QMT实盘策略记录 - 不定期更新
量化交易 • 李魔佛 发表了文章 • 0 个评论 • 3925 次浏览 • 2023-04-03 15:27
写出来的是已经实现且实盘稳定运行的;
涨停板;依赖ptrade的高速行情自动配合手动;两融账户的股票日内做T,持有底仓;股票小市值轮动+多因子可转债多因子(有N个版本+不同的排除因子 组合)可转债日内高频股票趋势动量ETF轮动套利脉冲卖出扫描
纯粹自己做的记录,便于自己平时复盘。
有兴趣的朋友可以关注公众号交流。 查看全部
Ptrade担保品买入卖出
Ptrade • 李魔佛 发表了文章 • 0 个评论 • 2803 次浏览 • 2023-03-31 01:31
实际上是买卖股票,但在信用账户上,用只有资金买卖股票。
ptrade支持两融操作。
比如下面的示例代告诉我们,担保品买入股票的3个不同参数的效果:def initialize(context):
g.security = '600570.SS'
set_universe(g.security)
def handle_data(context, data):
# 以系统最新价委托
margin_trade(g.security, 100)
# 以72块价格下一个限价单
margin_trade(g.security, 100, limit_price=72)
# 以最优五档即时成交剩余撤销委托
margin_trade(g.security, 200, market_type=4) security:股票代码(str);
amount:交易数量,正数表示买入,负数表示卖出(int);
limit_price:买卖限价(float);
market_type:市价委托类型,上证非科创板股票支持参数1、4,上证科创板股票支持参数0、1、2、4,深证股票支持参数0、2、3、4、5(int);
0:对手方最优价格;
1:最优五档即时成交剩余转限价;
2:本方最优价格;
3:即时成交剩余撤销;
4:最优五档即时成交剩余撤销;
5:全额成交或撤单; 查看全部
担保品卖出指的是融资融券交易当中,用自有资金进行买卖的行为
实际上是买卖股票,但在信用账户上,用只有资金买卖股票。
ptrade支持两融操作。
比如下面的示例代告诉我们,担保品买入股票的3个不同参数的效果:
def initialize(context):
g.security = '600570.SS'
set_universe(g.security)
def handle_data(context, data):
# 以系统最新价委托
margin_trade(g.security, 100)
# 以72块价格下一个限价单
margin_trade(g.security, 100, limit_price=72)
# 以最优五档即时成交剩余撤销委托
margin_trade(g.security, 200, market_type=4)
security:股票代码(str);
amount:交易数量,正数表示买入,负数表示卖出(int);
limit_price:买卖限价(float);
market_type:市价委托类型,上证非科创板股票支持参数1、4,上证科创板股票支持参数0、1、2、4,深证股票支持参数0、2、3、4、5(int);
0:对手方最优价格;
1:最优五档即时成交剩余转限价;
2:本方最优价格;
3:即时成交剩余撤销;
4:最优五档即时成交剩余撤销;
5:全额成交或撤单;
qmt 可转债 双低(阈值)轮动 实盘代码
QMT • 李魔佛 发表了文章 • 0 个评论 • 4278 次浏览 • 2023-02-26 15:18
用已有的ptrade的代码,然后部分获取行情和交易接口按照qmt的接口文档(http://qmt.ptradeapi.com )重写,就给了一版。(对,很早以前就有一版ptrade的转债双低的了)
无论是qmt还是ptrade,都只是一个工具,用熟悉了,都无所哪个好哪个不好。
完整代码在个人星球。
觉得之前星球太便宜了,不仅给了代码,还部署了接口免费使用,通过接口获取可转债的实时数据,强赎天数,规模,溢价率,评级等等一系列数据。 而且随着时间的推移,里面积累的数据,代码也越来越多,感觉这样对前面进去并不断续费的星友有点公平,尽管以后他们续费都直接打折扣。所以还是按照一些大v运营的意见,逐年涨价策略。
越往后的朋友,因为前面积累的内容越多,因此价格也随之增长。
当然有能力可以自己写接口,部署,实盘,获取三方数据的大v,就没必要加了。
查看全部
用已有的ptrade的代码,然后部分获取行情和交易接口按照qmt的接口文档(http://qmt.ptradeapi.com )重写,就给了一版。(对,很早以前就有一版ptrade的转债双低的了)
无论是qmt还是ptrade,都只是一个工具,用熟悉了,都无所哪个好哪个不好。
完整代码在个人星球。
觉得之前星球太便宜了,不仅给了代码,还部署了接口免费使用,通过接口获取可转债的实时数据,强赎天数,规模,溢价率,评级等等一系列数据。 而且随着时间的推移,里面积累的数据,代码也越来越多,感觉这样对前面进去并不断续费的星友有点公平,尽管以后他们续费都直接打折扣。所以还是按照一些大v运营的意见,逐年涨价策略。
越往后的朋友,因为前面积累的内容越多,因此价格也随之增长。
当然有能力可以自己写接口,部署,实盘,获取三方数据的大v,就没必要加了。
qmt iquant最新接口文档
QMT • 李魔佛 发表了文章 • 0 个评论 • 3034 次浏览 • 2023-02-19 15:16
http://qmt.ptradeapi.com
除了官方的接口文档,还加入了一些个人平时编写的写法与回测,实盘代码。 不定期更新。
欢迎关注收藏。 查看全部
http://qmt.ptradeapi.com
除了官方的接口文档,还加入了一些个人平时编写的写法与回测,实盘代码。 不定期更新。
欢迎关注收藏。
迅投qmt入门教程(一)
QMT • 李魔佛 发表了文章 • 0 个评论 • 19243 次浏览 • 2023-02-06 19:43
1. 准备:
首先得开一个支持qmt的券商,目前市面上支持qmt的券商越来越丰富了。
初学者可以开一个门槛第一点的,一般入金1w-2w 不等,就可以申请开通了。
鉴于以学习为目的,真正投入到实盘中的资金不会很大,所以初始阶段也不一定就找万一免五的券商,毕竟目前要给免五,资金门槛比较高,一般要100w甚至以上。
笔者推荐国信,国金的qmt, 门槛只要1-2w就足够了,股票费率在万一,可转债万0.4-万0.5。适合初学者,这两家也可以在虚拟机运行,适合苹果mac的用户。 需要的朋友也可以在公众号后台留言: qmt开通
2. 假设已经在券商那里开通了qmt功能,接下来就开始进入教学:
这里以国信的qmt(iquant)为例:
首先要做的就是下载python库。 这个python库指的是qmt的python库,它的版本是3.6.8; 如果你只用qmt内置的python,你就不用自己到网上下载python安装程序,只需要在qmt的设置里面,点一下按钮,就可以安装python库。这里用默认的系统路径就可以了。
3. 第一个量化程序 hello world
新建策略后:
在编辑器里面输入下面的代码:#encoding:gbk
def init(ContextInfo):
print('hello world')
def handlebar(ContextInfo):
#计算当前主图的cci
print("handle bar")
点击回测:
得到输出结果
这里介绍2个概念:(3)Handlebar
handlebar 是整个 Python 模型中的核心执行函数。当模型从数据层获取到运行所需要的数据之后,会对数据集上的每一根 bar,调用一次 handlebar 函数,处理当前这根 bar 上的数据。也就是说,用户模型的核心逻辑都是写在该函数中的,如获取数据,设置下单条件等。在 handlebar 中处理完数据后,用户可以通过 paint 方法将需要绘图输出的结果返回给界面。界面会将输出结果如实的展示出来。 (4)ContextInfo
ContextInfo 是整个 Python 框架中的一个核心对象。它包含了各种与 Python 底层框架交互的 API 方法,也是一个全局的上下文环境,可以在 init 以及 handlebar 这两个函数中自由地传递用户创建的各种自定义数据。
文绉绉的,实际写一个策略,必须包含下面两个函数,而且参数也要一致,参数名随意,不过用默认的就好了。你随便改成没有意义的字符,后面自己看代码也是很麻烦。def init(ContextInfo):
pass
def handlebar(ContextInfo):
pass
init 和 handlebar 是 Python 模型中最重要的方法,也是唯二由 C++ 直接调用的方法,所有的执行代码都尽量写在这两个方法中或由其中的函数调用。【个人不太喜欢这样】
回测时间设置,在右边的菜单栏,有个回测参数,里面设置时间;在菜单“基本信息”里面 ,可以设置回测的时间间隔,可以使用分钟线,日线,小时等等不同周期,不过无法做到tick的回测。最小的只能到分钟。
但是如果你有秒的tick数据,自己写个回测框架也是可以做到秒级的tick级别的回测。很早前笔者就在星球上提供了完整的源码和数据,初学者也可以拿着去改,只要后续更新tick数据,就可以不断的回测策略的最新状态。
你写的回测实盘python代码,是保存在本地的文件夹的:
C:\iquant_gx\python, 前面的C:\iquant_gx 是你的iquant安装路径。
而且底下也有很多的现成的代码:
部分代码可以直接用pycharm就可以打开,没有加密的,但也有一些是加密了的。
比如这个自动逆回购是现成的:
对,这里就有,很多人还到处找人写;# encoding:gbk
import logging
from datetime import datetime, timedelta
from decimal import Decimal as D
from decimal import InvalidOperation
logging.basicConfig(level=logging.INFO)
# 挂单失败后的等待时长,以秒计
TIMEOUT_ON_FAIL_SEC = 30
# 等待account_callback的时长
# RUN_TIME_DELAY = 30
# how is this not defined in package??
MORNING_START = datetime.strptime(datetime.now().strftime('%Y%m%d') + '093000', '%Y%m%d%H%M%S')
MORNING_END = datetime.strptime(datetime.now().strftime('%Y%m%d') + '113000', '%Y%m%d%H%M%S')
NOON_START = datetime.strptime(datetime.now().strftime('%Y%m%d') + '130000', '%Y%m%d%H%M%S')
NOON_END = datetime.strptime(datetime.now().strftime('%Y%m%d') + '153000', '%Y%m%d%H%M%S')
# for SH only
TRANS_COST_1D = D('5e-6')
TRANS_COST_LONG = D('1.5e-7')
TRANS_COST_MAX = 100
# ORDER LIMITS
SH_UPPER = 1e7
SH_LOWER = 1e5
SZ_UPPER = 1e8
SZ_LOWER = 1e3
# ASSET NAME DICT
SH_REV_REPO = {'上交所1天': '204001.SH', '上交所2天': '204002.SH', '上交所3天': '204003.SH',
'上交所4天': '204004.SH', '上交所7天': '204007.SH', '上交所14天': '204014.SH',
'上交所28天': '204028.SH', '上交所91天': '204091.SH', '上交所182天': '204182.SH',
}
SZ_REV_REPO = {'深交所3天': '131800.SZ', '深交所7天': '131801.SZ', '深交所14天': '131802.SZ',
'深交所28天': '131803.SZ', '深交所91天': '131805.SZ', '深交所182天': '131806.SZ',
'深交所4天': '131809.SZ', '深交所1天': '131810.SZ', '深交所2天': '131811.SZ',
}
def init(ContextInfo):
ContextInfo.accID = account
ContextInfo.set_account(ContextInfo.accID)
ContextInfo.use_all_cap = False if ALL_CAP == '否' else True
# global trading control, set to False if detected error on user's side
# stop() does not halt strat
ContextInfo.order_control = False
if not ContextInfo.use_all_cap:
try:
ContextInfo.dollar_vol = float(D(DOLLAR_VOL))
except InvalidOperation:
ContextInfo.order_control = True
raise ValueError('读取资金量失败')
else:
if DOLLAR_VOL != '':
logging.warning('已设定使用全部账户资金,忽略所设置资金量')
try:
ContextInfo.start_time = datetime.strptime(datetime.now().strftime('%Y%m%d') + str(START_TIME), '%Y%m%d%H%M%S')
ContextInfo.asset_name = SH_REV_REPO[ASSET_NAME]
except KeyError:
ContextInfo.asset_name = SZ_REV_REPO[ASSET_NAME]
except ValueError as error:
if 'unconverted data remains' in str(error):
ContextInfo.order_control = True
raise ValueError('读取挂单时间失败')
if not (MORNING_END > ContextInfo.start_time >= MORNING_START) \
and not (NOON_END > ContextInfo.start_time >= NOON_START):
ContextInfo.order_control = True
raise ValueError('挂单时间不在可交易时间内')
ContextInfo.can_order = False
ContextInfo.order_done = False
if not ContextInfo.order_control:
ContextInfo.run_time("place_order", "{0}nSecond".format(TIMEOUT_ON_FAIL_SEC),
ContextInfo.start_time.strftime('%Y-%m-%d %H:%M:%S'), 'SH')
def account_callback(ContextInfo, accountInfo):
if not ContextInfo.can_order:
ContextInfo.can_order = True
if ContextInfo.use_all_cap:
ContextInfo.dollar_vol = accountInfo.m_dAvailable
else:
if ContextInfo.dollar_vol > accountInfo.m_dAvailable:
ContextInfo.order_control = True
raise ValueError('下单额度大于账户可用资金')
# check if order satisfies lower limit for each exchange
if ('SH' in ContextInfo.asset_name and ContextInfo.dollar_vol < SH_LOWER) \
or ('SZ' in ContextInfo.asset_name and ContextInfo.dollar_vol < SZ_LOWER):
ContextInfo.order_control = True
raise ValueError('下单额度低于交易所最低限额')
# checks dollar_vol and rounds the total amount
if 'SH' in ContextInfo.asset_name and ContextInfo.dollar_vol % SH_LOWER != 0:
ContextInfo.dollar_vol = (ContextInfo.dollar_vol // SH_LOWER) * SH_LOWER
logging.warning('下单额度已规整为:{0}'.format(ContextInfo.dollar_vol))
elif 'SZ' in ContextInfo.asset_name and ContextInfo.dollar_vol % SZ_LOWER != 0:
ContextInfo.dollar_vol = (ContextInfo.dollar_vol // SZ_LOWER) * SZ_LOWER
logging.warning('下单额度已规整为:{0}'.format(ContextInfo.dollar_vol))
'''
if 'SH' in ContextInfo.asset_name:
num_batch_order = int(ContextInfo.dollar_vol // SH_UPPER)
remain_order = ContextInfo.dollar_vol - num_batch_order * SH_UPPER
if ContextInfo.asset_name == '204001.SH':
transaction_cost = TRANS_COST_MAX * num_batch_order + remain_order * TRANS_COST_1D
else:
transaction_cost = TRANS_COST_MAX * num_batch_order + remain_order * TRANS_COST_LONG
if transaction_cost + ContextInfo.dollar_vol > accountInfo.m_dAvailable:
ContextInfo.order_control = True
raise ValueError('可用资金不足以垫付交易金额与手续费')
'''
ContextInfo.remain_vol = ContextInfo.dollar_vol
def handlebar(ContextInfo):
return
def place_order(ContextInfo):
if not ContextInfo.can_order or ContextInfo.order_control:
return
if not ContextInfo.order_done:
if 'SH' in ContextInfo.asset_name:
num_batch_order = int(ContextInfo.remain_vol // SH_UPPER)
remain_order = ContextInfo.remain_vol - num_batch_order * SH_UPPER
for _ in range(num_batch_order):
order_remark = '国债逆回购:尝试报单{0}元 {1}'.format(SH_UPPER, ContextInfo.asset_name)
passorder(24, 1102, ContextInfo.accID, ContextInfo.asset_name, 5, -1, SH_UPPER, order_remark, 1,
order_remark, ContextInfo)
else:
num_batch_order = int(ContextInfo.remain_vol // SZ_UPPER)
remain_order = ContextInfo.remain_vol - num_batch_order * SZ_UPPER
for _ in range(num_batch_order):
order_remark = '国债逆回购:尝试报单{0}元 {1}'.format(SZ_UPPER, ContextInfo.asset_name)
passorder(24, 1102, ContextInfo.accID, ContextInfo.asset_name, 5, -1, SZ_UPPER, order_remark,






































































