问财量化选股策略逻辑
- 至少5根均线重合的股票
- 9点25分涨幅小于6%
- 高点为两日最高
选股逻辑分析
- 该策略通过寻找至少5根均线重合的股票,表示这些股票的价格走势较为稳定,不容易出现大幅波动。
- 9点25分涨幅小于6%,表示该股票在开盘价附近的价格波动较小,可能有潜力继续上涨。
- 高点为两日最高,表示该股票在最近两天的交易中,价格达到了最高点,可能有较强的上涨动力。
有何风险?
- 该策略可能无法找到符合条件的股票,导致无法执行。
- 该策略可能过于保守,错过了一些有潜力的股票。
- 该策略可能过于激进,买入了一些价格已经高估的股票。
如何优化?
- 可以考虑增加均线的数量,以更好地反映股票的价格走势。
- 可以考虑加入其他指标,如成交量、MACD等,以更好地判断股票的走势。
- 可以考虑加入股票的市盈率等基本面指标,以更好地判断股票的价值。
最终的选股逻辑
- 通过以下步骤进行筛选:
- 选取所有A股股票。
- 对于每只股票,计算其5日、10日、20日、30日、60日均线。
- 对于每只股票,找到至少5根均线重合的点。
- 对于每只股票,计算其9点25分的涨幅,并将其与6%进行比较。
- 对于每只股票,找到其最近两天的最高价。
- 将符合以上条件的股票加入筛选列表中。
python代码参考
- 以下代码仅供参考,具体实现方式可能因数据源和环境不同而有所差异。
import tushare as ts
# 设置pro接口token
ts.set_token('your_token')
# 初始化pro接口
pro = ts.pro_api()
# 获取所有A股股票
stock_list = pro.stock_basic()
# 筛选出至少5根均线重合的股票
filtered_stock_list = []
for stock in stock_list:
# 计算均线
ma5, ma10, ma20, ma30, ma60 = pro.get_k_data(stock, 'close', '60d')
# 找到至少5根均线重合的点
for i in range(5, len(ma5)):
if ma5[i] == ma10[i] == ma20[i] == ma30[i] == ma60[i]:
filtered_stock_list.append(stock)
# 筛选出9点25分涨幅小于6%的股票
filtered_stock_list = []
for stock in filtered_stock_list:
# 获取9点25分的涨幅
open_price = pro.get_k_data(stock, 'open', '1d')['open']
close_price = pro.get_k_data(stock, 'close', '1d')['close']
delta = close_price - open_price
if delta > 0:
delta = delta / open_price * 100
else:
delta = -delta / open_price * 100
# 判断涨幅是否小于6%
if delta < 6:
filtered_stock_list.append(stock)
# 筛选出高点为两日最高
filtered_stock_list = []
for stock in filtered_stock_list:
# 获取最近两天的最高价
high_price = pro.get_k_data(stock, 'high', '2d')['high']
# 判断是否为两日最高
if high_price == pro.get_k_data(stock, 'high', '1d')['high']:
filtered_stock_list.append(stock)
# 输出筛选结果
print(filtered_stock_list)
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


