(supermind策略)task16/a/macd零轴以上、今日均线向上发散、大单净量排

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

问财量化选股策略逻辑

选股逻辑为MACD零轴以上、今日均线向上发散、大单净量排行。

选股逻辑分析

该选股逻辑包含以下条件:

  1. MACD零轴以上:表示当前股票处于上涨状态;
  2. 今日均线向上发散:表示当前股票的趋势向上;
  3. 大单净量排行:选择大单净量排名靠前的股票。

有何风险?

  1. 选股条件过于简单,可能存在大量的噪音信号;
  2. 大单净量仅能反映短期资金流向,可能存在明显的周期性;
  3. 过于追求大单净量可能会忽略其他重要的基本面因素。

如何优化?

  1. 综合多个技术指标和基本面因素等共同筛选,提高选股稳定性;
  2. 结合股票的市场表现和行业走势,辅助大单净量判断;
  3. 不仅考虑大单净量,还应考虑资金总体流向和资金博弈的动态变化。

最终的选股逻辑

选股逻辑为:MACD零轴以上、今日均线向上发散、大单净量排名靠前。

同花顺指标公式代码参考

MACD指标:

DIF:EMA(CLOSE,12)-EMA(CLOSE,26)
DEA:EMA(DIF,9)
MACD:(DIF-DEA)*2

均线指标:

MA5:MA(CLOSE,5)
MA10:MA(CLOSE,10)

大单净量指标:

大单净量 = IF(VOL>MA(VOL,60),IF(BAR>=0 AND K>=50, VOL, -VOL), 0) WHERE BAR:=(CLOSE-REF(CLOSE,1))/REF(CLOSE,1)*100, K:(3*BAR+2*REF(BAR,1)+REF(BAR,2)+BAR)/7;

选股筛选公式:

MACD>0 AND MA(CLOSE,1)>MA(CLOSE,2) AND 大单净量>REF(大单净量,1)

排序公式:

SORTBY(大单净量,0)

python代码参考

以下为python的选股筛选代码和排序代码,仅供参考:

import akshare as ak
import talib

# 获取股票列表并计算选股筛选条件
stock_list = ak.stock_zh_a_spot_em().reset_index()
stock_list['upper'], stock_list['mid'], stock_list['lower'] = talib.BBANDS(stock_list['close'], timeperiod=20, nbdevup=2, nbdevdn=2, matype=0)
stock_list['macd'], stock_list['macd_signal'], stock_list['macd_hist'] = talib.MACD(stock_list['close'], fastperiod=12, slowperiod=26, signalperiod=9)
stock_list['ma5'] = talib.SMA(stock_list['close'], timeperiod=5)
stock_list['ma10'] = talib.SMA(stock_list['close'], timeperiod=10)
volume = talib.MA(stock_list['vol'], 60)
bar = (stock_list['close'] - stock_list['close'].shift()) / stock_list['close'].shift() * 100
k = (3 * bar + 2 * bar.shift(1) + bar.shift(2) + bar) / 7
big_volume = stock_list['vol'].apply(lambda x: x if x > volume else 0)
big_money_flow = big_volume.apply(lambda x: x if k>=50 and bar>=0 else -x)
stock_list['big_net_volume'] = big_money_flow
condition1 = (stock_list['macd'] > 0) & (stock_list['ma5'] > stock_list['ma10'])
condition2 = (stock_list['big_net_volume'] > stock_list['big_net_volume'].shift())
stock_list = stock_list[condition1 & condition2]

# 按大单净量从大到小排序
result_sorted = stock_list.sort_values(by=['big_net_volume'], ascending=False)
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论