示例#1
0
文件: c5.py 项目: 3774257/abu
def sample_531_1():
    """
    5.3.1_1 绘制股票的收益,及收益波动情况 demo list
    :return:
    """
    # 示例序列
    demo_list = np.array([2, 4, 16, 20])
    # 以三天为周期计算波动
    demo_window = 3
    # pd.rolling_std * np.sqrt
    print('pd.rolling_std(demo_list, window=demo_window, center=False) * np.sqrt(demo_window):\n',
          pd_rolling_std(demo_list, window=demo_window, center=False) * np.sqrt(demo_window))

    print('pd.Series([2, 4, 16]).std() * np.sqrt(demo_window):', pd.Series([2, 4, 16]).std() * np.sqrt(demo_window))
    print('pd.Series([4, 16, 20]).std() * np.sqrt(demo_window):', pd.Series([4, 16, 20]).std() * np.sqrt(demo_window))
    print('np.sqrt(pd.Series([2, 4, 16]).var() * demo_window):', np.sqrt(pd.Series([2, 4, 16]).var() * demo_window))
示例#2
0
def sample_531_1():
    """
    5.3.1_1 绘制股票的收益,及收益波动情况 demo list
    :return:
    """
    # 示例序列
    demo_list = np.array([2, 4, 16, 20])
    # 以三天为周期计算波动
    demo_window = 3
    # pd.rolling_std * np.sqrt
    print('pd.rolling_std(demo_list, window=demo_window, center=False) * np.sqrt(demo_window):\n',
          pd_rolling_std(demo_list, window=demo_window, center=False) * np.sqrt(demo_window))

    print('pd.Series([2, 4, 16]).std() * np.sqrt(demo_window):', pd.Series([2, 4, 16]).std() * np.sqrt(demo_window))
    print('pd.Series([4, 16, 20]).std() * np.sqrt(demo_window):', pd.Series([4, 16, 20]).std() * np.sqrt(demo_window))
    print('np.sqrt(pd.Series([2, 4, 16]).var() * demo_window):', np.sqrt(pd.Series([2, 4, 16]).var() * demo_window))
示例#3
0
文件: c5.py 项目: 3774257/abu
def sample_531_2():
    """
    5.3.1_2 绘制股票的收益,及收益波动情况
    :return:
    """
    tsla_df_copy = tsla_df.copy()
    # 投资回报
    tsla_df_copy['return'] = np.log(tsla_df['close'] / tsla_df['close'].shift(1))

    # 移动收益标准差
    tsla_df_copy['mov_std'] = pd_rolling_std(tsla_df_copy['return'],
                                             window=20,
                                             center=False) * np.sqrt(20)
    # 加权移动收益标准差,与移动收益标准差基本相同,只不过根据时间权重计算std
    tsla_df_copy['std_ewm'] = pd_ewm_std(tsla_df_copy['return'], span=20,
                                         min_periods=20,
                                         adjust=True) * np.sqrt(20)

    tsla_df_copy[['close', 'mov_std', 'std_ewm', 'return']].plot(subplots=True, grid=True)
    plt.show()
示例#4
0
def sample_531_2():
    """
    5.3.1_2 绘制股票的收益,及收益波动情况
    :return:
    """
    tsla_df_copy = tsla_df.copy()
    # 投资回报
    tsla_df_copy['return'] = np.log(tsla_df['close'] / tsla_df['close'].shift(1))

    # 移动收益标准差
    tsla_df_copy['mov_std'] = pd_rolling_std(tsla_df_copy['return'],
                                             window=20,
                                             center=False) * np.sqrt(20)
    # 加权移动收益标准差,与移动收益标准差基本相同,只不过根据时间权重计算std
    tsla_df_copy['std_ewm'] = pd_ewm_std(tsla_df_copy['return'], span=20,
                                         min_periods=20,
                                         adjust=True) * np.sqrt(20)

    tsla_df_copy[['close', 'mov_std', 'std_ewm', 'return']].plot(subplots=True, grid=True)
    plt.show()