问财量化选股策略逻辑
选股逻辑为:振幅大于1、换手率>2%且<9%、上市时间大于一年的股票。该选股策略主要以振幅、换手率等指标衡量股票波动性,并筛选出上市时间较长的股票。
选股逻辑分析
该选股策略主要考虑振幅、换手率、上市时间三个因素,其中振幅和换手率能够较好反映出股票的波动性,而上市时间则可以反映出公司的历史及市场经验。
有何风险?
该选股策略存在以下不足与风险:首先,该策略仅参考了振幅和换手率等技术指标,忽略了公司基本面等因素对股票价格的影响;其次,该策略并没有考虑不同股票所处的行业及市场环境等因素的影响;最后,市场风险和黑天鹅事件等因素也可能导致选股策略的不准确性。
如何优化?
该选股策略可以加入更多的筛选条件,同时需要加强对基本面、行业及市场环境等因素的分析,以更全面、准确地评估股票的价值。建议建立风险控制体系,规避与降低不可控的风险。
最终的选股逻辑
选股条件为:振幅大于1、换手率>2%且<9%、上市时间大于一年。该选股策略需要综合考虑众多因素进行全面、准确的评估和操作。
同花顺指标公式代码参考
选股条件为:振幅大于1、换手率>2%且<9%、上市时间大于一年。
C1: ABS((HIGH/LOW-1)*100)>=1;//振幅大于1
C2: TURNOVER>2 AND TURNOVER<9;//换手率大于2%小于9%
C3: LISTDAY>365;//上市时间大于一年
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.stock_basic(list_status='L', exchange='SSE', fields='ts_code,symbol,name,industry,list_date')
current_date = (datetime.datetime.now() - datetime.timedelta(days=365)).strftime("%Y%m%d")
df_list = []
# 筛选符合条件的股票
for index, row in stock_data.iterrows():
code = row['ts_code']
info = {}
info['code'] = code
info['name'] = row['name']
# 获取技术数据
tech_data = pro.weekly(ts_code=code, end_date=datetime.datetime.now().strftime("%Y%m%d"), fields='open,high,low,vol,trade_date,ma5,ma10')
if tech_data.empty:
continue
if tech_data.iloc[-1]['high'] - tech_data.iloc[-1]['low'] <= 0 or tech_data.iloc[-1]['vol'] / pro.stock_basic(ts_code=code).iloc[0]['total_share'] <= 0.02 or tech_data.iloc[-1]['vol'] / pro.stock_basic(ts_code=code).iloc[0]['total_share'] >= 0.09 or pd.to_datetime(row['list_date']) >= pd.to_datetime(current_date):
continue
# 添加股票
df_list.append(info)
selected_stocks = pd.DataFrame(df_list).head(length)
return selected_stocks
致辞
本次问答为选股逻辑:振幅大于1,换手率>2%且<9%,上市时间大于一年的问答。该策略仅参考了振幅和换手率等技术指标,并没有充分考虑公司基本面等因素对股票价格的影响,在实际选股过程中需要根据市场实际情况进行灵活调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
