zoukankan      html  css  js  c++  java
  • 数据分析day02

    案例

    需求:双均线策略制定

    1.使用tushare包获取某股票的历史行情数据
    2.计算该股票历史数据的5日均线和30日均线
          - 什么是均线?
                - 对于每一个交易日,都可以计算出前N天的移动平均值,然后把这些移动平均值连起来,成为一个条线,就叫做N日移动平均线。移动平均线常用线有5天,10天,30天,60天,120天和240天的指标
                - 5天和10天的是短线操作的参照指标,称做日均线指标
                - 30天和60天的是中期均线指标,称做季均线指标
                - 120天和240天的是长期均线指标,称做年均线指标
          - 均线计算方法:MA=(C1+C2+C3+...+Cn)/N C:某日收盘价  N:移动平均周期(天数)
    
    df = ts.get_k_data(code='000001', start='1900-01')
    df.to_csv('pingan.csv')
    df = pd.read_csv('pingan.csv')
    df.head()
    df.drop(labels='Unnamed: 0', axis=1, inplace=True) # inplace参数表示删除时原数据会被删除,1表示列,0表示行
    df['date'] = pd.to_datetime(df['date'])  # 将时间的object类型转换为时间类型
    df.set_index('date',inplace=True)   #设置date为行索引
    ma5 = df['close'].rolling(5).mean()  #rolling可以把每个前5日的数据显示出来 ,mean求均值
    ma30 = df['close'].rolling(30).mean()#rolling可以把每个前30日的数据显示出来 ,mean求均值
    import matplotlib.pyplot as plt
    plt.plot(ma5[50:200])  # 显示图形化数据
    plt.plot(ma30[50:200])
    
    
    3.分析输出所有金叉日期和死叉日期
          - 股票分析技术中的金叉和死叉,可以简单解释为:
                - 分析指标中的两根线,一根为短时间内的指标线,另一根为较长时间的指标线。
                - 如果短时间的指标线方向拐头向上,并且穿过了较长时间的指标线,这种状态叫“金叉”
                - 如果短时间的指标线方向拐头向下,并且穿过了较长时间的指标线,这种状态叫"死叉"
                - 一般情况下,出现金叉后,操作趋向买入;死叉则趋向卖出。当然,金叉和死叉只是分析指标之一,要和其它很多指标配合使用,才能增加操作的准确性。
    s1 = ma5 < ma30
    s2 = ma5 < ma30
    # 取出死叉对应的行数据
    death_date = df.loc[s1 & s2.shift(1)].index
    # 取出金叉对应的行数据
    golden_date = df.loc[~(s1|s2.shift(1))].index  # ~表示取反
    

    -------------------------------------------

    个性签名:代码过万,键盘敲烂!!!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    UVA 125 Numbering Paths
    UVA 515 King
    UVA 558 Wormholes
    UVA 10801 Lift Hopping
    UVA 10896 Sending Email
    SGU 488 Dales and Hills
    HDU 3397 Sequence operation
    数据库管理工具navicat的使用
    javascript封装animate动画
    关于webpack没有全局安装下的启动命令
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/14214378.html
Copyright © 2011-2022 走看看