问财量化选股策略逻辑
选股逻辑为:在换手率3%到12%、流通市值50亿元到100亿元的股票中,筛选KDJ指标刚形成金叉的股票。
选股逻辑分析
该选股逻辑综合考虑了市场活跃度、规模以及技术面指标KDJ的因素,能够更好地对股票整体趋势进行把握。KDJ指标是一种以随机漫步理论为基础,根据统计学原理提出的股票技术分析工具,较好地反映了股票价格的变化情况。通过结合杠杆效应和趋向效应,KDJ指标可以为投资者提供可靠的技术分析依据。
有何风险?
该选股逻辑可能存在过分依赖技术面指标的风险,而忽略了可能存在的基本面因素。同时,KDJ指标的准确性也有一定局限性。
如何优化?
可以将技术面和基本面因素综合考虑,例如评估个股每股收益、市盈率等指标,以便更全面地评价个股的投资价值。
最终的选股逻辑
选出换手率3%至12%之间,流通市值50亿至100亿之间,且KDJ指标刚形成金叉的个股。
同花顺指标公式代码参考
通达信选股公式:
选股条件:(TURNOVERRATE > 3) AND (TURNOVERRATE < 12) AND (CIRCULATION_VALUE > 5000000000 AND CIRCULATION_VALUE < 10000000000)AND (REF(KDJ(9, 3), 1) < REF(KDJ(9, 3), 2)) AND (KDJ(9, 3) > REF(KDJ(9, 3), 1))
其中,TURNOVERRATE表示换手率,CIRCULATION_VALUE表示流通市值,KDJ(9, 3)表示KDJ指标,REF(KDJ(9, 3), 1)表示昨天的KDJ指标,KDJ(9, 3) > REF(KDJ(9, 3), 1)表示当天KDJ指标大于昨天的KDJ指标,并且REF(KDJ(9, 3), 1) < REF(KDJ(9, 3), 2)表示KDJ指标刚形成金叉。
Python代码参考
import pandas as pd
from typing import List
def select_stock(data: pd.DataFrame) -> List[str]:
selected_stocks = []
for code, df in data.groupby(level=0):
if df['circulation_value'].mean() >= 5e9 and df['circulation_value'].mean() <= 1e10 and 3 <= df['turnoverrate'].mean() <= 12:
kdj = df[['high', 'low', 'close']].apply(lambda x: talib.STOCH(x, x, x, fastk_period=9, slowk_period=3, slowd_period=3)[0][-1], axis=1)
if kdj.iloc[-1] > kdj.iloc[-2]:
selected_stocks.append(code)
return selected_stocks
该代码中,筛选出换手率在3%至12%之间,流通市值在50亿至100亿之间,KDJ指标刚形成金叉的股票,返回符合条件的股票列表。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
