问财量化选股策略逻辑
选股逻辑为:在换手率3%到12%范围内,选取kdj(k)增长值大于0的个股,并按照今日竞价金额排序,选取前五个个股。
选股逻辑分析
该选股逻辑在选取个股时考虑到个股市场表现和技术面因素,同时考虑了今日竞价金额的排序。在选取技术面因素时选取了KDJ(K)增长值大于0的个股,表明该个股技术面表现良好,并且在今日竞价金额排名中处于前五位,表明该个股也具有一定的市场关注度。
有何风险?
该选股逻辑过于强调了今日竞价金额的排序,可能导致选出来的个股仅仅是市场短期热点,基本面和长期表现等因素没有得到充分考虑。同时,在选取KDJ技术指标时,仅选取KDJ(K)增长值大于0的个股,并没有涵盖到更全面的技术面因素。
如何优化?
除了考虑到今日竞价金额的排序和KDJ技术指标增长值外,还应考虑到更全面的市场因素和技术面因素,如股票市盈率、市净率、市值等基本面指标; 更长期的均线、趋势线等技术面指标。同时,应了解今日竞价金额的计算方式和对该指标可能会产生影响的因素,并将其与其他因素结合,综合考虑。
最终的选股逻辑
在换手率3%到12%之间的个股中,选取KDJ(K)增长值大于0的个股,并按照今日竞价金额排序,选取前五个个股。
同花顺指标公式代码参考
通达信选股公式:
选股条件:TURNOVERRATE>3 AND TURNOVERRATE<12 AND KDJ(9,3)>REF(KDJ(9,3),1) AND RANKJ(BIDVOL1)>=(TOTALCOUNT/2-5) AND RANKJ(BIDVOL1)<=(TOTALCOUNT/2)
其中,TURNOVERRATE表示换手率,KDJ表示KDJ技术指标,REF表示引用前一根K线的数据,RANKJ表示按今日竞价金额排序,BIDVOL1表示委买一资金流入,TOTALCOUNT表示股票总数。选股条件同时要求选取KDJ(K)增长值大于0的个股,并按照今日竞价金额排序,选取前五个个股。
Python代码参考
import pandas as pd
from typing import List
def select_stock(data: pd.DataFrame) -> List[str]:
selected_stocks = []
stock_data = data[data['turnover_rate'].between(3, 12)]
stock_data = stock_data[stock_data['kdj_k'].diff() > 0]
stock_data = stock_data.sort_values(by='bid_vol', ascending=False)
selected_stocks = stock_data.head(5).index.levels[0].tolist()
return selected_stocks
该代码中选取换手率3%到12%之间的个股,根据KDJ技术指标选取KDJ(K)线增长值大于0的个股,按照委买一资金流入排序,选取前五个个股,返回符合条件的股票列表。其中,data表示记录个股交易数据的DataFrame。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


