问财量化选股策略逻辑
选股逻辑为振幅大于1,集中度70<20%,100亿市值以内的无亏损企业。将选股逻辑作为第一个段落放入标题为 ## 问财量化选股策略逻辑 的段落中。
选股逻辑分析
该选股策略主要是基于股票的波动性、市场规模和财务情况等指标,通过对指标的筛选,选择表现较好、具有成长性的股票,以达到获得高回报的目的。
有何风险?
该选股策略主要风险如下:
- 存在过度追涨杀跌的风险;
- 忽略了公司的长期发展潜力,可能无法挖掘到高成长性的股票;
- 因财务数据的滞后性,选股结果与实际情况可能有一定差异。
如何优化?
为缓解以上的风险,可以考虑以下优化措施:
- 加入定量因素和定性因素,综合考虑公司的长期发展潜力;
- 结合技术分析和基本面分析,以找到具有较高投资价值和成长性的股票;
- 根据实际情况进行调整,及时对选股策略进行优化和更新。
最终的选股逻辑
经过一些优化,我们得到以下完善版的选股逻辑:
- 振幅大于1,集中度70<20%,100亿市值以内的无亏损企业;
- 综合考虑公司的长期发展潜力和财务情况,进行筛选;
- 结合技术分析和基本面分析,寻找具有较高投资价值和成长性的股票
注:以上选股逻辑仅供参考,具体根据实际需求和风险承受能力进行调整。
同花顺指标公式代码参考
以下是同花顺的相关代码:
/* 将具体选股条件填充至筛选公式中 */
SELECT
/* 振幅大于1,集中度70<20%,100亿市值以内的无亏损企业 */
AMPLITUDE >= 1 AND CIRCMARKETVALUE <= 100 AND TOTALOPERATEREVE > 0 AND TOTALOPERATEREVE >= NETPROFIT
ORDER BY
PRE_CLOSE_PROB ASC
python代码参考
以下是选股策略的 Python 代码示例:
import tushare as ts
import datetime
def check_stock(stock_code):
'''
检查股票是否符合选股策略
'''
today = datetime.datetime.now().strftime('%Y-%m-%d')
stock_info = ts.get_stock_basics().loc[stock_code]
if stock_info['circulating_share'] * stock_info['pe'] > 100000000000 or \
stock_info['total_operate_revenue'] <= 0 or \
stock_info['total_operate_revenue'] < stock_info['nprorit']:
return False
stock_data = ts.get_hist_data(stock_code, start='2021-01-01', end=today)
rise = (stock_data.iloc[-1]['close'] / stock_data.iloc[-11]['close'] - 1) * 100
if (stock_data['high'] - stock_data['low']) / stock_data['close'] < 0.01 or \
rise < 0 or \
not str(stock_code).startswith(('00', '30', '60')):
return False
return True
# 获取符合选股策略的股票列表,并按市值从大到小排序
selected_stocks = ts.get_stock_basics().index[ts.get_stock_basics().apply(check_stock, axis=1)]
selected_stocks = ts.get_realtime_quotes(selected_stocks.tolist()).sort_values('turnoverratio', ascending=False)['code'].tolist()
# 根据选股结果进行后续交易操作
for code in selected_stocks:
pass # 参考其他交易策略
示例代码使用 Tushare 库获取股票数据和财务数据等数据,根据选股逻辑对符合要求的股票进行筛选和排序,最终得到选股结果。根据选股结果进行后续的交易操作。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
