问财量化选股策略逻辑
- 至少5根均线重合的股票
- 2021年
- 15分钟周期MACD绿柱变短
选股逻辑分析
这个策略的逻辑是基于技术分析,通过观察股票的均线和MACD指标来筛选股票。首先,策略要求股票至少有5根均线重合,这可能意味着股票的价格趋势比较稳定,同时也能够提供一定的支撑和阻力。其次,策略要求股票在2021年,这可能意味着股票在过去一年中表现良好,未来也可能有较好的表现。最后,策略要求股票在15分钟周期MACD绿柱变短,这可能意味着股票的短期趋势正在转为上升趋势。
有何风险?
这个策略的局限性在于它只考虑了股票的短期趋势,并没有考虑公司的基本面情况。此外,如果股票的价格波动较大,那么均线的重合情况可能会比较难以判断。另外,MACD指标也存在一定的局限性,例如在市场极度动荡的情况下,MACD指标可能会失效。
如何优化?
为了优化这个策略,可以考虑加入一些基本面因素,例如公司的盈利能力、财务状况等。此外,可以考虑使用更短的时间周期来观察MACD指标,例如分钟周期、小时周期等。最后,可以考虑加入一些其他的指标,例如布林线、RSI等,来更好地判断股票的趋势。
最终的选股逻辑
以下是最终的选股逻辑:
- 股票至少有5根均线重合
- 股票在2021年
- 股票在15分钟周期MACD绿柱变短
- 股票的盈利能力、财务状况良好
- 使用更短的时间周期来观察MACD指标
- 加入布林线、RSI等指标来判断股票的趋势
python代码参考
以下是基于pandas和ta-Lib库的python代码参考:
import pandas as pd
import talib
def get_stock_data(symbol):
# 获取股票的历史数据
df = pd.read_csv('stock_data.csv')
df = df[df['symbol'] == symbol]
df = df[['date', 'open', 'high', 'low', 'close']]
df = df.set_index('date')
return df
def get均线(df):
# 计算股票的均线
ma = talib.MA(df['close'], timeperiod=5)
return ma
def get_macd(df):
# 计算股票的MACD指标
ema12 = talib.EMA(df['close'], timeperiod=12)
ema26 = talib.EMA(df['close'], timeperiod=26)
macd, macd_signal, macd_hist = talib.MACD(df['close'], fastperiod=12, slowperiod=26, signalperiod=9)
return macd, macd_signal, macd_hist
def get_macd_diff(df):
# 计算股票的MACD柱状图
macd_diff = macd[1] - macd[0]
return macd_diff
def get_macd_signal(df):
# 计算股票的MACD信号线
macd_signal = macd_signal[1]
return macd_signal
def get_stock筛选结果(df, ma, macd, macd_diff, macd_signal):
# 根据均线和MACD指标筛选股票
result = []
for index, row in df.iterrows():
if ma[index] > macd_diff[index] and macd_diff[index] > macd_signal[index]:
result.append(row['symbol'])
return result
# 示例代码
symbol = 'AAPL'
df = get_stock_data(symbol)
ma = get均线(df)
macd, macd_signal, macd_hist = get_macd(df)
macd_diff = get_macd_diff(df)
macd_signal = get_macd_signal(df)
result = get_stock筛选结果(df, ma, macd, macd_diff, macd_signal)
print(result)
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。