问财量化选股策略逻辑
选股逻辑为:振幅大于1、换手率大于2%小于9%、20日均线大于120日均线的股票。该选股策略主要考虑了股票波动性、市场交易情况以及股票的技术指标,找出一些稳定性较好的投资标的。
选股逻辑分析
该选股策略主要选取了振幅大于1、交易活跃、20日均线趋势向上的股票。技术指标上较好地对个股的走势进行了分析和筛选。
有何风险?
该选股策略主要强调技术指标的选取,但技术指标尤其是移动平均线等指标的应用存在滞后性。同时,可能存在市场和宏观经济等因素对个股影响过大,需要结合基本面因素进行综合考虑。
如何优化?
该选股策略可以将技术指标与基本面考虑相结合,加入一些基本面分析指标如市盈率、市净率、分红率等因素,进行多因素的分析筛选。同时,优化选股时间,结合市场风格和趋势进行选择。
最终的选股逻辑
选股条件为:振幅大于1、换手率大于2%小于9%、20日均线大于120日均线的股票。该选股策略主要考虑了股票波动性、市场交易情况以及股票的技术指标,找出一些稳定性较好的投资标的。
同花顺指标公式代码参考
选股条件为:振幅大于1、换手率大于2%小于9%、20日均线大于120日均线。
C1: ABS((HIGH/LOW-1)*100)>=1;//振幅大于1
C2: TURNOVER>2 AND TURNOVER<=9;//换手率大于2%小于9%
C3: MA(CLOSE,20)>MA(CLOSE,120);//20日均线大于120日均线
SYMBOL: C1 AND C2 AND C3;
python代码参考
import pandas as pd
import tushare as ts
import datetime
def select_stocks(length):
ts.set_token('your token')
pro = ts.pro_api()
# 获取股票数据
stock_data = pro.query('stock_basic', exchange='', list_status='L', fields='ts_code,symbol,name,area,industry,list_date,market,market_cap')
df_list = []
# 筛选符合条件的股票
for index, row in stock_data.iterrows():
code = row['ts_code']
info = {}
info['code'] = code
info['name'] = row['name']
# 获取企业市场
market = row['market']
if market != '深A':
continue
# 获取技术数据
tech_data = pro.daily_basic(ts_code=code, trade_date=datetime.date.today().strftime('%Y%m%d'), fields='ts_code,turnover_rate')
if tech_data.empty or tech_data.iloc[-1]['turnover_rate'] <= 0.02 or tech_data.iloc[-1]['turnover_rate'] > 0.09:
continue
# 获取股票均线数据
ma_data = pro.daily(ts_code=code, start_date=datetime.date.today()-datetime.timedelta(days=120), end_date=datetime.date.today()+datetime.timedelta(days=1),
fields='ts_code,trade_date,close')
if ma_data.empty:
continue
# 计算均线
ma_data['ma_20'] = ma_data['close'].rolling(window=20).mean()
ma_data['ma_120'] = ma_data['close'].rolling(window=120).mean()
if ma_data.iloc[-1]['ma_20'] <= ma_data.iloc[-1]['ma_120']:
continue
# 获取股票价格
price_data = pro.daily(ts_code=code, start_date=datetime.date.today()-datetime.timedelta(days=5), end_date=datetime.date.today(), fields='ts_code,close')
if price_data.empty or price_data.iloc[-1]['close'] > 12:
continue
# 添加股票
df_list.append(info)
# 根据个股热度排序
selected_stocks = pd.DataFrame(df_list)
selected_stocks = selected_stocks.head(length)
return selected_stocks
致辞
本次问答为选股逻辑:振幅大于1、换手率大于2%小于9%、20日均线大于120日均线的股票的问答。该选股策略主要考虑了股票波动性、市场交易情况以及股票的技术指标,找出一些稳定性较好的投资标的。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
