问财量化选股策略逻辑
本选股策略选取振幅大于1、昨日非涨停板、昨日股价大于250日均线的股票。
选股逻辑分析
该选股策略主要从技术面入手,选取振幅较大、短期震荡下的股票,并注重长期趋势的确认。具体来说,选取满足昨日非涨停板,且昨日股价大于250日均线的的股票。
有何风险?
该选股策略仍然忽略了公司的基本面因素,存在选中低质量公司的风险;同时,纯技术面选股容易受到市场短期波动的影响,存在短期误判的风险。
如何优化?
同样可以综合加入其它技术指标和基本面因素,结合个人风险和收益要求,设置相应的买入点和卖出点。
最终的选股逻辑
本选股策略选取振幅大于1、昨日非涨停板、昨日股价大于250日均线的股票,作为买入信号,策略持有期可以根据个人风险和收益要求灵活调整。
同花顺指标公式代码参考
本选股策略同样依赖于股票的技术指标,同花顺指标代码如下:
昨日收盘价大于250日均线:REF(CLOSE, 1) > MA(CLOSE, 250)
python代码参考
# 引入Tushare库和talib库
import tushare as ts
import talib
# 连接Tushare库
pro = ts.pro_api()
def select_stocks(n):
selected_stocks = []
today = pro.trade_cal(exchange='', is_open='1')["cal_date"].values[-1]
yesterday = pro.trade_cal(exchange='', is_open='1', end_date=today, count=2)["cal_date"].values[0]
# 筛选出振幅大于1、昨日非涨停板、昨日收盘价大于250日均线的股票
quote = pro.stock_basic(exchange='', list_status='L', fields='ts_code, name, market, list_date')
quote = quote[quote["market"].isin(["主板", "中小板", "创业板"])]
for ts_code in quote["ts_code"]:
stock_data = pro.daily(ts_code=ts_code, start_date="20000101", end_date=today)
ma250 = talib.SMA(stock_data["close"], timeperiod=250)
if len(stock_data) > 1 and stock_data["high"].max() != stock_data["low"].min()\
and stock_data.iloc[-2]["close"] > stock_data.iloc[-2]["low"] \
and stock_data.iloc[-2]["close"] > ma250.iloc[-2]:
selected_stocks.append(ts_code)
return selected_stocks[:n]
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
