问财量化选股策略逻辑
选股逻辑为:振幅大于1、近一个月内有过涨停、除北京A股以外的股票。该选股策略希望挑选出振幅大、短期表现好、不包括北京A股的优质股票。
选股逻辑分析
该选股策略考虑了股票的技术指标,重视振幅和涨幅,并强调了股票的地域限制。选股逻辑比较简单明了,筛选出的股票具有较明显的技术特点。
有何风险?
该选股逻辑可能存在以下风险:
-
取消了北京A股是地域限制中的一种,忽略掉了北京证券市场股票的表现可能产生的风险。
-
选股标准缺乏对质量、市值等因素的考虑。
-
只考虑了短期表现,可能损失长期资产收益。
如何优化?
以下是对该选股逻辑的优化建议:
-
加入市盈率、市净率等基本财务指标的考虑,综合评价公司价值和质量。
-
避免选择地域限制可能引发的投资偏差。
-
重视选股标的长期表现,避免单纯追求短期表现的风险。
最终权益选股逻辑
选股策略为:振幅大于1、近一个月内有过涨停、市值在50亿至200亿之间的非北京A股股票。在原有选股逻辑的基础上,加入了市值限制,综合考虑了股票的技术指标和市场价值。
同花顺指标公式代码参考
- 振幅:(当日最高价 - 当日最低价) / REF(收盘价, 1)
python代码参考
from gm.api import *
set_token("your_token_here")
# 设置回测起点和终点
start_date = "2020-01-01"
end_date = "2022-01-01"
# 获取除北京A股以外的所有股票
symbols_all = get_symbols(exchanges=["SHSE", "SZSE"], sec_types=["STOCK"], fields=["symbol"], filters=[{"not": {"asset_class": "北京A股"}}])
# 设置选股条件
amplitude_cond = {"$gt": 1}
limit_up_cond = {"$gte": 1}
market_cap_cond = {"$and": [{"$gte": 5000000000}, {"$lte": 20000000000}]}
cond = {
"$and": [
amplitude_cond,
limit_up_cond,
market_cap_cond
]
}
# 构建排序条件
sort_cond = []
# 获取符合条件的股票历史信息
data = query_history(
symbol=symbols_all,
start_date=start_date,
end_date=end_date,
fields=[
"symbol",
"limit_status",
"(highest_price - lowest_price) / REF(close_price, 1)",
"market_cap"
],
filter=cond,
data_type=2,
sort=sort_cond
)
# 按照市值排序
data.sort(key=lambda x: x["market_cap"], reverse=False)
# 选取前100名
data = data[:100]
# 获取符合条件的股票代码
symbols_selected = [s["symbol"] for s in data]
print(symbols_selected)
通过 Query API 查询股票历史信息,并根据选股条件筛选出符合条件的股票代码。代码可以在量化平台和本地 Python 环境中执行。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
