问财量化选股策略逻辑
选股逻辑为振幅大于1、圆弧形、换手率在3%到12%的股票。
选股逻辑分析
- 振幅大于1可以筛选出成交活跃但不过度的股票,符合短期操作的需求。
- 圆弧形可以筛选出相对于均线波动比较缓和的股票,符合短期操作的需求。
- 换手率3%-12%可以筛选出相对于市场而言适度活跃的股票,避免极低换手率或极高换手率的股票操作风险。
有何风险?
- 选股逻辑相对单一,容易出现选中垃圾股票的情况。
- 不考虑股票的基本面,存在操作风险。
如何优化?
- 引入更多的技术指标如KDJ等,提高选股策略的可靠性。
- 根据不同股票的基本面加入筛选条件,提高选股策略的可靠性。
- 结合资金流向等其他因素进行综合考虑,提高选股策略的可靠性。
最终的选股逻辑
选股逻辑为振幅大于1、圆弧形、换手率在3%到12%的股票。
同花顺指标公式代码参考
(HIGH-LOW)/OPEN >= 0.01 AND
ABS(((2*CLOSE+HIGH+LOW)/4-MAX(MA(CLOSE,5),MA(CLOSE,20))))/(MAX(MA(CLOSE,5),MA(CLOSE,20))) <= 0.1 AND
(VOL/(SMA(VOL,5)/5)/100) >=3 AND
(VOL/(SMA(VOL,5)/5)/100) <=12
python代码参考
import akshare as ak
import talib
def select():
data = ak.stock_zh_a_daily_sina(symbol='sh000001', adjust='qfq')
selected = []
for code in data['symbol'].unique():
code_data = data[data['symbol']==code]
if (code_data['high']-code_data['low'])/code_data['open'] >= 0.01 \
and abs(((2*code_data['close']+code_data['high']+code_data['low'])/4-talib.MAX(code_data['close'].rolling(window=5).mean(), code_data['close'].rolling(window=20).mean())).iloc[-1])/(talib.MAX(code_data['close'].rolling(window=5).mean(), code_data['close'].rolling(window=20).mean())).iloc[-1] <= 0.1 \
and code_data['volume'].iloc[-1]/(code_data['volume'].rolling(window=5).mean()/5)/100 >= 3 \
and code_data['volume'].iloc[-1]/(code_data['volume'].rolling(window=5).mean()/5)/100 <= 12:
selected.append(code)
return selected
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
