#来源于github下载vnpy版本  20180413

11、多投资标的情况下,该如何修改?

10、stop和limit报单有什么区别呢?

在交易时用得最多的是二类定单,第一类是市价单(Market Order),就是用市场现在的报价成交,这类定单非常简单易懂,不需要多作解释,但第二类的定单相对比较复杂一点,它包括二种定单,一种是限价单,一种是止损单。
       限价单和止损单都属于挂单,也就是用市场以后可能会出现的价格成交,如果设定的价格不出现则不成交,一旦设定的价格出现,挂单就自动转成市价单而成交。

9、哪里可以看到成交明细?

8、

这里是不是写的有问题?是不是应该小于等于?

7、最后一根bar的时候是如何停止的?

解答:最后一根bar出来,如果产生交易信号,会存到限价单或者停止单字典中,没有下一个bar出来,就不会交易。

6、ctaBacktesting.py中的self.workingStopOrderDict和self.workingLimitOrderDict是如何来的?

解答:是在回测引擎ctaBacktesting.py 的 sendorder() / sendStopOrder()方法倒数第二行代码添加进去的,即这个bar产生信号,把order信号保存进self.limitOrderDict或者self.stopOrderDict字典中。

self.limitOrderDict[orderID]=order
或者
self.workingStopOrderDict[stopOrderID]=so

5、运行strategyMultiSignal.py时出错:

Traceback (most recent call last):
File "E:/vnpy0419/examples/CtaBacktesting/runBacktesting.py", line 42, in <module>
engine.initStrategy(RsiSignal, d)
File "E:\vnpy0419\vnpy\trader\app\ctaStrategy\ctaBacktesting.py", line 285, in initStrategy
self.strategy = strategyClass(self, setting)
TypeError: __init__() takes 1 positional argument but 3 were given

解决: 暂时放弃

4、运行时出错:

  File "E:\vnpy0419\vnpy\trader\app\ctaStrategy\ctaBacktesting.py", line 304, in crossLimitOrder
for orderID, order in self.workingLimitOrderDict.items():
RuntimeError: OrderedDict mutated during iteration

修改为:

        workingLimitOrderDictCopy=self.workingLimitOrderDict.copy()
for orderID, order in workingLimitOrderDictCopy.items():

3、运行strategyAtrRsi策略是出错

  File "E:\vnpy0419\vnpy\trader\app\ctaStrategy\ctaBacktesting.py", line 566, in cancelAll
for stopOrderID in self.workingStopOrderDict.keys():
RuntimeError: dictionary changed size during iteration

修改:

原来:for stopOrderID in self.workingStopOrderDict.keys():
修改为: for stopOrderID in list(self.workingStopOrderDict.keys()):

2、运行runBacktesting.py出错

  File "E:\vnpy0419\vnpy\trader\app\ctaStrategy\ctaBacktesting.py", line 839, in <lambda>
tradeTimeIndex = map(lambda i: tradeTimeIndex[i], xindex)
TypeError: 'map' object is not subscriptable

修改为:tradeTimeIndex=list(map(lambda i : tradeTimeIndex[i], xindex))

1、运行runBacktesting.py出错。

  File "E:\vnpy0419\vnpy\trader\app\ctaStrategy\ctaBacktesting.py", line , in crossStopOrder
for stopOrderID, so in self.workingStopOrderDict.items():
RuntimeError: dictionary changed size during iteration

解决: 修改为

        # 遍历停止单字典中的所有停止单
workingStopOrderDictCopy=self.workingStopOrderDict.copy()
for stopOrderID, so in workingStopOrderDictCopy.items():

最新文章

  1. shortcuts on Windows and MacOS
  2. c++中string的常用函数说明
  3. Python练习题 029:Project Euler 001:3和5的倍数
  4. sdut 2847 Monitor (思维题)
  5. linux下关于程序性能和系统性能的工具、方法
  6. 九度OJ 1079 手机键盘
  7. html5 canvas绘制圆形印章,以及与页面交互
  8. 如何优雅的输出PHP调试信息
  9. PHP环境搭建所遇到的问题
  10. ios进行打包
  11. linux 目录说明
  12. linux运维、架构之路-Zabbix监控应用及分布式
  13. 老马Repository模式原文
  14. 怎么解决你的小程序有“bug”的问题?
  15. nodejs中.npmrc文件的内容
  16. shell 命令 netstat 查看端口占用
  17. python 类属性 、实例属性,可变数据结构作为类属性需要注意的地方
  18. 查看UUID的方法
  19. firefor打不开问题
  20. intelij创建MapReduce工程

热门文章

  1. 使用Linux命令修改数据库密码
  2. C# 篇基础知识7——字符串
  3. ubuntu安装discourse论坛----结合在apache服务上建立虚拟主机
  4. Docker 简单使用笔记
  5. Adapter之spinner
  6. P1064 朋友数
  7. day07-Python运维开发基础(深/浅拷贝、字典/集合/相关操作)
  8. ng-trim
  9. Web application architecture overview
  10. win2008R2 局域网共享