问财量化选股策略逻辑
选股逻辑为:振幅大于1,大单净量排行,选取酷特智能早晨之星。该选股策略主要是结合了股价的趋势和波动性,同时考虑了大单净量因素和K线形态,筛选出近期有一定上涨动能,且具有潜在反弹买点的个股。
选股逻辑分析
该选股策略主要是关注涨势迅猛、成交量大、且近期走势活跃的个股,同时考虑K线形态的技术指标选股策略。通过综合考虑振幅、大单净量、酷特智能早晨之星这三个条件来分析和确定选股。选择振幅大于1、大单净量排行和酷特智能早晨之星这三个条件,可以找到具有短期上涨趋势,且具有较低买入价位的个股。
有何风险?
该选股策略较为注重短期内的涨势情况,依赖于K线形态的酷特智能早晨之星的准确判断,同时未考虑股票的基本面及长期的发展趋势,存在一定的风险。可能会选择出一些热门概念股或市场炒作的个股,但这些个股的价值可能并不够明确,并且短期内的波动性也可能会较大。
如何优化?
可以通过加入其他指标如财务数据、行业状况等来进行定量评估,筛选出更具有投资价值的股票。同时,也可以根据市场整体趋势和其他宏观经济因素,适度调整选股逻辑的参数和规则。
最终的选股逻辑
选股条件为:振幅大于1,大单净量排行,选取酷特智能早晨之星,并结合股票的基本面综合评估其价值。
同花顺指标公式代码参考
SET N=5;
SET L=20;
SET D=10;
SET LAST_CLOSE=REF(CLOSE,1);
SET SCORE1=CLOSE<=LOW AND LAST_CLOSE>CLOSE;
SET SCORE2=LOW<=MIN(LOW,REF(LOW,1)) AND LAST_CLOSE<=REF(CLOSE,2);
SET SCORE3=LOW<=MIN(LOW,REF(LOW,1)) AND LAST_CLOSE>REF(CLOSE,2);
SET H1=EMA(HIGH,N);
SET L1=EMA(LOW,N);
SET P=EMA((CLOSE+HIGH+LOW)/3,N);
SET H2=EMA(H1,N);
SET L2=EMA(L1,N);
SET CP=EMA(P,N);
SET HH=REF(HIGH,1);
SET LL=REF(LOW,1);
SET CONDITION1=H2<HH AND L2<LL;
SET CONDITION2=HH>H1 AND LL>L1 AND CP<H2;
SET CONDITION3=LL<L1;
SET CONDITION4=CP>HH;
SET SELECTED=SCORE1 OR SCORE2 OR SCORE3 OR (CONDITION1 AND (CONDITION2 OR CONDITION3) AND CONDITION4);
Python代码参考
import pandas as pd
import tushare as ts
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')
current_date = '20220308'
# 筛选符合条件的股票
selected_stocks = []
for index, row in stock_data.iterrows():
code = row['ts_code']
info = {}
info['code'] = code
info['name'] = row['name']
# 获取技术指标
tech_data = pro.query('daily_basic', ts_code=code, trade_date=current_date, fields='turnover_rate, amount')
if len(tech_data) > 0 and tech_data.iloc[0]['amount'] > 10 ** 9:
# 获取K线形态指标
k_data = pro.query('k_data', ts_code=code, start_date='20220201', end_date=current_date, fields='trade_date,open,high,low,close')
# 计算K线形态指标
k_data['last_close'] = k_data['close'].shift(1)
score1 = k_data['close'] <= k_data['low'] & (k_data['last_close'] > k_data['close'])
score2 = k_data['low'] <= k_data['low'].rolling(2).min() & (k_data['last_close'] <= k_data['close'].shift(2))
score3 = k_data['low'] <= k_data['low'].rolling(2).min() & (k_data['last_close'] > k_data['close'].shift(2))
k_data['h1'] = k_data['high'].ewm(span=5).mean()
k_data['l1'] = k_data['low'].ewm(span=5).mean()
k_data['p'] = (k_data['close'] + k_data['high'] + k_data['low']) / 3
k_data['h2'] = k_data['h1'].ewm(span=5).mean()
k_data['l2'] = k_data['l1'].ewm(span=5).mean()
k_data['cp'] = k_data['p'].ewm(span=5).mean()
hh = k_data['high'].shift(1)
ll = k_data['low'].shift(1)
condition1 = (k_data['h2'] < hh) & (k_data['l2'] < ll)
condition2 = (hh > k_data['h1']) & (ll > k_data['l1']) & (k_data['cp'] < k_data['h2'])
condition3 = ll < k_data['l1']
condition4 = k_data['cp'] > hh
selected_k = score1 | score2 | score3 | (condition1 & (condition2 | condition3) & condition4)
# 获取股价数据
price_data = pro.daily(ts_code=code, start_date='20200101', end_date=current_date, fields='high,low,close')
# 判断是否符合条件
# 1. 满足振幅大于1条件
cond1 = (price_data.iloc[-1]['high'] - price_data.iloc[-1]['low']) / price_data.iloc[-2]['close'] > 0.01
# 2. 满足大单净量排行
cond2 = tech_data.iloc[0]['turnover_rate'] > 3
# 3. 满足酷特智能早晨之星
cond3 = selected_k.iloc[-3:].all()
if cond1 and cond2 and cond3:
selected_stocks.append(info)
if len(selected_stocks) >= length:
break
return selected_stocks
致辞
本次问答为问财量化选股策略逻辑的第五篇,主要是分析酷特智能早晨之星的选股策略,通过综合考虑多个技术指标来选股,希望投资者能通过本文了解更多量化选股方法。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
