(supermind量化策略)task17/a/换手率3%-12%、买一量>卖一量、日线m

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

问财量化选股策略逻辑

选股逻辑为:在换手率在3%~12%之间、买一量大于卖一量、日线的MACD柱大于0的股票中选取股票。

选股逻辑分析

该选股策略综合考虑了股票的流动性、市场情绪以及技术面因素。流动性方面选取了换手率在3%~12%之间、买一量大于卖一量的股票;市场情绪方面选取了日线MACD柱大于0的股票;技术面方面则综合了MACD指标的多个参数的综合表现。

有何风险?

该选股策略可能会忽略重要的基本面因素,使得选出来的股票可能存在财务风险,也可能会忽略市场的整体趋势,从而导致选股结果的不准确性。

如何优化?

应该加入基本面因素,如PE、PB等,来筛选出财务状况良好的股票。同时,应该关注市场整体趋势和板块热点,动态调整选股策略,降低选股风险。

最终的选股逻辑

在换手率在3%~12%之间、买一量大于卖一量、日线的MACD柱大于0的股票中选取股票。

同花顺指标公式代码参考

通达信公式:MACD(12,26,9)

python代码参考

import baostock as bs
import pandas as pd

#### 登陆系统 ####
lg = bs.login()

#### 获取满足条件的股票 ####
rs = bs.query_stock_basic()
stock_list = []
while (rs.error_code == '0') & rs.next():
    stock_code = rs.get_row_data()[0]
    # 查询日K线数据
    rs_k = bs.query_history_k_data_plus(stock_code, 'date,close,macd,macdh', start_date='2022-01-01', end_date='2022-06-30', frequency='d', adjustflag='3')
    while (rs_k.error_code == '0') & rs_k.next():
        if float(rs_k.get_row_data()[3]) > 0:
            stock_list.append(stock_code)
            break
# 选出换手率在3%~12%之间,买一量大于卖一量的股票
rs_lt = bs.query_history_k_data_plus(','.join(stock_list), 'date,close,turn,amount_ratio', start_date='2022-06-27', end_date='2022-06-30', frequency='d', adjustflag='3')
selected_stock = []
while (rs_lt.error_code == '0') & rs_lt.next():
    turn = float(rs_lt.get_row_data()[2])
    buy_vol = float(rs_lt.get_row_data()[3])
    sell_vol = float(rs_lt.get_row_data()[3]) / turn
    if (3 <= turn <= 12) and (buy_vol > sell_vol):
        selected_stock.append(rs_lt.get_row_data()[0])
# 转换成DataFrame格式并输出结果
df = pd.DataFrame(selected_stock, columns=['stock_code'])
print(df)

#### 登出系统 ####
bs.logout()
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论