问财量化选股策略逻辑
本选股策略选取振幅大于1、下午大单净流入和竞价主力净买大于0作为选股指标,选取结果中涨幅最高的个股作为投资标的。
选股逻辑分析
本选股策略同样集成了技术面和基本面的指标。振幅大于1可以筛选出股价波动较大的个股,下午大单净流入和竞价主力净买反应了股票市场的资金流向和股票市场的情绪性。这些指标的综合考量可以提高选股的侧重点和筛选效果。
有何风险?
该选股策略仅仅关注了短期的波动性和资金流向,没有充分考虑公司的基本面和长期发展潜力,存在一定的风险。同时,过于注重短期涨幅的选取也可能导致投资标的的回撤风险。
如何优化?
可以加入其他指标,如市盈率、市净率等,进行更全面的筛选,同时对选股策略进行持续的优化和修复,以提高其适用性和准确度。同时,在选取涨幅最高的个股时,可以加入更多的过滤条件,如股票市值、行业等,以提高投资标的的质量。
最终的选股逻辑
本选股策略选取振幅大于1、下午大单净流入和竞价主力净买大于0作为选股指标,选取结果中涨幅最高的个股作为投资标的。
同花顺指标公式代码参考
振幅大于1: ABS((HIGH-LOW)/PRE_CLOSE) > 0.01
下午大单净流入: C - O > (0.005 * V - MA(V, 3)) / 10000
竞价主力净买大于0: IF(CURRENT < OPEN, IF((BIDV1 / 100) * CURRENT >= 5000 AND (BIDV1 / 100) / (BIDV2 / 100) >= 3, 1, 0), 0)
python代码参考
# 引入Tushare库、Numpy库、Pandas库
import tushare as ts
import numpy as np
import pandas as pd
# 连接Tushare库
pro = ts.pro_api()
def select_stocks(n):
selected_stocks = []
selected_scores = []
# 所有股票
all_stocks = pro.stock_basic(exchange='', list_status='L', fields='ts_code')
for ts_code in all_stocks["ts_code"]:
# 获取股票数据
k_data = pro.klines(ts_code=ts_code, start_date='1 year ago', end_date='today', freq='D')
quote_data = pro.query('daily', ts_code=ts_code, start_date='1 year ago', end_date='today')
bid_ask_data = pro.query('market_detail', ts_code=ts_code, trade_date='yesterday')
score = (ABS((k_data["high"] - k_data["low"]) / k_data["pre_close"]) > 0.01).all() and (quote_data["close"] - quote_data["open"] > (0.005 * quote_data["vol"] - MA(quote_data["vol"],3))/10000).all() and IF(quote_data["close"] < quote_data["open"], IF((bid_ask_data["bid_vol1"]/100) * quote_data["close"] >= 5000 and (bid_ask_data["bid_vol1"]/100) / (bid_ask_data["ask_vol1"]/100) >= 3, 1, 0), 0)
if score:
selected_stocks.append(ts_code)
selected_scores.append(score.sum())
if len(selected_stocks) == n:
break
# 返回涨幅最高的n只股票
sorted_stocks = [x for _, x in sorted(zip(selected_scores,selected_stocks),reverse=True)]
return sorted_stocks
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
