跳转到主要内容

zipline的Poloniex数据包,是Python算法交易库。

项目描述

Poloniex数据包为zipline,Python算法交易库。

描述

只需使用pip安装数据包

pip install zipline-poloniex

并创建一个文件 $HOME/.zipline/extension.py,调用zipline的 register 函数。 create_bundle 函数返回 register 所需的摄取函数。使用 Pairs 记录获取常见的美元与加密货币对的记录。

示例

  1. 将以下内容添加到 $HOME/.zipline/extension.py

import pandas as pd
from zipline_poloniex import create_bundle, Pairs, register

# adjust the following lines to your needs
start_session = pd.Timestamp('2016-01-01', tz='utc')
end_session = pd.Timestamp('2016-12-31', tz='utc')
assets = [Pairs.usdt_eth]

register(
    'poloniex',
    create_bundle(
        assets,
        start_session,
        end_session,
    ),
    calendar_name='POLONIEX',
    minutes_per_day=24*60,
    start_session=start_session,
    end_session=end_session
)
  1. 使用以下命令摄取数据

    zipline ingest -b poloniex
  2. 创建您的交易算法,例如 my_algorithm.py 使用

import logging

from zipline.api import order, record, symbol
from zipline_poloniex.utils import setup_logging

__author__ = "Florian Wilhelm"
__copyright__ = "Florian Wilhelm"
__license__ = "new-bsd"

# setup logging and all
setup_logging(logging.INFO)
_logger = logging.getLogger(__name__)
_logger.info("Dummy agent loaded")


def initialize(context):
    _logger.info("Initializing agent...")
    # There seems no "nice" way to set the emission rate to minute
    context.sim_params._emission_rate = 'minute'


def handle_data(context, data):
    _logger.debug("Handling data...")
    order(symbol('ETH'), 10)
    record(ETH=data.current(symbol('ETH'), 'price'))
  1. my_algorithm.py 中运行您的算法

    zipline run -f ./my_algorithm.py -s 2016-01-01 -e 2016-12-31 -o results.pickle --data-frequency minute -b poloniex
  2. 使用Pandas读取 results.pickle 以分析性能。

注意

该项目已使用PyScaffold 2.5.7设置。有关PyScaffold的详细信息和使用信息,请参阅 http://pyscaffold.readthedocs.org/

项目详情


下载文件

下载适用于您的平台文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

zipline-poloniex-0.1.2.tar.gz (45.5 kB 查看哈希值)

上传时间:

由以下机构支持