问财量化选股策略逻辑
选股逻辑为:振幅大于1、换手率大于2%小于9%、反包。该选股策略主要从波动性、市场交易情况以及技术面等多个角度进行综合考虑。
选股逻辑分析
该选股策略包含了三个条件,分别为振幅大于1、换手率大于2%小于9%以及反包,旨在筛选出具有一定波动性的交易活跃的股票并通过反包来识别市场的趋势变化。
有何风险?
该选股策略可能会忽略一些市场表现较好的股票,过度追求波动性和短期交易活跃度,容易操纵市场预期和短期行情。同时,反包指标的可靠性需要根据实际情况进行验证,并且在行情波动较大时可能会带来较大的风险。
如何优化?
可以增加更多的技术指标和基本面指标,如RSI、MACD、市盈率、市净率、股息率等等,对选股策略进行综合考虑和优化,同时对选用的各个因素进行权重调整,尽可能地平衡各个因素对选股的影响,减少操纵市场的风险。
最终的选股逻辑
选股条件为:振幅大于1、换手率大于2%小于9%且反包。该选股策略主要从波动性、市场交易情况以及技术面等多个角度进行综合考虑。
同花顺指标公式代码参考
选股条件为:振幅大于1、换手率大于2%小于9%且反包。
C1: ABS((HIGH/LOW-1)*100)>=1;//振幅大于1
C2: TURNOVER_RATE>2 AND TURNOVER_RATE<=9;//换手率大于2%小于9%
C3: REF(CLOSE,1)>OPEN AND CLOSE<OPEN;//反包
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
if k_data.iloc[-1]['close'] > k_data.iloc[-2]['open'] and k_data.iloc[-1]['close'] < k_data.iloc[-1]['open']: # 不符合反包条件
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%、反包的问答。该选股策略主要从波动性、市场交易情况以及技术面等多个角度进行综合考虑,建议结合其他技术指标和基本面指标进行综合筛选以提高选股的准确性。所给出的通达信指标公式参考和python代码参考仅供参考,读者可以根据实际情况进行优化和修改。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
