问财量化选股策略逻辑
高点为两日最高,rsi小于65,振幅大于1
选股逻辑分析
这个策略的逻辑是基于技术分析和量化分析的。首先,它选择在两天内达到最高点的股票,这表明这些股票在短期内有较强的上涨动力。其次,它选择RSI小于65的股票,这表明这些股票的短期趋势较弱,可能有反弹的机会。最后,它选择振幅大于1的股票,这表明这些股票的价格波动较大,可能有更多的交易机会。
有何风险?
这个策略的潜在风险是过于依赖技术指标和量化分析,可能会忽略其他重要的基本面因素。此外,如果市场出现极端情况,如大规模的市场崩盘或流动性危机,这个策略可能会失效。
如何优化?
为了优化这个策略,可以考虑加入更多的基本面因素,如公司的财务状况、盈利能力、市场份额等。此外,可以考虑使用更高级的技术分析工具,如动量指标、趋势线等,以提高策略的准确性。
最终的选股逻辑
最终的选股逻辑如下:
def select_stocks():
# 获取所有A股股票
stocks = get_stocks()
# 选择两天内达到最高点的股票
high_points = [stock['high'] for stock in stocks if stock['high'] > stock['high'].shift(1)]
# 选择RSI小于65的股票
rsi = stocks['rsi'].rolling(window=14).mean()
rsi = rsi.where(rsi < 65, np.nan)
filtered_stocks = stocks.merge(rsi, on='date')
# 选择振幅大于1的股票
price_diff = filtered_stocks['close'].diff()
filtered_stocks = filtered_stocks.merge(price_diff.where(price_diff > 1, np.nan), on='date')
# 选择符合条件的股票
selected_stocks = filtered_stocks.merge(high_points, on='date')
selected_stocks = selected_stocks.merge(filtered_stocks['rsi'], on='date')
selected_stocks = selected_stocks.merge(filtered_stocks['price_diff'], on='date')
return selected_stocks
python代码参考
import pandas as pd
import numpy as np
def get_stocks():
# 获取所有A股股票
stocks
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
