问财量化选股策略逻辑
此选股策略选取振幅大于1,周线MA5金叉MA10,并且昨天出现在龙虎榜的股票进行投资,旨在寻找具有短期热度的股票,以期在恰当的时间买入和卖出,获取投资收益。
选股逻辑分析
此选股策略选取了振幅、均线金叉和龙虎榜等指标进行筛选,将重点放在了技术面上。振幅和均线金叉可反映出股票的波动性和趋势性,龙虎榜则可以反映出市场情绪和资金流向。综合这几个指标进行筛选,能够筛选出具有一定热度和投资价值的个股。
有何风险?
此选股策略可能会过于偏重于短期热度而忽略了长期价值,同时龙虎榜的一个交易日的数据也可能给出了误判信号,造成投资风险。
如何优化?
可以加入其他技术和基本面指标进行综合分析,比如加入RSI、MACD、EPS、PE等指标,以提高筛选的准确性和精度。同时,可以针对龙虎榜指标,加入额外的特征工程,比如人工去除“炒作”行为和“市场噪音”,提高筛选的精度。
最终的选股逻辑
本选股策略选取振幅大于1,周线MA5金叉MA10,并且昨天出现在龙虎榜的股票进行投资,并需结合其他技术和基本面指标进行综合分析,以提高选股的精度和准确性。
同花顺指标公式代码参考
- 均线公式:
- MA(N) = SUM(CLOSE, N) / N
- MACD公式:
- DIF = EMA(CLOSE, 12) - EMA(CLOSE, 26)
- DEA = EMA(DIF, 9)
- MACD = 2 * (DIF - DEA)
- RSI公式:
- RS=N日内收盘价涨数和平数的平均数/N日内收盘价跌数和平数的平均数
- RSI=100-100/(1+RS)
python代码参考
import tushare as ts
import pandas as pd
pro = ts.pro_api()
def select_stocks(n):
selected_stocks = []
for code in pro.stock_basic(exchange='', list_status='L', fields='ts_code,name,industry,market,circ_mv,total_mv')['ts_code']:
df = pro.daily(ts_code=code, start_date='20200101', end_date=pd.datetime.now().strftime('%Y%m%d'), fields='ts_code,trade_date,open,high,low,close,vol,circ_mv,total_mv')
if len(df) == 0:
continue
ma5 = df['close'].rolling(5).mean()
ma10 = df['close'].rolling(10).mean()
amplitude = (df['high'] - df['low']) / df['close'].shift(1)
yester_df = pro.top_list(trade_date=(pd.datetime.now()-pd.Timedelta(days=1)).strftime('%Y%m%d'), fields='ts_code')
if len(yester_df) == 0 or code not in yester_df['ts_code'].values:
continue
if amplitude[-1] > 0.01 and ma5[-1] > ma10[-1]:
selected_stocks.append(code)
return selected_stocks[:n]
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
