问财量化选股策略逻辑
高点为两日最高,macd零轴以上,rsi小于65
选股逻辑分析
这个策略的逻辑是基于技术分析和量化指标来筛选股票。首先,它要求股票在最近两天内出现过最高价,这表明股票有一定的上涨动力。其次,它要求股票的macd指标处于零轴以上,这表明股票的短期和长期趋势都是向上的。最后,它要求股票的rsi指标小于65,这表明股票的短期趋势已经超卖,有反弹的需求。
有何风险?
这个策略的逻辑是基于技术分析和量化指标来筛选股票,因此它可能会忽略一些重要的基本面因素,例如公司的财务状况、行业前景等。此外,由于该策略是基于历史数据进行筛选,因此它可能会忽略一些不可预测的事件,例如自然灾害、政治事件等。
如何优化?
为了优化这个策略,可以考虑加入一些基本面因素,例如公司的财务状况、行业前景等。此外,可以考虑加入一些其他的量化指标,例如布林线、移动平均线等,以提高策略的准确性和稳定性。
最终的选股逻辑
高点为两日最高,macd零轴以上,rsi小于65,财务状况良好,行业前景乐观
python代码参考
import talib
import pandas as pd
def get_stock_data(stock_code):
# 获取股票的历史数据
df = pd.read_csv(f'https://query1.finance.yahoo.com/v7/finance/download/{stock_code}', index_col='Date')
df = df[['Adj Close']]
df = df.resample('D').last()
df = df.dropna()
return df
def get_tech_indicator(df, indicator_name):
# 获取技术指标数据
df[indicator_name] = talib.get(indicator_name)(df['Adj Close'])
return df
def get_rsi(df):
# 计算rsi指标
rsi = talib.RSI(df['Adj Close'], timeperiod=14)
df['rsi'] = rsi
return df
def get筛选条件(df):
# 筛选条件
df = df[(df['Adj Close'].rolling(window=2).max() > df['Adj Close'].rolling(window=2).min()) &
(df['macd'].rolling(window
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
