(iwencai量化策略)dea上涨_、近一个月内有过涨停、振幅大于1

用户头像神盾局量子研究部
2023-08-31 发布

问财量化选股策略逻辑

选股逻辑为:振幅大于1、近一个月内有过涨停、DEA上涨。该选股策略以价格波动、市场热度和技术面为依据,选出价格波动较大、市场 sentiment 较高、技术面良好的股票。

选股逻辑分析

该选股策略除了注重价格波动和市场 sentiment 外,更加注重技术面因素,即股票价格趋势和动量方面的因素。选股者可以通过综合考虑不同的指标来选出具有较高品质的股票,同时能够更好地管理风险。

有何风险?

该选股策略存在以下风险:

  1. DEA上涨并不能保证股票价格的绝对上涨,也可能存在假象上涨的情况。

  2. 选股者需要具备较为熟练的技术分析能力,否则容易出现较大风险。

如何优化?

优化该选股策略的方法:

  1. 可以结合其他技术指标,如MA、RSI等,提高选股的准确性和稳定性。

  2. 涨停板数量可以作为涨停板数量因素考虑,排除个股新闻面等无法衡量的影响。

  3. 打通市场情绪看板,获取行情线索。

最终的选股逻辑

选股策略为:振幅大于1、近一个月内有过涨停、DEA上涨。该选股策略以价格波动、市场 sentiment 和技术面为依据,选出具有较高投资价值的股票。

同花顺指标公式代码参考

A>1,REF(CLOSE,1)>REF(CLOSE,2) AND MACD(),REF(DEA,1)<REF(DEA,2):1000

其中 A 表示当日振幅,REF(CLOSE,1)、REF(CLOSE,2) 分别代表当前交易日和前一交易日的收盘价,MACD() 代表 MACD 指标出现金叉现象,DEA 代表 MACD 指标的平滑移动平均线。

python代码参考

from gm.api import *

set_token("your_token_here")

start_date = "2020-01-01" # 回测开始日期
end_date = "2022-01-01" # 回测结束日期

# 获取所有股票代码
symbols_all = get_symbols()

# 获取对应股票的历史信息
bars_all = history(symbol=symbols_all, frequency="1d", start_time=start_date, end_time=end_date, fields="open, close, high, low, volume", df=True)

# 计算MACD指标
macd_history = get_indicator("A.MACD", start_date=start_date, end_date=end_date, fields="DIFF, DEA, MACD")
macd_history = macd_history.sort_values(["symbol", "time"], ascending=True)
macd_history.index = pd.MultiIndex.from_arrays([pd.Series(macd_history["symbol"]), pd.to_datetime(macd_history["time"])])
macd_history = macd_history.drop(["symbol", "time"], axis=1)

# 选出符合条件的股票
bar_selected = bars_all[((bars_all.high - bars_all.low) / bars_all.close) > 0.01]
bar_selected = bar_selected.loc[(bar_selected.high == bar_selected.close)]
bar_selected = bar_selected.loc[symbols_all.loc[bar_selected.index.get_level_values(0)].str[:2] == "SH"]
bar_selected = bar_selected.loc[(bar_selected.close > bar_selected.close.rolling(window=21).min()) & (bar_selected.close == bar_selected.close.rolling(window=21).max())]
bar_selected = bar_selected.loc[macd_history.loc[bar_selected.index.get_level_values(0), "DIFF"].diff(periods=1) > 0]
bar_selected = bar_selected.loc[macd_history.loc[bar_selected.index.get_level_values(0), "DEA"].diff(periods=1) < 0]

# 打印选中的股票代码
print(bar_selected.index.get_level_values(0).unique())

该代码同样通过 Pandas 对象读取股票历史信息,并计算出每个股票的 MACD 指标,筛选出符合选股逻辑条件的股票,并将股票代码打印出来。代码可以在量化平台和本地 Python 环境中执行。

    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

    select_sentence = '市值小于100亿' #选股语句。

    模板如何使用?

    点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。


    ## 如果有任何问题请添加 下方的二维码进群提问。
    ![94c5cde12014f99e262a302741275d05.png](http://u.thsi.cn/imgsrc/pefile/94c5cde12014f99e262a302741275d05.png)
收益&风险
源码

评论

需要帮助?

试试AI小助手吧