问财量化选股策略逻辑
该策略基于以下三个条件进行股票筛选:
- 至少5根均线重合的股票:表示该股票的短期和中期趋势较为稳定,可能具备较好的上涨潜力。
- 10天内涨停天数大于2:表示该股票近期受到市场关注,可能存在较大的资金流入。
- 15分钟周期MACD绿柱变短:表示该股票短期内可能面临反弹,具备一定的买入机会。
选股逻辑分析
该策略通过综合考虑股票的均线、短期趋势和MACD指标,来筛选具有上涨潜力的股票。在均线方面,至少5根均线重合的股票表示该股票的短期和中期趋势较为稳定,可能具备较好的上涨潜力。在短期趋势方面,10天内涨停天数大于2表示该股票近期受到市场关注,可能存在较大的资金流入。在MACD指标方面,15分钟周期MACD绿柱变短表示该股票短期内可能面临反弹,具备一定的买入机会。
有何风险?
该策略的风险主要来自于市场风险和股票选择的准确性。市场风险是指由于市场整体走势不稳定,导致策略无法获得预期收益。股票选择的准确性则指策略所选择的股票是否符合预期,如果所选股票不符合预期,策略的收益率可能会受到影响。
如何优化?
为了优化该策略,可以考虑以下几点:
- 增加筛选条件:除了均线、短期趋势和MACD指标外,还可以考虑其他因素,如股票的市值、行业、盈利能力等,以提高策略的准确性。
- 调整筛选条件:可以调整均线、短期趋势和MACD指标的条件,例如增加或减少均线数量、调整MACD指标的参数等,以适应不同的市场环境。
- 使用量化交易系统:可以使用量化交易系统来自动执行策略,以提高交易效率和降低人工操作的风险。
最终的选股逻辑
综合考虑股票的均线、短期趋势和MACD指标,以及市值、行业、盈利能力等因素,筛选出至少5根均线重合的股票,10天内涨停天数大于2,15分钟周期MACD绿柱变短的股票。如果满足以上条件的股票数量不足,则选择满足其中两个条件的股票。如果满足以上条件的股票数量仍然不足,则选择满足其中一个条件的股票。
python代码参考
以下是基于问财的量化策略代码示例:
import talib
import pandas as pd
def get_stock_data(symbol):
# 获取股票的历史数据
df = pd.read_csv('stock_data.csv')
df = df[df['symbol'] == symbol]
df = df[['open', 'high', 'low', 'close', 'volume']]
return df
def get_moving_average(df, n):
# 计算股票的n日移动平均线
ma = talib.MA(df['close'], n)
df['ma{}'.format(n)] = ma
return df
def get_macd(df):
# 计算股票的MACD指标
ema12 = talib.EMA(df['close'], 12)
ema26 = talib.EMA(df['close'], 26)
macd, macd_signal, macd_hist = talib.STOCH(df['close'], df['ma12'], df['ma26'])
df['macd'] = macd
df['macd_signal'] = macd_signal
df['macd_hist'] = macd_hist
return df
def get筛选条件(df):
# 筛选条件
df = df[df['ma10'] > df['ma20']]
df = df[df['ma12'] > df['ma26']]
df = df[df['macd_signal'] > df['macd_hist']]
df = df[df['close'] > df['ma12']]
df = df[df['close'] > df['ma26']]
df = df[df['close'] > df['macd']]
return df
def get_top_stocks(df):
# 获取10天内涨停次数最多的前10只股票
top_stocks = df.sort_values(by='stochastic', ascending=False).head(10)
return top_stocks
def main():
# 获取股票数据
df = get_stock_data('600036')
# 计算移动平均线
df = get_moving_average(df, 10)
# 计算MACD指标
df = get_macd(df)
# 筛选符合条件的股票
df = get筛选条件(df)
# 获取10天内涨停次数最多的前10只股票
top
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
