问财量化选股策略逻辑
首先,我们需要找到至少5根均线重合的股票。这可以通过计算股票的5日、10日、20日、30日和60日均线的平均值来实现。如果这些均线的平均值在同一个位置,则可以认为这些股票至少有5根均线重合。
接下来,我们需要找到大单净量排行榜。这可以通过计算每个股票在每个交易日的净买入量和净卖出量的差值来实现。然后,我们可以计算每个股票的净买入量和净卖出量的总和,并将其除以交易日的数量。最后,我们可以将每个股票的净买入量和净卖出量的总和排名,并选择排名前10的股票。
最后,我们需要找到近25个交易日有单日涨幅大于等于百分之10的股票。这可以通过计算每个股票在近25个交易日期间每个交易日的最高价和最低价的差值来实现。然后,我们可以计算每个股票的单日涨幅,并将其与100进行比较。最后,我们可以选择单日涨幅大于等于10的股票。
选股逻辑分析
这个策略的逻辑是通过寻找均线重合、大单净量和单日涨幅来筛选股票。它假设这些指标可以帮助我们找到具有较强市场表现的股票。然而,这个策略没有考虑其他因素,例如公司的财务状况、行业前景和管理团队的能力等。因此,它可能无法准确预测股票的表现。
有何风险?
这个策略的潜在风险包括市场风险、技术分析误差和过度交易等。市场风险是指股票市场的波动可能会导致策略的损失。技术分析误差是指我们的计算可能会出现误差,从而导致我们选择错误的股票。过度交易是指我们可能会过度交易,从而增加交易成本并增加策略的损失。
如何优化?
为了优化这个策略,我们可以考虑以下因素:
- 考虑更多的技术指标,例如MACD和布林线等,以更准确地预测股票的表现。
- 考虑公司的财务状况和行业前景等因素,以更准确地评估股票的价值。
- 考虑减少交易频率,以降低交易成本并减少策略的损失。
最终的选股逻辑
最终的选股逻辑如下:
- 计算股票的5日、10日、20日、30日和60日均线的平均值,并选择至少5根均线重合的股票。
- 计算每个股票在每个交易日的净买入量和净卖出量的差值,并将其除以交易日的数量,得到每个股票的净买入量和净卖出量的总和。
- 将每个股票的净买入量和净卖出量的总和排名,并选择排名前10的股票。
- 计算每个股票在近25个交易日期间每个交易日的最高价和最低价的差值,并将其与100进行比较,找到单日涨幅大于等于10的股票。
以下是python代码参考:
import talib
def get_5_ma_and_crossed stocks):
# 计算股票的5日、10日、20日、30日和60日均线的平均值
ma5 = talib.MA(stocks, timeperiod=5)
ma10 = talib.MA(stocks, timeperiod=10)
ma20 = talib.MA(stocks, timeperiod=20)
ma30 = talib.MA(stocks, timeperiod=30)
ma60 = talib.MA(stocks, timeperiod=60)
ma5 ma10 ma20 ma30 ma60
# 选择至少5根均线重合的股票
crossed = ma5 > ma10 and ma10 > ma20 and ma20 > ma30 and ma30 > ma60
return stocks[crossed]
def get_net_volume(stocks):
# 计算每个股票在每个交易日的净买入量和净卖出量的差值,并将其除以交易日的数量
net_volume = stocks.diff() * stocks.close() / stocks.close().rolling(window=25).sum()
net_volume = net_volume.shift(1)
net_volume = net_volume.dropna()
return net_volume
def get_top_net_volume(stocks):
# 计算每个股票的净买入量和净卖出量的总和
net_volume_sum = net_volume.sum(axis=1)
# 将每个股票的净买入量和净卖出量的总和排名,并选择排名前10的股票
top_net_volume = net_volume_sum.nlargest(10)
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


