问财量化选股策略逻辑
- 至少5根均线重合的股票:选取5条均线(如5日、10日、20日、60日、120日)并让它们在同一天重合的股票。
- 9点25分涨幅小于6%:选取在9点25分开盘后,股价涨幅小于6%的股票。
- 大单净量排行:选取大单净量排名前100的股票。
选股逻辑分析
- 选取至少5根均线重合的股票,意味着股票的价格趋势较为稳定,且短期内有较强的支撑和阻力。
- 选取9点25分涨幅小于6%的股票,意味着股票在开盘后受到资金的追捧,短期内有较大的上涨潜力。
- 选取大单净量排行前100的股票,意味着股票受到市场资金的关注程度较高,且有较强的市场表现力。
有何风险?
- 选取至少5根均线重合的股票,可能会忽略股票的长期趋势,导致错过一些优质股票。
- 选取9点25分涨幅小于6%的股票,可能会忽略股票的开盘价,导致错过一些低吸机会。
- 选取大单净量排行前100的股票,可能会忽略股票的成交量,导致错过一些成交量不大的股票。
如何优化?
- 可以加入更多均线,如100日、200日等,以更好地反映股票的长期趋势。
- 可以加入开盘价的限制条件,如开盘价小于昨日收盘价的5%等,以更好地捕捉低吸机会。
- 可以加入成交量的限制条件,如成交量小于100万股的股票等,以更好地捕捉成交量不大的股票。
最终的选股逻辑
- 选取5条均线(如5日、10日、20日、60日、120日)并让它们在同一天重合的股票。
- 选取在9点25分开盘后,股价涨幅小于6%的股票。
- 选取大单净量排名前100的股票。
- 加入更多均线,如100日、200日等。
- 加入开盘价的限制条件,如开盘价小于昨日收盘价的5%等。
- 加入成交量的限制条件,如成交量小于100万股的股票等。
python代码参考
- 选取至少5根均线重合的股票:
def select_stocks():
# 获取所有股票的收盘价
prices = get_prices()
# 计算5日、10日、20日、60日、120日的均线
ma5 = prices.rolling(window=5).mean()
ma10 = prices.rolling(window=10).mean()
ma20 = prices.rolling(window=20).mean()
ma60 = prices.rolling(window=60).mean()
ma120 = prices.rolling(window=120).mean()
# 计算股票的收盘价与均线的差值
diff = prices - ma5
# 选取收盘价与均线的差值小于0的股票
stocks = diff.where(diff < 0, np.nan).dropna()
return stocks
- 选取9点25分涨幅小于6%的股票:
def select_stocks():
# 获取所有股票的开盘价和收盘价
prices = get_prices()
# 计算9点25分的开盘价
open_prices = prices['Open']
# 计算股票的涨幅
gains = prices['Close'] / open_prices
# 选取涨幅小于6%的股票
stocks = gains.where(gains < 0.06, np.nan).dropna()
return stocks
- 选取大单净量排名前100的股票:
def select_stocks():
# 获取所有股票的成交量和成交额
volumes = get_volumes()
amounts = get_amounts()
# 计算大单净量
net_volume = volumes - amounts
# 计算股票的大单净量排名
ranks = net_volume.rank(pct=True, ascending=False)
# 选取大单净量排名前100的股票
stocks = ranks.head(1
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
