策略Reference Reference为内置strategies MA_CrossOver Alias: * SMA_CrossOver 这是在均线交叉运行的长期战略,只 注意: * Although the default 买入逻辑: * No position is open on the data * The `fast` moving averagecrosses over the `slow` strategy to the upside. 卖逻辑: * A position exists on the data * The `fast` moving average cross

Orders Cerebro是关键控制系统在backtrader和Strategy(一子类)是最终用户的关键控制点。后者需要一个链接方法对系统的其它部分而这也正是orders起到关键role. Orders在Strategy成翻译由逻辑作出的决定消息适于Broker以执行一个动作。这是通过做: Creation 通过策略的方法:buy\“,sellandclose(Strategy) which return anorder`实例作为reference Cancellation Through战略的方法:cancel(策略),其接受一个订单实例操作on And的orders也用作通信方法返回

变异加权回报(或VWR) 下面讲的improvedSharpeRatio,backtrader有一些提示加入这个analyzer到其arsenal. The文献是: 的https://www.crystalbull.com/sharpe-ratio-better-with-log-returns/ 用对数收益的好处开始,并按照在侧具有的效果standard deviation中的分母SharpeRatio方程,文档开发式和期望这个analyzer. 一个最重要的特性可能是: A consistent value across timeframes `的SharpeRatio使用超额收益与风险的

用户定义Commissions The佣金制度的实施是返工就在不久以前。最重要的:返工部分涉及: 保留原来的CommissionInfo类和behavior Opening门轻松创建用户定义commissions Making,格式为xx%为新的默认佣金计划,而不是0.XX(只是口味的问题),保持行为configurable The基础知识在下面的扩展他Commissions. Note See的CommInfoBase文档字符串中概述为参数reference Defining一个委员会Scheme It涉及1或2 steps SubclassingCommInfoBase 只需改变缺省参数可

弱引用对象 Python支持weak references作为第一类对象。有两种特定的对象类型直接实现弱引用。第一个是简单的参考对象,第二个作为原始对象的代理,尽可能地 // PyWeakref_Check( ob ) 如果ob是引用或代理对象,则返回true . int PyWeakref_CheckRef( ob ) 如果ob是参考对象,则返回true. int PyWeakref_CheckProxy( ob ) 如果ob是代理对象,则返回true。 PyObject* PyWeakref_NewRef( PyObject  *ob,PyObject *callback) Return

None宾语 注意PyTypeObject为None不直接暴露在Python / C API中。自None是单身,测试对象身份(使用==在C)就足够了。同样没有PyNone_Check()功能. PyObject* Py_None Python None对象,表示缺乏价值。这个对象没有方法。它需要被处理就像任何其他对象相关的referencecounts. Py_RETURN_NONE 正确处理返回Py_None从C函数内部(即增加None的引用计数并返回它。)

runpy– 找到并执行Python模块 源代码: Lib / runpy.py runpymodule用于定位和运行Python模块,首先使用它们。它的主要用途是实现-m命令行开关,允许使用Python模块命名空间而不是文件系统定位脚本. 注意这是not沙盒模块 – 所有代码都在当前进程中执行,任何副作用(如其他模块的缓存导入)将在函数返回后保留在原位. 此外,执行代码定义的任何函数和类都不能保证在runpy函数返回后正常工作。如果对于给定的用例不能接受该限制,importlib可能是比这个模块更合适的选择. runpy模块提供两个功能: runpy.run_modu

pkgutil– 包扩展实用程序 源代码: Lib / pkgutil.py 此模块为导入系统提供实用程序,特别是packagesupport . class pkgutil.ModuleInfo(module_finder, name, ispkg) 一个命名元组,它包含一个模块信息的简短摘要. 新版本3.6. pkgutil.extend_path (path, name) 扩展组成包的模块的搜索路径。intendeduse是将以下代码放在包的__init__.py: from pkgutil import extend_path__path__ = extend_path(_

code– 解释器基类 源代码: Lib / code.py codemodule提供了在Python中实现read-eval-print循环的工具。包括两个类和便利功能,可用于构建提供交互式解释器提示的应用程序. class code.InteractiveInterpreter(locals=None) 这个类处理解析和解释器状态(用户的命名空间);它不处理输入缓冲或提示或输入文件命名(文件名始终显式传递)。可选localsarguments指定将在其中执行代码的字典;它默认为一个新创建的字典,键”__name__”设置为”__console__”并且键”__doc__”设置为

traceback– 打印或检索堆栈追溯 源代码: Lib / traceback.py 该模块提供了一个标准接口,用于提取,格式化和打印Python程序的堆栈跟踪。它在打印堆栈跟踪时完全模仿了Python解释器的行为。当您想要在程序控制下打印堆栈跟踪时,这非常有用,例如在解释器周围的“包装器”中 该模块使用traceback对象 – 这是存储在sys.last_traceback变量中的对象类型,并作为sys.exc_info(). 的第三项返回。该模块定义了以下函数: traceback.print_tb(tb, limit=None, file=None) 如果l