问财量化选股策略逻辑
高点为两日最高,macd零轴以上,10日涨幅大于0小于35
选股逻辑分析
这个策略的逻辑是基于技术分析和趋势跟踪。首先,它选择在两天内达到最高点的股票,这表明这些股票已经经历了短期的上涨。然后,它选择macd零轴以上的股票,这表明市场正在经历上涨趋势。最后,它选择10日涨幅大于0小于35的股票,这表明这些股票的上涨趋势正在持续,但还没有达到过高的水平。
有何风险?
这个策略的潜在风险是它可能会选择一些已经过热的股票,这些股票可能会在短期内经历回调。此外,如果市场出现反转,这个策略可能会选择一些表现不佳的股票。
如何优化?
为了优化这个策略,可以考虑加入更多的过滤条件,例如选择市盈率较低的股票、选择有业绩支撑的股票等等。此外,可以考虑使用更高级的技术分析工具来确定股票的高点和趋势。
最终的选股逻辑
以下是最终的选股逻辑:
def select_stock():
# 获取所有A股股票
stocks = get_stocks()
# 筛选出两天内达到最高点的股票
high_points = [stock['high'] for stock in stocks if stock['high'] > stock['high'].shift(1)]
# 筛选出macd零轴以上的股票
macd = stocks['macd'].rolling(window=10).mean()
macd_zero_cross = macd > 0
stocks = stocks[macd_zero_cross]
# 筛选出10日涨幅大于0小于35的股票
gains = stocks['close'].pct_change()
gains = gains.where(gains > 0, 0)
gains = gains.where(gains < 35, 0)
stocks = stocks[gains]
return stocks
python代码参考
import pandas as pd
def get_stocks():
# 获取所有A股股票
stocks = pd.read_csv('stock_data.csv')
return stocks
def calculate_macd(stocks):
# 计算macd指标
macd = stocks['close'].rolling(window=10).mean() - stocks['close'].rolling(window=20).mean()
return
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


