• 大小:
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-10
  • 语言: 其他
  • 标签: 量化投资  Python  

资源简介

SUCCESSFUL ALGORITHMIC TRADING(附代码)

资源截图

代码片段和文件信息

#!/usr/bin/python
# -*- coding: utf-8 -*-

# cadf.py

import datetime
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import pandas as pd
import pandas.io.data as web
import pprint
import statsmodels.tsa.stattools as ts

from pandas.stats.api import ols


def plot_price_series(df ts1 ts2):
    months = mdates.MonthLocator()  # every month
    fig ax = plt.subplots()
    ax.plot(df.index df[ts1] label=ts1)
    ax.plot(df.index df[ts2] label=ts2)
    ax.xaxis.set_major_locator(months)
    ax.xaxis.set_major_formatter(mdates.DateFormatter(‘%b %Y‘))
    ax.set_xlim(datetime.datetime(2012 1 1) datetime.datetime(2013 1 1))
    ax.grid(True)
    fig.autofmt_xdate()

    plt.xlabel(‘Month/Year‘)
    plt.ylabel(‘Price ($)‘)
    plt.title(‘%s and %s Daily Prices‘ % (ts1 ts2))
    plt.legend()
    plt.show()

def plot_scatter_series(df ts1 ts2):
    plt.xlabel(‘%s Price ($)‘ % ts1)
    plt.ylabel(‘%s Price ($)‘ % ts2)
    plt.title(‘%s and %s Price Scatterplot‘ % (ts1 ts2))
    plt.scatter(df[ts1] df[ts2])
    plt.show()

def plot_residuals(df):
    months = mdates.MonthLocator()  # every month
    fig ax = plt.subplots()
    ax.plot(df.index df[“res“] label=“Residuals“)
    ax.xaxis.set_major_locator(months)
    ax.xaxis.set_major_formatter(mdates.DateFormatter(‘%b %Y‘))
    ax.set_xlim(datetime.datetime(2012 1 1) datetime.datetime(2013 1 1))
    ax.grid(True)
    fig.autofmt_xdate()

    plt.xlabel(‘Month/Year‘)
    plt.ylabel(‘Price ($)‘)
    plt.title(‘Residual Plot‘)
    plt.legend()

    plt.plot(df[“res“])
    plt.show()

if __name__ == “__main__“:
    start = datetime.datetime(2012 1 1)
    end = datetime.datetime(2013 1 1)

    arex = web.DataReader(“AREX“ “yahoo“ start end)
    wll = web.DataReader(“WLL“ “yahoo“ start end)

    df = pd.Dataframe(index=arex.index)
    df[“AREX“] = arex[“Adj Close“]
    df[“WLL“] = wll[“Adj Close“]

    # Plot the two time series
    plot_price_series(df “AREX“ “WLL“)

    # Display a scatter plot of the two time series
    plot_scatter_series(df “AREX“ “WLL“)

    # Calculate optimal hedge ratio “beta“
    res = ols(y=df[‘WLL‘] x=df[“AREX“])
    beta_hr = res.beta.x

    # Calculate the residuals of the linear combination
    df[“res“] = df[“WLL“] - beta_hr*df[“AREX“]

    # Plot the residuals
    plot_residuals(df)

    # Calculate and output the CADF test on the residuals
    cadf = ts.adfuller(df[“res“])
    pprint.pprint(cadf)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-06-18 08:55  algo-ebook-full-source-code-20150618\
     目录           0  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter10\
     文件        2481  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter10\cadf.py
     目录           0  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter11\
     文件        4129  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter11\forecast.py
     目录           0  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter12\
     文件        2780  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter12\sharpe.py
     目录           0  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter13\
     文件         922  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter13\var.py
     目录           0  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\
     文件        4445  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\backtest.py
     文件        7340  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\data.py
     文件        4954  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\event.py
     文件        2263  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\execution.py
     文件        6968  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\ib_execution.py
     文件        3515  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\mac.py
     文件        1431  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\performance.py
     文件        8898  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\portfolio.py
     文件        1071  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter14\strategy.py
     目录           0  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\
     文件        4445  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\backtest.py
     文件        1860  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\create_lagged_series.py
     文件        7464  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\data.py
     文件        4954  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\event.py
     文件        2263  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\execution.py
     文件        5509  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\hft_data.py
     文件        9070  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\hft_portfolio.py
     文件        6968  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\ib_execution.py
     文件        5391  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\intraday_mr.py
     文件        3603  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\mac.py
     文件        1431  2015-06-18 08:55  algo-ebook-full-source-code-20150618\chapter15\performance.py
............此处省略22个文件信息

评论

共有 条评论