问财量化选股策略逻辑
选股逻辑为:振幅大于1、换手率大于2%小于9%、近25个交易日有单日涨幅大于等于百分之10。该选股策略主要从波动性、市场交易情况、技术面等多个角度进行综合考虑。
选股逻辑分析
该选股策略在振幅和换手率两个方面考虑了市场表现,同时加入了单日较大的涨幅作为筛选条件,这可以看作是对过去的涨势进行参考,认为该股具有较好的上涨趋势。因此,该选股策略考虑了市场交易情况和技术面因素,可以提高投资成功率。
有何风险?
该选股策略较大程度上忽略了公司的基本面因素,只看重市场交易情况和技术面。同时,该策略筛选出的股票可能存在大涨后的回调风险,投资者应该注意风险控制。
如何优化?
应适当引入一些公司的基本面因素,如营收,出售毛利率,净利润等等,并建立一个综合的权重模型,这样可以更全面地考虑股票的潜力和风险,并更准确地选出潜力股。此外,也可以引入其他技术指标如KD,RSI等进一步优化选股策略。
最终的选股逻辑
选股条件为:振幅大于1、换手率大于2%小于9%、近25个交易日有单日涨幅大于等于百分之10。该选股策略主要从波动性、市场交易情况、技术面等多个角度进行综合考虑。
同花顺指标公式代码参考
选股条件为:振幅大于1、换手率大于2%小于9%、近25个交易日有单日涨幅大于等于百分之10。
C1: ABS((HIGH/LOW-1)*100)>=1;//振幅大于1
C2: TURNOVER_RATE>2 AND TURNOVER_RATE<=9;//换手率大于2%小于9%
C3: SUM(IF(CLOSE/REF(CLOSE,1)-1>=0.1,1,0),25)>=1;//近25个交易日有单日涨幅大于等于百分之10
SYMBOL: C1 AND C2 AND C3;
python代码参考
import pandas as pd
import tushare as ts
def select_stocks(length):
ts.set_token('your_token')
pro = ts.pro_api()
# 获取所有股票数据
data = pro.stock_basic(exchange='', list_status='L', fields='ts_code,name')
# 筛选符合条件的股票
df_list = []
for i in range(len(data)):
code = data.iloc[i]['ts_code']
# 判断是否符合要求
k_data = pro.daily(ts_code=code, start_date='20210101', end_date='20211231')
if k_data.empty:
continue
if abs((k_data.iloc[-1]['high'] / k_data.iloc[-1]['low'] - 1) * 100) < 1: # 振幅小于1
continue
turnover_rate = k_data.iloc[-1]['vol'] / (k_data.iloc[-2]['vol'] + k_data.iloc[-3]['vol'] + k_data.iloc[-4]['vol']) * 100 # 换手率
if turnover_rate < 2 or turnover_rate > 9: # 换手率不在2%~9%之间
continue
# 判断是否有单日涨幅大于等于10%
if sum(k_data['pct_chg'] >= 10) < 1: # 近25个交易日内没有单日涨幅大于等于10%
continue
info = {}
info['ts_code'] = code
info['name'] = data.iloc[i]['name']
df_list.append(info)
# 随机选择一定数量的股票
selected_stocks = pd.DataFrame(df_list)
selected_stocks = selected_stocks.sample(n=length)
return selected_stocks
致辞
本次问答为选股逻辑:振幅大于1、换手率大于2%小于9%、近25个交易日有单日涨幅大于等于百分之10的问答。该选股策略从波动性、市场交易情况、技术面等多个角度进行综合考虑。所给出的通达信指标公式参考和python代码参考仅供参考,读者可以根据实际情况进行优化和修改。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
