问财量化选股策略逻辑
- 至少5根均线重合的股票
- 60开头的股票
- 15分钟周期MACD绿柱变短
选股逻辑分析
这个策略的逻辑是基于技术分析和趋势跟踪。首先,选择至少5根均线重合的股票,这表明这些股票的短期和中期趋势可能相同。然后,选择60开头的股票,因为这些股票通常代表长期趋势。最后,选择15分钟周期MACD绿柱变短的股票,这表明市场正在转向多头。
有何风险?
这个策略的潜在风险是过于依赖技术分析和趋势跟踪,可能会忽略其他重要的基本面因素。此外,由于该策略只考虑短期和中期趋势,因此可能无法捕捉到长期趋势的变化。
如何优化?
为了优化这个策略,可以考虑添加其他基本面因素,例如公司的财务状况和盈利能力。此外,可以考虑使用更长的时间周期来分析趋势,例如日线或周线,以更好地捕捉长期趋势的变化。
最终的选股逻辑
def select_stock():
# 选择至少5根均线重合的股票
stock = get_stock_with_at_least_5_crossed_moving_average()
# 选择60开头的股票
stock = stock[stock.index.get_level_values(0).str.startswith('60')]
# 选择15分钟周期MACD绿柱变短的股票
stock = stock[stock['MACD'].apply(lambda x: x['MACD_line'] < x['signal_line'])]
return stock
python代码参考
import talib
def get_stock_with_at_least_5_crossed_moving_average():
# 获取所有股票的收盘价
prices = get_prices()
# 计算每只股票的5日、10日、20日、60日和120日均线
moving_averages = talib.MA(prices, timeperiods=[5, 10, 20, 60, 120])
# 选择至少5根均线重合的股票
stock = prices.index[prices[moving_averages[0]] >= moving_averages[1] and prices[moving_averages[1]] >= moving_averages[2] and prices[moving_averages[2]] >= moving_averages[3] and prices[moving_averages[3]] >= moving_averages[4]]
return stock
def get_prices():
# 获取股票的历史收盘价
return get_data('AAPL').history(period='1y')
def get_data(symbol):
# 获取股票的历史数据
return yfinance.get_data(symbol)
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


