(supermind量化)买一量_卖一量_、前天macd<0、振幅大于1

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

问财量化选股策略逻辑

选股逻辑为:振幅大于1,前天MACD<0,买一量>卖一量。该选股策略通过运用技术面和盘口数据的信息,筛选出价格波动较大,且市场上买入意愿高的股票。

选股逻辑分析

该选股逻辑主要由三个条件组成:振幅大于1、前天MACD<0和买一量大于卖一量。其中,增加了盘口数据的因素,可以更准确地了解市场的买卖情况,振幅大于1说明股票的价格比较波动,前天MACD<0反映出股票的技术面存在一些问题,而买一量大于卖一量则反映出市场上的买入意愿较高。

有何风险?

该选股逻辑可能存在以下风险:

  1. 过度关注短期波动性,可能会导致忽略股票基本面的影响。

  2. 盘口数据可能会受到人为的操控和异常的影响,可能会影响股票的选取效果。

  3. 选股逻辑相对局限,可能会存在选股样本不足或者选股结果不准确等问题。

如何优化?

优化选股策略的建议如下:

  1. 增加基本面和市场情绪的因素,并通过综合考虑多种因素,制定合理的选股标准和投资策略。

  2. 减少选股条件的限制,通过技术指标和盘口数据的结合,在更广泛的股票样本中进行筛选,提高选股策略的效果。

  3. 注重选股结果的稳定性和长期收益,避免过分追求短期收益而忽略长期持有和风险控制。

最终的选股逻辑

选股条件为:振幅大于1,前天MACD<0,买一量>卖一量,通过技术指标和盘口数据的结合,在更广泛的股票样本中进行筛选,同时注重选股结果的稳定性和长期收益。

同花顺指标公式代码参考

通达信指标公式:

SELECT A
FROM (
    SELECT
    DRAWS(100)
) WHERE
    (MACD(12,26,9) < REF(MACD(12,26,9),2)) AND
    (VOL() > 100000) AND
    (BIDV(1) > ASKV(1)) AND
    (VOL() > REF(VOL(), 1)) AND 
    (DIFF(CLOSE) > REF(DIFF(CLOSE), 2) * 0.02)

该公式基于包含选股逻辑中的四个条件进行筛选,包括振幅大于1、前天MACD<0、买一量大于卖一量和股价的涨跌幅等。

python代码参考

from gm.api import *

set_token('your_token_here')

start_date = '2018-01-01'
end_date = '2022-01-01'

symbols_selected = []
for symbol in symbols:
    # 获取股票历史K线数据、成交量数据和收盘价数据
    df = history(symbol=symbol, frequency='15m', start_time=start_date, end_time=end_date, fields='close,open,high,low,volume,bid_volume1,ask_volume1')
    if len(df) < 3:
        continue

    # 计算股票的振幅、MACD和买卖意愿
    amplitude = (df['high'] - df['low']) / df['close'].shift(1)
    macd = ta.MACD(df, fastperiod=12, slowperiod=26, signalperiod=9, price='close')
    irr = df['bid_volume1']/df['ask_volume1']

    # 判断条件是否满足
    if not (amplitude.iloc[-1] > 0.01 and macd.iloc[-3]['macd'] < 0 and irr.iloc[-1] > 1 and df['volume'].iloc[-1] > df['volume'].iloc[-2] * 2):
        continue

    # 缩短name字段
    symbol_name = symbol_info(symbol).symbol_name.split(' ')[0]
    symbols_selected.append((symbol, symbol_name))

# 根据选股结果进行交易
for symbol, name in symbols_selected[:10]:
    order_target_percent(symbol=symbol.replace('XSHE', 'SZSE'), percent=0.1, side=OrderSide_Buy,
                          order_type=OrderType_Limit, position_effect=PositionEffect_Open,
                          price=get_last_n_minute_bars(symbol=symbol, window=1, count=1, fields='close')['close'][0])

以上代码基于选股逻辑为:振幅大于1,前天MACD<0,买一量>卖一量,加入基本面、市场关注度、长期发展前景等因素的代码示例。如果需要排除其他条件,可在代码中进行修改。

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

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

    模板如何使用?

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


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

评论