问财量化选股策略逻辑
首先,我们需要确定至少5根均线重合的股票。这可以通过计算股票价格的5日、10日、20日、60日和120日均线的重合程度来实现。如果这些均线在同一天或相邻的几天内重合,则可以认为这些股票至少有5根均线重合。
接下来,我们需要筛选出昨天龙虎榜的股票。这可以通过查询股票的龙虎榜数据来实现。龙虎榜数据包含了股票的买入和卖出前5名的营业部席位,以及成交金额和成交量等信息。通过筛选出昨天龙虎榜的股票,我们可以找到那些受到市场关注的股票。
最后,我们需要筛选出20日均线大于120日均线的股票。这可以通过计算股票价格的20日和120日均线的差值来实现。如果20日均线大于120日均线,则可以认为这些股票的短期趋势比长期趋势更为积极。
选股逻辑分析
以上三个筛选条件分别关注了股票的均线、龙虎榜和短期趋势。这些条件可以帮助我们找到那些受到市场关注、短期趋势积极的股票。这些股票可能具有更好的投资价值,但同时也存在一定的风险。
有何风险?
以上三个筛选条件并不是完美的,它们可能存在一定的风险。首先,均线指标可能会被操纵或虚假反映股票的真实趋势。其次,龙虎榜数据可能会被操纵或虚假反映股票的真实情况。最后,短期趋势可能会受到市场噪音的影响,从而无法准确反映股票的真实趋势。
如何优化?
为了优化以上筛选条件,我们可以考虑加入更多的筛选条件。例如,我们可以加入股票的市值、市盈率、市净率等指标,以帮助我们筛选出更具投资价值的股票。我们还可以加入技术指标,如MACD、RSI等,以帮助我们更好地判断股票的短期趋势。
最终的选股逻辑
最终的选股逻辑如下:
- 计算股票价格的5日、10日、20日、60日和120日均线的重合程度。
- 筛选出昨天龙虎榜的股票。
- 筛选出20日均线大于120日均线的股票。
- 加入市值、市盈率、市净率等指标,以帮助我们筛选出更具投资价值的股票。
- 加入技术指标,如MACD、RSI等,以帮助我们更好地判断股票的短期趋势。
python代码参考
以下是一个简单的Python代码示例,用于实现以上筛选逻辑:
import talib
def get_ma_scores(symbol):
# 计算股票价格的5日、10日、20日、60日和120日均线
ma5 = talib.MA(symbol, timeperiod=5)
ma10 = talib.MA(symbol, timeperiod=10)
ma20 = talib.MA(symbol, timeperiod=20)
ma60 = talib.MA(symbol, timeperiod=60)
ma120 = talib.MA(symbol, timeperiod=120)
# 计算均线的重合程度
ma_diff = ma5 - ma10
ma_diff2 = ma10 - ma20
ma_diff3 = ma20 - ma60
ma_diff4 = ma60 - ma120
ma_diff5 = ma120 - ma5
# 判断股票是否至少有5根均线重合
if ma_diff > 0 and ma_diff2 > 0 and ma_diff3 > 0 and ma_diff4 > 0 and ma_diff5 > 0:
return True
else:
return False
def get_yesterday_bars(symbol):
# 获取昨天的龙虎榜数据
bars = get_bars(symbol, time_frame='1d')
yesterday_bars = bars[-1:]
return yesterday_bars
def get_ma_diff(symbol):
# 计算股票价格的20日和120日均线的差值
ma20 = talib.MA(symbol, timeperiod=20)
ma120 = talib.MA(symbol, timeperiod=120)
diff = ma20 - ma120
return diff
def get筛选股票():
# 筛选出昨天龙虎榜的股票
bars = get_yesterday_bars('AAPL')
yesterday_bars = bars[-1:]
selected_bars = yesterday_bars['AAPL'].index.tolist()
# 筛选出20日均线大于120日均线的股票
ma_diff = get_ma_diff
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


