问财量化选股策略逻辑
选股逻辑:在换手率3%到12%,外盘/内盘大于1.3的基础上,添加MACD指标,选取15分钟周期,选择绿柱变短的股票。
选股逻辑分析
在原有基础上加入了MACD指标和分钟级别的选股变量,更加精细地选择股票,提高了选股的准确性。
有何风险?
该选股策略仍然相对较为偏重技术分析,没有充分考虑股票的基本面因素,可能会产生某些误判。同时,该选股策略也有一定的时效性,可能在不同市场环境下表现不同。
如何优化?
可以同时加入更多的技术指标,如KDJ、RSI、均线等,加强对市场的判断和筛选能力。同时,可以结合经济与政策等基本面因素,运用量化分析方法对指标进行修正和加权,以提高选股策略的效果。
最终的选股逻辑
在换手率3%到12%,外盘/内盘大于1.3的基础上,选择15分钟周期MACD绿柱变短的股票。
同花顺指标公式代码参考
以下是同花顺指标所需公式:
选股公式:
SELECT STOCK_ID AS code FROM XDT_MinuteTable WHERE
( OUT_VOL / IN_VOL > 1.3 ) AND
( UNIT > 10000 ) AND
( (MACD(15,26,10) - MACD_SIGNAL(15,26,10)) < (REF(MACD(15,26,10) - MACD_SIGNAL(15,26,10), 1))) AND
( C_STATUS in ('正常', 'ST', 'ST*', 'XD', 'DRS', 'DRS*', 'GRS', 'PG') )
ORDER BY T_UNIT DESC;
Python代码参考
以下是 Python 代码实现该选股策略:
import pandas as pd
from typing import List
from datetime import datetime, timedelta
def select_stock(data: pd.DataFrame, n=10) -> List[str]:
selected_stocks = []
for code, df in data.groupby(level=0):
if ((df['volume'].iloc[-1] / df['volume'].iloc[-6:-1].mean() > 3) and \
(df['turnover_rate'].iloc[-1] > 3) and (df['turnover_rate'].iloc[-1] < 12) and \
(df['outside_volume'].iloc[-1] / df['inside_volume'].iloc[-1] > 1.3) and \
(df['market'].iloc[-1] != 'KCB') and \
(df['close'].iloc[-1] > df['ma60'].iloc[-1]) and \
((df['macd'].iloc[-1] - df['macdsignal'].iloc[-1]) < df['macd'].diff().iloc[-2])):
s_weight = df['turnover_rate'].mean() * df['volume'].mean() / (df['close'].iloc[-1] * 10000)
selected_stocks.append((code, s_weight))
selected_stocks.sort(key=lambda x: x[1], reverse=True)
selected_stocks = selected_stocks[:n]
return [x[0] for x in selected_stocks]
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


