问财量化选股策略逻辑
该选股策略选取振幅大于1、周线MA5金叉MA10,且收盘价在Bollinger Bands中间带上轨和下轨之间的股票。该选股逻辑结合了价格波动性、价格趋势和趋势的继续性,可以用于短期和中期投资。
选股逻辑分析
此选股逻辑主要通过Bollinger Bands指标综合判断价格的变化,并借助MA5和MA10指标帮助判断趋势的方向。同时,振幅大的股票价格波动大,更适合短期交易。
有何风险?
使用Bollinger Bands指标选择股票,如果市场行情出现消极变化、市场情绪不佳等因素,认为Bollinger Bands指标有一定的局限性,选择的股票可能存在波动性较大的风险。
如何优化?
在实际使用过程中,可以考虑调整选股逻辑中的参数,如振幅、均线长度和Bollinger Bands的时间周期等,以更准确地挖掘市场机会。此外,可以结合其他指标,如相对强弱指数(RSI)、移动平均散度金叉等指标,来验证选股策略的有效性。
最终的选股逻辑
本选股策略选取振幅大于1、周线MA5金叉MA10,且收盘价在Bollinger Bands中间带上轨和下轨之间的股票。选股逻辑需要根据市场情况适当调整。
同花顺指标公式代码参考
- Bollinger Bands公式:
- up_band = MA(N) + 2 * SD
- mid_band = MA(N)
- low_band = MA(N) - 2 * SD
- SD = STD(CLOSE, N)
- 均线公式:
- MA(N) = SUM(CLOSE, N) / N
python代码参考
import tushare as ts
import talib
PRO = ts.pro_api('your_token')
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']:
if code.startswith('300') or code.startswith('688'):
continue
valuation = PRO.daily_basic(ts_code=code, start_date='20200101', end_date='20211231', fields='circ_mv')['circ_mv'][-1]
if valuation < 2e8:
continue
df = PRO.daily(ts_code=code, start_date='20180101', end_date=datetime.now().strftime('%Y%m%d'), fields='ts_code,trade_date,open,high,low,close')
if len(df) == 0:
continue
ma5 = df['close'].rolling(5).mean()
ma10 = df['close'].rolling(10).mean()
upper, mid, lower = talib.BBANDS(df['close'])
amplitude = (df['high'] - df['low']) / df['close'].shift(1)
if amplitude[-1] > 0.01 and ma5[-1] > ma10[-1] and df['close'][-1] < upper[-1] and df['close'][-1] > mid[-1]:
selected_stocks.append(code)
return selected_stocks[:n]
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
