前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >简单量化短期的商品情绪

简单量化短期的商品情绪

作者头像
钱塘小甲子
发布2023-05-07 20:22:20
1690
发布2023-05-07 20:22:20
举报

有时候,市场的情绪会演绎到比较夸张的位置,其实很简单的指标就可以量化,比如过去20个交易日的累计涨跌幅,同时计算过去滚动涨跌幅的分位数就大致可以判断市场情绪。

代码语言:javascript
复制
import datetime

from WindPy import w
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
# 启动Wind开放接口
w.start()

def s_plot(code, start_date):
    # 获取沪深300指数上市以来的行情数据
    wind_df = w.wsd(code, "close", start_date, datetime.date.today().strftime("%Y-%m-%d"))
    tpd_df = pd.DataFrame(wind_df.Data[0], columns=['close'])
    tpd_df.index = wind_df.Times
    tpd_df['shift_close'] = tpd_df['close'].shift(1)
    tpd_df['daily_return'] = tpd_df['close'] / tpd_df['shift_close'] - 1
    rolling_20day_return = tpd_df['daily_return'].rolling(20).apply(lambda x:(x+1).prod())
    analysis_df = pd.DataFrame(rolling_20day_return)
    analysis_df['0.025_bot'] = analysis_df['daily_return'].quantile(0.0255)
    analysis_df['0.05_bot'] = analysis_df['daily_return'].quantile(0.05)
    analysis_df['0.95_bot'] = analysis_df['daily_return'].quantile(0.95)
    analysis_df['0.975_bot'] = analysis_df['daily_return'].quantile(0.975)
    analysis_df['close'] = tpd_df['close']
    # plt.figure()
    # analysis_df['daily_return'].hist(bins=200, figsize=(19, 9))
    # plt.show()
    print('current code is : %s' % code)
    plt.figure()
    analysis_df[['daily_return', '0.025_bot', '0.05_bot', '0.95_bot', '0.975_bot']].plot(figsize=(19, 9))
    plt.show()

    plt.figure()
    analysis_df['close'].plot(figsize=(19, 9))
    plt.show()

base_code = ['UR', 'AU', 'IM', 'IC', 'IH', 'AG', 'AP', 'SM', 'JD', 'IF', 'PB', 'SA', 'TS', 'SI', 'CJ', 'TF', 'CY', 'RS', 'T', 'PK', 'CF', 'SF', 'C',
            'CS', 'CU', 'LH', 'SS', 'L', 'SN', 'PP', 'AL', 'MA', 'PG', 'NI', 'V', 'RU', 'SP', 'SR', 'A','M','B','ZN', 'Y', 'RB','EB','HC','PF',
            'FG', 'TA','BU','EG', 'OI','P','RM','JM', 'I', 'J', 'LU', 'SC','FU']

start_date = '2015-01-01'
for code in base_code:
    s_plot('%sFI.WI'% code, start_date)

例如下面的黄金为例,在4月中旬,由于市场对联储加息的预期几乎就一致认为5月是最后一次加息,随后就会开始降息;同时美国的银行风险事件也让市场买入黄金进行避险。我们可以看到,黄金的近20个交易日涨幅来到了0.95以上的分位数,很显然,这个时候如果追高就要考虑是不是短期会有回调的压力 了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-05-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档