zoukankan      html  css  js  c++  java
  • 2009年至2016年全市场的动量以及动量翻转分析

    最近想知道在全市场中跌了1-10天的情况下,未来1-10天涨跌情况,进而分析动量以及动量翻转的效果

    以下是分析的代码

    import csv
    import pandas as pd
    import numpy as np
    import math
    
    def decrease_day(dayBefore,dayAfter):
        df = pd.read_csv('E:/slowsnowball/2015.csv')
        df = df.set_index('secID')
        stockList = df.index
        Yield = []
        for stk in stockList:
            for d in range(len(df.columns)-dayBefore):
                flag = True
                for tempD in range(dayBefore):
                    if(float(df[df.columns[d+tempD+1]][stk])>=float(df[df.columns[d+tempD]][stk])):
                        flag = False
                        break
                if(flag==True):
                    try:
                        temp = 1
                        for i in range(dayAfter):
                            beforePrice = float(df[df.columns[d+dayBefore+i]][stk])
                            afterPrice = float(df[df.columns[d+dayBefore+i+1]][stk])
                            YieldTemp = 1.0000+(afterPrice-beforePrice)/beforePrice
                            temp*=YieldTemp
                        YieldTemp = math.pow(temp,float(1/dayAfter))-1
                        Yield.append(YieldTemp)
                    except:
                        pass
        Yield = [x for x in Yield if str(x) != 'nan']
        return (np.mean(Yield))
    def main():
        dayBefore = 10
        dayAfter = 10
        for db in range(dayBefore):
        #for db in range(8, dayBefore):
            for da in range(dayAfter):
                Yield_mean = decrease_day(db+1,da+1)
                print("Before: "+str(db+1)+' '+"After: "+str(da+1)+' '+'Yield_mean: '+str(Yield_mean))
    main()

    结果表明:

    在市场活跃时期,反转现象表现的尤其明显(2014~2016年),而且前期偏离力度越大则反转力度越大。2014~2016三年的样本表明,连续下跌十天以后下一个交易日平均都能取得5%以上的正收益。2009~2013五年,反转的周期较短,力度也较小,说明这些年份交易不够活跃。

    但是现在处理的时候是将全市场收益率进行平均了,前两天对这个方法查了相关的论文,每一支股都有自己的周期变化,那么是否全市场取平均是不是欠妥,是否应只取一只股票,或是聚类后同类型的股票取平均,其次不仅是跌了多少天,还有跌幅、下跌速度的变化等一些因素,还值得进一步思考

  • 相关阅读:
    【Boost】boost库asio详解5——resolver与endpoint使用说明
    VS路径定义
    C++ Primer 第二章 学习笔记
    C++ Primer 第三章 学习笔记
    C++ dll的隐式与显式调用
    BOOST编译方法
    Real World CTF一日游
    蝉知CMS5.6反射型XSS审计复现
    关于MJ刷新的报Too many arguments to function call, expected 0, have *问题
    XIB做适配(二)
  • 原文地址:https://www.cnblogs.com/yunerlalala/p/6697694.html
Copyright © 2011-2022 走看看