问财量化选股策略逻辑
本选股策略选取以下股票:振幅大于1、昨日主力控盘、500日内至少2次涨停。该选股策略基于股票的技术面因素,以期能在短期内获得一定的收益。
选股逻辑分析
该选股策略首先筛选了振幅大于1、昨日主力控盘的股票。然后在这些股票中筛选出在过去500天内至少涨停2次的股票。这些筛选条件能够过滤掉部分短期内表现不佳的股票,选出较为具有上涨潜力的股票。
有何风险?
该选股策略存在以下风险:1、过度依赖技术指标,忽略了更多的基本面因素;2、500天内至少涨停2次这一条件较为苛刻,可能导致筛选结果数量不足;3、短期内股票市场表现不一定完全符合技术面预期,具有风险。
如何优化?
可以将振幅大于1、昨日主力控盘这两个条件作为必需条件,将500天至少涨停2次作为可选条件之一,同时加入更多的基本面指标和行业趋势等因素,以更全面地了解股票的市场走势和具体情况。在实际操作中,需根据市场行情和股票表现进行灵活调整,同时也要注意控制风险。
最终的选股逻辑
选取振幅大于1、昨日主力控盘,500天内至少涨停2次的股票进行选取。
同花顺指标公式代码参考
无
python代码参考
import tushare as ts
import datetime
def select_stock():
stock_list = ts.get_today_all()
selected_stocks = stock_list[stock_list["volume"] > 0]
selected_stocks = selected_stocks[selected_stocks["amplitude"] >= 0.01]
selected_stocks = selected_stocks[selected_stocks["turnoverratio"] >= 5]
selected_stocks = selected_stocks[selected_stocks["per"] >= 0]
selected_stocks = selected_stocks[selected_stocks["pb"] >= 0]
selected_stocks = selected_stocks[selected_stocks["circulating_market_cap"] > selected_stocks["total_market_cap"] / 2]
selected_stocks = selected_stocks[selected_stocks["holders"] > 0]
selected_stocks = selected_stocks[selected_stocks["is_st"] == "否"]
if len(selected_stocks) == 0:
return None
total_date = 0
total_limit = 0
for i in range(500):
date = datetime.date.today() - datetime.timedelta(days=i+1)
date_str = date.strftime("%Y-%m-%d")
data = ts.get_tick_data(selected_stocks.iloc[0]['code'], date=date_str, src='tt')
if data is None:
continue
if len(data[data["change"] >= 9.8]) > 0:
total_limit += 1
if total_limit >= 2:
break
total_date += 1
if total_date >= 30:
break
if total_limit < 2:
return None
return selected_stocks
print(select_stock())
以上代码仅供参考,具体实现方法可以根据投资者需要和市场情况进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
