问财量化选股策略逻辑
选股逻辑为:振幅大于1、大单净量排行、dea上涨。该选股策略主要是选取振幅较大、大单量比较集中、并且涉及技术分析指标,即MACD指标。适用于对股票的中短期投资者。
选股逻辑分析
该选股逻辑是结合技术指标的选股策略,技术指标反映了股票的走势和市场情绪,结合基本面指标可以更好地判断股票的投资价值。
有何风险?
该选股逻辑忽略了一些基本面因素,如公司的财务状况和行业竞争环境等。此外,技术指标的判断受到市场情绪和主力资金操作等因素的影响,具有一定的主观性和局限性。
如何优化?
可以加入其他基本面和技术指标,如PE、PS、市净率、趋势线、均线等,以获得更全面、更准确的选股标准。此外,可以结合量价分析和事件分析等方法进行更为全面的分析。
最终的选股逻辑
选股条件为:振幅大于1、大单净量排行、DEA上涨,并结合其他基本面和技术指标进行综合判断。
同花顺指标公式代码参考
# 振幅大于1
SELECT1 = (HIGH - LOW) / HIGH > 0.01
# 大单净量排行
SELECT2 = GET_DRBQ(CODE, NAME, LAST, LASTVOL) >= 0.8
# DEA上涨
SELECT3 = MACD(CLOSE, 12, 26, 9)[2] > MACD(CLOSE, 12, 26, 9)[3]
SELECT = SELECT1 AND SELECT2 AND SELECT3
SORT_BY = '市值'
SORT_ASCEND = False
Python代码参考
import pandas as pd
import numpy as np
import tushare as ts
def get_selected_stocks():
ts.set_token('Your Token')
pro = ts.pro_api()
# 获取股票数据
stock_data = pro.daily(ts_code='000001.SZ', start_date='20220101', end_date='20220301')
stock_list = []
# 进行选股
for idx, row in stock_data.iterrows():
# 判断条件,振幅大于1,大单净量排行,DEA上涨
if not ((row['high'] - row['low']) / row['high'] > 0.01) or \
GET_DRBQ(row['ts_code'], row['name'], row['close'], row['vol']) < 0.8 or \
MACD(row['close'])[2] <= MACD(row['close'])[3]:
continue
selected_data = {}
selected_data['ts_code'] = row['ts_code']
selected_data['stock_name'] = row['name']
selected_data['stock_price'] = row['close']
selected_data['circ_market_cap'] = row['circ_mv']
# 可添加其他指标
stock_list.append(selected_data)
# 按市值从大到小排序
selected_stocks_sorted = sorted(selected_stocks, key=lambda x: x['circ_market_cap'], reverse=True)
return selected_stocks_sorted
以上为Python代码实现,选股逻辑为:振幅大于1、大单净量排行、DEA上涨。同样需要注意MACD指标周期和各移动平均线设置可能需要在不同时期进行调整以获得更好的效果。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
