问财量化选股策略逻辑
该选股策略选择元宇宙行业中,同时满足以下条件的股票进行投资:三个技术指标同时金叉,且15分钟周期MACD绿柱变短。
选股逻辑分析
该选股策略的选股条件包括:选择元宇宙行业、三个技术指标同时金叉、15分钟周期MACD绿柱变短。选择元宇宙行业有望利用区块链等新技术推进金融等传统行业的转型,同时选择三个技术指标同时金叉可以精准地捕捉上涨趋势。15分钟周期MACD绿柱变短可以判断短期下跌趋势转为反弹的机会。
有何风险?
该选股策略存在以下风险:
- 忽略了公司的财务状况、市场竞争等多方面因素,确定股票越多,潜在风险越大。
- 技术指标是市场行情的反应,快速变化的市场中,技术指标很难做到精确预测。
- 确定15分钟周期MACD绿柱变短的时间窗口会影响到选股的效果,需要针对市场变化进行调整。
如何优化?
为了最大程度上降低选股策略的风险,可以进行以下优化:
- 加入基本面指标进行选股,相辅相成,降低单个指标选择股票的风险。
- 不同时间窗口下选择股票,根据历史表现选择最优的时间窗口。
- 加入其他的技术指标作为辅助指标,以多个技术指标的组合方式进行股票的分析和筛选。
最终的选股逻辑
综合以上分析,可以得到一个较为完善的选股逻辑:选择元宇宙行业中,同时满足以下条件的股票进行投资:三个技术指标同时金叉、15分钟周期MACD绿柱变短。
具体的选股条件为:
- 元宇宙行情为GNXQ;
- MACD金叉:CROSS(MACD(12,26,9), MACDSignal(12,26,9));
- 15分钟周期MACD绿柱变短:(DIFF(12,26)-DEA(12,26,9))<(DIFF(12,26).shift(1)-DEA(12,26,9).shift(1)) & (DIFF(12,26)-DEA(12,26,9))<(DIFF(12,26).shift(2)-DEA(12,26,9).shift(2))
- 非科创板股票:IN_BBSTOCK(FALSE);
通过以上选股策略可以选举出同时具有良好技术面和成长性的企业,适合价值投资和短线投资。
同花顺指标公式代码参考
- 元宇宙行情:GNBK('gnxq')
- MACD指标:MACD(12,26,9)、MACDSignal(12,26,9)
- 15分钟周期MACD指标:DIFF(12,26)、DEA(12,26,9)
- BBSTOCK:IN_BBSTOCK(FALSE)
Python代码参考
import pandas as pd
import tushare as ts
def stock_selector(industry):
ts.set_token('your_token')
pro = ts.pro_api()
data1 = pro.query('stock_basic', exchange='', list_status='L', fields='ts_code, name, area, industry, list_date, pe, pb, roe')
data1_select = data1[(data1['industry']==industry) & (data1['tot_mv'] < 50000) & (data1['circ_mv'] < 50000) & (data1['area']!='北京') & (data1['pe'] < 100) & (data1['pb'] < 10)]
stocks = []
for ts_code in data1_select['ts_code']:
data = pro.query('daily', ts_code=ts_code, start_date='20220501', end_date='20220506', fields='ts_code, open, high, low, close, vol, pct_chg, limit_up, MACD, MACDSignal, DIFF, DEA, BBSTOCK')
mask1 = (data['MACD'] > data['MACDsignal']) & (data['MACD'].shift(1) < data['MACDsignal'].shift(1))
mask2 = (data['DIFF']-data['DEA'])<(data['DIFF'].shift(1)-data['DEA'].shift(1)) & (data['DIFF']-data['DEA'])<(data['DIFF'].shift(2)-data['DEA'].shift(2))
mask3 = (data['BBSTOCK'] == '0.0')
mask = mask1 & mask2 & mask3
if mask.any():
stocks.append([ts_code, data['close'].iloc[-1]])
return pd.DataFrame(stocks, columns=['ts_code', 'close'])
其中,参数industry为所选元宇宙的行业名称。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
