问财量化选股策略逻辑
- 今日增仓占比>5%
- 竞价涨幅>-2<5
- 按今日竞价金额排序前5
选股逻辑分析
- 今日增仓占比>5%:说明这只股票在最近一段时间内有较多的资金流入,说明市场对该股票的看好程度较高。
- 竞价涨幅>-2<5:说明这只股票在竞价阶段的涨幅在合理范围内,没有出现过大的波动,说明市场对该股票的预期较为稳定。
- 按今日竞价金额排序前5:说明这只股票在今天的竞价阶段交易较为活跃,说明市场对该股票的关注度较高。
有何风险?
- 由于该策略只考虑了股票的短期表现,可能会忽略股票的长期趋势,从而导致选出的股票表现不佳。
- 如果市场对该股票的预期过高,可能会导致股票在竞价阶段涨幅过大,从而使得该策略无法选出这只股票。
如何优化?
- 可以考虑加入更多因素,例如股票的市盈率、市净率等,以更全面地评估股票的价值和风险。
- 可以考虑加入更多时间周期的数据,例如短期、中期和长期数据,以更好地把握股票的趋势。
最终的选股逻辑
- 今日增仓占比>5%
- 竞价涨幅>-2<5
- 按今日竞价金额排序前5
- 股票的市盈率、市净率等
- 短期、中期和长期数据
python代码参考
import talib
def get_top_five_worthiest_bars(data):
# 计算今日增仓占比
open_price = data['open']
close_price = data['close']
volume = data['volume']
total_amount = volume * close_price
total_amount = total_amount.sum()
daily_buy_amount = total_amount / len(data)
daily_buy_amount = daily_buy_amount.sum()
daily_buy_amount_percentage = daily_buy_amount / open_price.sum() * 100
top_five_worthiest_bars = []
for bar in data:
if bar['open'] == open_price[0]:
bar['buy_amount_percentage'] = daily_buy_amount_percentage
top_five_worthiest_bars.append(bar)
top_five_worthiest_bars.sort(key=lambda x: x['buy_amount_percentage'], reverse=True)
return top_five_worthiest_bars
def get_top_five_bars(data):
# 计算今日增仓占比
open_price = data['open']
close_price = data['close']
volume = data['volume']
total_amount = volume * close_price
total_amount = total_amount.sum()
daily_buy_amount = total_amount / len(data)
daily_buy_amount = daily_buy_amount.sum()
daily_buy_amount_percentage = daily_buy_amount / open_price.sum() * 100
top_five_bars = []
for bar in data:
if bar['open'] == open_price[0]:
bar['buy_amount_percentage'] = daily_buy_amount_percentage
top_five_bars.append(bar)
top_five_bars.sort(key=lambda x: x['buy_amount_percentage'], reverse=True)
return top_five_bars
def get_top_five_bars_with_sorting(data):
# 计算今日增仓占比
open_price = data['open']
close_price = data['close']
volume = data['volume']
total_amount = volume * close_price
total_amount = total_amount.sum()
daily_buy_amount = total_amount / len(data)
daily_buy_amount = daily_buy_amount.sum()
daily_buy_amount_percentage = daily_buy_amount / open_price.sum() * 100
top_five_bars = []
for bar in data:
if bar['open'] == open_price[0]:
bar['buy_amount_percentage'] = daily_buy_amount_percentage
top_five_bars.append(bar)
top_five_bars.sort(key=lambda x: x['buy_amount_percentage'], reverse=True)
return top_five_bars
def get_top_five_bars_with_sorting_and_filtering(data):
# 计算今日增仓占比
open_price = data['open']
close_price = data['close']
volume = data['volume']
total_amount = volume * close_price
total_amount = total_amount.sum()
daily_buy_amount = total_amount / len(data)
daily_buy_amount = daily_buy_amount.sum()
daily_buy_amount_percentage = daily_buy_amount / open_price.sum() * 100
top_five_bars = []
for bar in data:
if bar['open'] == open_price[0]:
bar
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
