(量化交易策略)前天macd<0_、振幅大于1、高点为两日最高

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

问财量化选股策略逻辑

高点为两日最高,振幅大于1,前天macd<0

选股逻辑分析

这个策略的逻辑是基于技术分析和趋势判断的。首先,要求股票在两天内出现过最高价,这表明股票有一定的上涨趋势。其次,要求股票的振幅大于1,这表明股票有一定的波动性,有利于投资者进行高抛低吸操作。最后,要求股票的前天MACD值小于0,这表明股票的短期趋势是下跌的,有利于投资者逢高卖出。

有何风险?

这个策略的局限性在于它只考虑了股票的短期趋势,没有考虑公司的基本面情况。因此,如果股票的基本面出现问题,即使短期趋势是上涨的,也可能出现大幅下跌的情况。此外,如果股票的波动性过大,投资者可能会因为追涨杀跌而出现较大的损失。

如何优化?

为了克服这个策略的局限性,可以考虑结合基本面分析,对股票的基本面情况进行评估。例如,可以分析公司的财务报表、盈利能力、市场份额等指标,以判断股票的基本面情况。此外,可以考虑使用技术指标和量化交易策略,以更好地控制风险和提高收益。

最终的选股逻辑

综合考虑股票的短期趋势、波动性和基本面情况,可以使用以下量化交易策略进行选股:

def select_stock():
    # 获取股票数据
    stock_data = get_stock_data()
    
    # 筛选出两天内出现过最高价的股票
    high_price_filter = stock_data['high'] > stock_data['high'].shift(1)
    
    # 筛选出振幅大于1的股票
    volatility_filter = stock_data['std'] > 1
    
    # 筛选出前天MACD值小于0的股票
    macd_filter = stock_data['macd'] < 0
    
    # 筛选出同时满足以上三个条件的股票
    filtered_data = stock_data[(high_price_filter & volatility_filter & macd_filter)]
    
    # 返回符合条件的股票列表
    return filtered_data['code'].tolist()

python代码参考

import talib
import pandas as pd

def get_stock_data():
    # 获取股票数据
    data = pd.read_csv('stock_data.csv')
    return data

def high_price_filter(data):
    # 筛选出两天内出现过最高

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

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

    模板如何使用?

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


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

评论