博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PyAlgoTrade Hello World 第一个程序(一)
阅读量:5752 次
发布时间:2019-06-18

本文共 6558 字,大约阅读时间需要 21 分钟。

本教程的目标是快速介绍PyAlgoTrade。PyAlgoTrade的目标是帮助您实现股票交易策略。假设您有一个交易策略的想法,并且您希望使用历史数据进行评估,并查看其行为方式,那么PyAlgoTrade应该允许您以最小的努力来做到这一点。

本教程是在UNIX环境中开发的,但将其适应Windows环境的步骤应该很简单。

PyAlgoTrade有6个主要组件:

  • 策略(Strategies)
  • 数据集(Feeds)
  • 券商(Brokers)
  • DataSeries
  • 技术指标​
  • 优化

策略

这些是您定义的实现交易逻辑的类。何时购买,何时出售等

数据集

这些是提供抽象的数据。例如,您将使用CSV提要,从CSV(逗号分隔值)格式化的文件中加载条来将数据提供给策略。饲料不限于酒吧。例如,有一个Twitter Feed可以将Twitter事件纳入交易决策。

券商​

经纪人负责执行订单。

DataSeries

数据系列是用于管理时间序列数据的抽象。

技术指标

这些是用于在DataSeries之上进行计算的一组过滤器。例如SMA(简单移动平均),RSI(相对强度指数)等。这些过滤器被建模为DataSeries装饰器。

优化

这些是一组允许您在不同计算机或在同一台计算机中运行的不同进程之间进行回测的方法,或两者​​的组合。它们使水平缩放变得容易。

说完这一切,我们需要测试我们的策略的第一件事是一些数据。让我们使用Oracle 2000年的股票价格,我们将使用以下命令下载:

from pyalgotrade.tools import yahoofinance;    yahoofinance.download_daily_bars('orcl',2000,'orcl-2000.csv') dw = pd.read_csv("orcl-2000.csv") dw
Date    Open    High    Low    Close    Volume    Adj Close0    2000-12-29    30.875000    31.312500    28.6875    29.062500    31702200    26.4695461    2000-12-28    30.562500    31.625000    30.3750    31.062500    25053600    28.2911062    2000-12-27    30.375000    31.062500    29.3750    30.687500    26437500    27.9495633    2000-12-26    31.500000    32.187500    30.0000    30.937500    20589500    28.1772584    2000-12-22    30.375000    31.984301    30.0000    31.875000    35568200    29.0311155    2000-12-21    27.812500    30.250000    27.3125    29.500000    46719700    26.8680126    2000-12-20    28.062500    29.812500    27.5000    28.500000    54440500    25.9572327    2000-12-19    31.812500    33.125000    30.1250    30.625000    58653700    27.8926408    2000-12-18    30.000000    32.437500    29.9375    32.000000    61640100    29.1449629    2000-12-15    29.437500    30.078100    28.1875    28.562500    120004000    26.01415610    2000-12-14    29.250000    29.937500    27.2500    27.500000    45894400    25.04645211    2000-12-13    31.937500    32.000000    28.2500    28.375000    37933600    25.84338512    2000-12-12    31.875000    32.500000    30.4062    30.750000    26481200    28.00648713    2000-12-11    30.500000    32.250000    30.0000    31.937500    50279700    29.08803914    2000-12-08    30.062500    30.625000    29.2500    30.062500    40052600    27.38032615    2000-12-07    29.625000    29.937500    28.1250    28.312500    41088300    25.78646116    2000-12-06    31.187500    31.625000    29.3125    30.187500    42125600    27.49417317    2000-12-05    29.437500    31.500000    28.8750    31.500000    59754700    28.68957218    2000-12-04    26.250000    28.875000    26.1875    28.187500    40710400    25.67261319    2000-12-01    26.375000    27.875000    25.5000    26.437500    48663500    24.07874820    2000-11-30    21.750000    27.625000    21.5000    26.500000    84386200    24.13567221    2000-11-29    23.187500    23.625000    21.8125    22.875000    75409600    20.83409422    2000-11-28    23.500000    23.812500    22.2500    22.656200    43075300    20.63481623    2000-11-27    25.437500    25.812500    22.8750    23.125000    45665200    21.06178924    2000-11-24    23.312500    24.250000    23.1250    24.125000    22443900    21.97256925    2000-11-22    23.625000    24.062500    22.0625    22.312500    53315300    20.32178026    2000-11-21    24.812500    25.625000    23.5000    23.875000    58647400    21.74487427    2000-11-20    24.312500    25.875000    24.0000    24.750000    89778400    22.54180728    2000-11-17    26.937500    29.250000    25.2500    28.812500    59636000    26.24185129    2000-11-16    28.750000    29.812500    27.2500    27.375000    37986600    24.932604...    ...    ...    ...    ...    ...    ...    ...222    2000-02-14    60.875000    62.250000    58.6250    62.187500    37599800    28.319568223    2000-02-11    62.500000    64.750000    58.7500    59.687500    55774000    27.181093224    2000-02-10    60.000000    62.625000    58.0000    62.312500    45288600    28.376492225    2000-02-09    60.062500    61.312500    58.8125    59.937500    52471600    27.294940226    2000-02-08    60.750000    61.437500    59.0000    59.562500    55718000    27.124169227    2000-02-07    59.312500    60.000000    58.8750    59.937500    44691200    27.294940228    2000-02-04    57.625000    58.250000    56.8125    57.812500    40916000    26.327236229    2000-02-03    55.375000    57.000000    54.2500    56.687500    55533200    25.814923230    2000-02-02    54.937500    56.000000    54.0000    54.312500    63933000    24.733371231    2000-02-01    51.250000    54.312500    50.0000    54.000000    57105600    24.591062232    2000-01-31    47.937500    50.125000    47.0625    49.953098    68148000    22.748143233    2000-01-28    51.500000    51.937500    46.6250    47.375000    86394000    21.574103234    2000-01-27    55.812500    56.687500    50.0000    51.812500    61054000    23.594896235    2000-01-26    56.750000    58.937500    55.0000    55.062500    47569200    25.074914236    2000-01-25    55.062500    57.500000    54.8750    56.437500    53059200    25.701075237    2000-01-24    60.250000    60.375000    54.0000    54.187500    50022400    24.676448238    2000-01-21    61.500000    61.500000    59.0000    59.687500    50891000    27.181093239    2000-01-20    59.000000    60.250000    58.1250    59.250000    54526800    26.981860240    2000-01-19    56.125000    58.250000    54.0000    57.125000    49198400    26.014156241    2000-01-18    107.875000    114.500000    105.6250    111.250000    66780000    25.331071242    2000-01-14    109.000000    111.375000    104.7500    106.812500    57078000    24.320674243    2000-01-13    108.500000    109.875000    103.5000    105.062500    55779200    23.922208244    2000-01-12    112.250000    112.250000    103.6875    105.625000    83443600    24.050286245    2000-01-11    112.625000    114.750000    109.5000    112.375000    86585200    25.587228246    2000-01-10    108.000000    116.000000    105.5000    115.750000    91518000    26.355698247    2000-01-07    95.000000    103.500000    93.5625    103.375000    91755600    23.537972248    2000-01-06    100.156197    105.000000    94.6875    96.000000    109880000    21.858722249    2000-01-05    101.625000    106.375000    96.0000    102.000000    166054000    23.224892250    2000-01-04    115.500000    118.625000    105.0000    107.687500    116824800    24.519907251    2000-01-03    124.625000    125.187500    111.6250    118.125000    98114800    26.896

作者:readilen
链接:http://www.jianshu.com/p/18ee2e9a99c0
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

转载于:https://www.cnblogs.com/zhanglong8681/p/7569186.html

你可能感兴趣的文章
oracle体系结构
查看>>
Microsoft Exchange Server 2010与Office 365混合部署升级到Exchange Server 2016混合部署汇总...
查看>>
Proxy服务器配置_Squid
查看>>
开启“无线网络”,提示:请启动windows零配置wzc服务
查看>>
【SDN】Openflow协议中对LLDP算法的理解--如何判断非OF区域的存在
查看>>
纯DIV+CSS简单实现Tab选项卡左右切换效果
查看>>
栈(一)
查看>>
ios 自定义delegate(一)
查看>>
创建美国地区的appleId
查看>>
例题10-2 UVa12169 Disgruntled Judge(拓展欧几里德)
查看>>
JS 原生ajax写法
查看>>
Composer管理PHP依赖关系
查看>>
React.js学习笔记之JSX解读
查看>>
我所了解的Libevent和SEDA架构
查看>>
Socket编程问题小记
查看>>
基于Flask-Angular的项目组网架构与部署
查看>>
一张图道尽程序员的出路
查看>>
redis 常用命令
查看>>
LVS+Keepalived高可用负载均衡集群架构
查看>>
烂泥:kvm安装windows系统蓝屏
查看>>