问财量化选股策略逻辑
选股逻辑:在换手率3%到12%、外盘/内盘比例大于1.3、连续3天以上大单净量大于0.05的股票中,按当日涨幅排序,选取排名前5的股票。
选股逻辑分析
该选股逻辑除了考虑了换手率和外盘/内盘比例外,还增加了大单净量参数,主要筛选出了大单资金流入情况良好的股票,以及按当日涨幅排序,选择表现较好的股票。该选股逻辑适用于市场走势向好且资金流入较为明显的情况下。
有何风险?
该选股逻辑可能存在或暂时受制于市场变化,同时大单资金流入只是选股条件之一,不能全面反映业绩情况、市场表现等因素。
如何优化?
可以增加更多额外的选股因素,如股票基本面数据、行业特征等,同时需要选股策略与市场和政策变化等因素相结合,以提升选股策略的波动性和准确性。
最终的选股逻辑
选取换手率3%到12%、外盘/内盘比例大于1.3、连续3天以上大单净量大于0.05的股票中,按当日涨幅排序,选取排名前5的股票,并在此基础上加入更多的基本面和行业特征等因素,以提高选股策略的准确性和可靠性。
同花顺指标公式代码参考
以下是同花顺指标所需公式:
选股公式:
SELECT
code
FROM
(SELECT
code,
outvolume / involume AS volume_ratio,
turnoverrate,
avg_institution_net_percent_3days,
close,
row_number() OVER (ORDER BY increase_rate DESC) AS rn
FROM
KDATA
WHERE
turnoverrate >= 3 AND turnoverrate <= 12
AND outvolume / involume > 1.3
AND avg_institution_net_percent_3days > 0.05) t
WHERE
rn <= 5
Python代码参考
import pandas as pd
from typing import List
def select_stock(data: pd.DataFrame, n: int) -> List[str]:
selected_stocks = []
for code, df in data.groupby(level=0):
if ((df['turnoverrate'].iloc[-1] > 3) and \
(df['turnoverrate'].iloc[-1] < 12) and \
(df['outvolume'].iloc[-3:].sum() - df['involume'].iloc[-3:].sum() > 0.05) and \
(df['outvolume'].iloc[-1] / df['involume'].iloc[-1] > 1.3)):
selected_stocks.append(code)
df = data.loc[selected_stocks, ['close','increase_rate']]
selected = df.sort_values(by='increase_rate', ascending=False).head(n)
selected_stocks = list(selected.index)
return selected_stocks
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
