用于zipline的poloniex数据包,pythonic算法交易库。

zipline-poloniex的Python项目详细描述


pythonic算法交易库zipline的poloniex数据包。

说明

只需安装pip:

pip install zipline-poloniex

并创建一个调用zipline的register函数的文件$HOME/.zipline/extension.pycreate_bundle函数返回register所需的摄取函数。 使用普通美元的Pairs记录加密货币对。

示例

  1. 将以下内容添加到$HOME/.zipline/extension.py
importpandasaspdfromzipline_polonieximportcreate_bundle,Pairs,register# adjust the following lines to your needsstart_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,使用:

importloggingfromzipline.apiimportorder,record,symbolfromzipline_poloniex.utilsimportsetup_logging__author__="Florian Wilhelm"__copyright__="Florian Wilhelm"__license__="new-bsd"# setup logging and allsetup_logging(logging.INFO)_logger=logging.getLogger(__name__)_logger.info("Dummy agent loaded")definitialize(context):_logger.info("Initializing agent...")# There seems no "nice" way to set the emission rate to minutecontext.sim_params._emission_rate='minute'defhandle_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/

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Frida Java windows的逆向工程   Java术语中的对象初始化   java在何处放置maven参数化junit输入xml文件   java如何在Swift中创建以日期为键、布尔值为值的字典/地图?   java Velocity动态属性访问   java Maven站点我如何找到它们?   java JavaFX按钮在显示阶段时显示为选中状态   文件io字符串方法java赋值   java为SOAP头生成证书   java Android更改EditText的setError弹出消息的背景色   java格式存储为字符串的数字   java Testcontainers+dbrider:无法清除表X,消息:启用自动提交时无法提交。,原因:无效   java程序应该可以运行,但仍然没有输出?   Java在列表末尾添加一个节点?   java类对象中的默认构造函数做什么?   java如何更快地从映射返回键和值?