问财量化选股策略逻辑
本选股策略选取振幅大于1、下午大单净流入,昨日非涨停板的股票作为选股标准,选取结果中的个股作为投资标的。
选股逻辑分析
本选股策略同样从技术面出发,选取振幅大于1和下午大单净流入两个指标来作为参考,目的在于反映出当前股票波动性和市场情绪。同时,我们还关注了昨日是否为涨停板,如果是涨停板则有可能已经过热。通过排除涨停板股票,我们可以更准确的挖掘出具有一定上涨潜力的个股。
有何风险?
和前一个选股策略一样,本选股策略同样仅依据少数指标选股,并没有考虑公司的基本面和市场整体走势等因素,存在一定的风险。同时,通过筛选昨日非涨停板,也可能会错过当日表现较好但已经涨停的个股;另一方面,选股策略中的“波动性过大”和“大单净流入”,也有可能意味着风险过高。
如何优化?
可以加入其它条件,如EPS增长率、ROE、市盈率等多种财务指标来筛选优秀的个股,同时能透过行业和宏观经济数据的综合研判,从而进一步缩小选股范围。
最终的选股逻辑
本选股策略采取振幅大于1、下午大单净流入,昨日非涨停板的股票作为选股依据,以反映股票波动性和市场情绪。同时,通过排除涨停板股票,更好地挖掘具有上涨潜力的个股。选股组合应该从基本面和市场趋势等方面做出进一步的分析和筛选。
同花顺指标公式代码参考
振幅大于1: ABS((HIGH-LOW)/PRE_CLOSE) > 0.01
下午大单净流入: C - O > (0.005 * V - MA(V, 3)) / 10000
昨日非涨停板: REF(HIGH, 1) < REF(LIMIT_UP, 1)
python代码参考
# 引入Tushare库、Numpy库、Pandas库
import tushare as ts
import numpy as np
import pandas as pd
# 连接Tushare库
pro = ts.pro_api()
def select_stocks(n):
selected_stocks = []
# 全部股票
all_stocks = pro.stock_basic(exchange='', list_status='L', fields='ts_code')
for ts_code in all_stocks["ts_code"]:
# 获取股票数据
k_data = pro.klines(ts_code=ts_code, start_date='1 year ago', end_date='today', freq='D')
if (ABS((k_data["high"] - k_data["low"]) / k_data["pre_close"]).all() > 0.01 and
(k_data["close"] - k_data["open"]) > (0.005 * k_data["vol"] - MA(k_data["vol"],3))/10000 and
REF(k_data["high"], 1).all() < REF(k_data["limit_up"], 1).all()):
selected_stocks.append(ts_code)
if len(selected_stocks) == n:
break
return selected_stocks
其中,REF()函数为计算指定日数前的数据;MA()函数为计算指定日数的移动平均值。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
