首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

问题,反向测试与backtrader和btalib,这不是我尝试的行动,希望行动作为订单购买如果sma5>sma10和卖出时sma5<sma14

问题:反向测试与backtrader和btalib是什么?

回答:反向测试(Reverse Testing)是一种测试方法,它与传统的正向测试(Forward Testing)相反。在正向测试中,我们根据给定的策略或规则,通过历史数据来验证该策略在未来的表现。而在反向测试中,我们根据未来的数据来验证过去的策略或规则的表现,以评估其在历史数据上的可行性。

backtrader是一个开源的Python框架,用于进行量化交易策略的开发、回测和执行。它提供了丰富的功能和工具,可以帮助开发者快速构建和测试各种交易策略,并支持多种市场数据源和交易所接口。

btalib是backtrader的一个扩展库,它提供了一系列技术指标的实现,如移动平均线(SMA)、指数移动平均线(EMA)、布林带(Bollinger Bands)等。这些指标可以用于量化交易策略的分析和信号生成。

根据提供的问题,如果sma5(5日简单移动平均线)大于sma10(10日简单移动平均线),则可以考虑购买;如果sma5小于sma14(14日简单移动平均线),则可以考虑卖出。

腾讯云提供了一系列与云计算相关的产品和服务,可以帮助开发者构建和部署各种应用。然而,由于要求答案中不能提及云计算品牌商,无法给出腾讯云相关产品和产品介绍链接地址。但可以参考腾讯云官方网站或咨询腾讯云客服获取更多信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

BackTrader 中文文档(一)

任何正索引表示未来(在event-only模式下测试代码,会出错) 事件和矢量化 交易逻辑和经纪人始终基于事件运行 如果可能,指标的计算是矢量化的(源数据可以预加载) 一切都可以在仅事件模式下运行...正如您可以想象的那样,我不追踪那些使用backtrader的人的生活,所以也许一些银行和公司决定不再使用backtrader。 我也猜测一些银行和量化公司使用zipline遵循相同的方案。...用 Python 学习和测试算法交易模型的最佳方式是什么? 作为个人进入算法交易(而不是对冲基金的雇员)的好处和坏处是什么? 我需要学习怎样的数学才能进行算法交易?...() 该平台高度可配置 希望您作为用户能够发现该平台既实用又有趣。...系统赚了钱……一定有问题。 经纪人说:给我看看钱! 钱被称为“佣金”。 让我们为每次操作(买入和卖出……是的,经纪人很贪婪……)添加合理的*0.1%*佣金率。

98500
  • BackTrader 中文文档(二十七)

    对 Pandas 的支持尝试自动检测是否已使用列名,否则使用数值索引,并相应地采取行动,尝试提供最佳匹配。...backtrader 的开发版本现在包含了 bt-run.py 脚本,它自动化了大多数任务,并将作为常规软件包的一部分与 backtrader 一起安装。...快速(默认 10)快速移动平均的周期 慢(默认 30)慢速移动平均的周期 如果快速移动平均线向上穿过快速移动平均线并且在慢速移动平均线向下穿过快速移动平均线后卖出(仅在之前已购买的情况下)。...将其他观察者添加到混合中是可能的,无论是沿着stdstats还是移除那些。 让我们继续使用通常的策略,当close价格高于SimpleMovingAverage时购买,反之亦然时卖出。...卖出订单是市价订单,将立即执行。 Close-SMA CrossOver 策略已更改为: 创建一个限价订单,价格低于信号时的收盘价的 1.0% 订单有效期为 7(日历)天 结果图表。

    29600

    BackTrader 中文文档(二十八)

    对于订单管理有 3 个原语: 购买 卖出 取消 注意 update原语显然是一种逻辑,但常识告诉我们,这种方法主要由使用判断性交易方法的手动操作员使用。...仅发布了 4 个订单。尝试捕捉小幅度下跌的价格完全改变了输出。 命令行和输出: $ ....我自己…希望有一种感觉,我可以控制自己的回测平台并尝试新的想法。但是在这样做并从一开始就完全开源化之后,很明显它必须有一种方式来满足其他人的需求和愿望。...作为交易者未来,我本可以选择编写基于点数的计算和每轮固定价格的佣金,但那将是一个错误。...显然,将结果(完整的执行策略)反向 pickling 到主进程中触及了一些与内存分配相关的限制(我的机器有大量空闲 RAM……足够多以进行几小时的并行优化) 阅读了一些额外的内容后,我考虑简化我的情景

    34900

    BackTrader 中文文档(九)

    OCO总是将第 1 个订单作为参数oco指定为一组 StopTrailLimit:经纪人模拟和IB经纪人具有相同的行为。...__ 默认值为None时,订单将在一次性完全执行 slip_perc(默认值:0.0)应该使用的百分比绝对值(和正数)使买入/卖出订单的价格上涨/下跌 注意: 0.01是1% 0.001是0.1%...slip_fixed(默认值:0.0)应使用的以单位(和正数)表示的百分比来使价格上涨/下跌以进行买入/卖出订单滑点 注意:如果slip_perc不为零,则它优先于此。.../docu/filler/ 当涉及使用成交量执行订单时,backtrader 经纪人模拟具有默认策略: 忽略成交量 这基于两个前提: 在足够流动的市场中进行交易,以完全吸收一次性 买入/卖出 订单...:XX% interest(默认:0.0) 如果这不是零,则这是持有空头卖出头寸所收取的年息。

    42500

    BackTrader 中文文档(十五)

    我的观点可以在下面看到。这仅仅是我的个人意见,因为作为 backtrader 的作者,我对如何最好地使用该平台有偏见。 我个人对某些结构如何表述的偏好,不必与其他人使用平台的偏好相匹配。...如果那些是学习笔记,让我们尝试在那里真正可以改进代码的地方进行改进,在我个人看来,那就是backtrader最擅长的地方。...风格是非常个人的事情,我不会触及那方面) 在策略的next方法中,以下是买入和卖出的逻辑决策。...Limit 订单发布的可能性 参数 buy_limit(当不为 False 时)将是一个百分比,以从当前价格中减去来设置预期的购买点。...将其与数据一起绘制 作为一个移动平均线,如果指标绘制在计算平均值的数据的同一轴上会很好。

    45500

    Backtrader来啦:常见案例汇总

    量化投资与机器学习公众号 独家撰写 公众号为全网读者带来Backtrader系列自推出第一期以来,受到了众多读者的喜爱与点赞,QIML也会继续把这个系列做好。...如果只考虑做多的情况,一般是短期均线>中期均线>长期均线,呈多头排列时,买入开仓;出现短期均线下穿中期均线时,卖出平仓。...1,其它剩余的时间点都不是产生多头信号的时间点(取值等于0或-1); 因为买入信号和卖出信号是各算各的,所以最后还需要对两个信号进行整合;由于两个信号形成条件不存在冲突,所以直接求和即可,-1 对应卖出信号...、1对应买入信号、0 对应不做调仓操作; 如果想借助多个技术指标生成一个综合信号,也可以借鉴上面的多信号合成逻辑,将信号合成问题转换成数学指标的计算问题。...:价格突破 10 日最低点时止盈离场; 做空与做多的逻辑相反。

    3K33

    BackTrader 中文文档(十九)

    (价值,利润和损失,价值和佣金) 如果订单因资金不足而被拒绝,则提供反馈Margin 注意 因为将有一个调整要投资的金额,以留出佣金的空间,所以一些订单可能无法被经纪人接受。...这是默认值,但它在这里作为参考。 commission=0.001或0.1%,以确保我们有时会满足保证金 前两个订单被拒绝了,显示Margin。 第三个订单被接受了。 这不是错误。...在收盘竞价时购买 当标普至少下跌 1%:在大多数情况下,这意味着当前收盘价比前一次收盘价低1% 持有 2 天:这里的解释将是在 2 个交易会话后在收盘时卖出 2x 杠杆:每个购买操作都是...如果不使用,将每次都从Yahoo下载默认日期和默认股票代码为^GSPC的数据。 休斯顿,我们有问题!尽管没有预期的那么大。...当策略购买时,2x杠杆允许购买两倍的资产。 但是当策略处于现金状态时,现金的价值并不是其价值的两倍。 BTFD行没有展现出这种行为,因为它始终始终是杠杆的 好的。

    25400

    BackTrader 中文文档(八)

    backtrader将kwargs传递给创建的订单对象 例如:如果backtrader直接支持的 4 种订单执行类型不够用,例如Interactive Brokers的情况下,可以将以下内容作为kwargs...在与其他经纪人操作时,它们可以被扩展和/或包含额外的嵌入信息。 请参阅适当经纪人的参考资料。 类backtrader.order.Order() 持有创建/执行数据和订单类型的类。...如果设置了valid且时间点已到达,则订单将被取消 价格匹配: backtrader尝试为Limit订单提供最逼真的执行价格。...如果设置了valid且时间点已到达,则订单将被取消 价格匹配: backtrader尝试为Stop订单提供最逼真的触发价格。...该方法仅考虑组合的当前总价值,以确定资产的目标值。 示例 backtrader尝试为每个新功能提供一个示例,这不例外。没有花里胡哨,只是为了测试结果是否符合预期。

    43200

    BackTrader 中文文档(十二)

    如果未找到,则将尝试使用已知的和硬编码的CLSIDs执行相同操作。 注意 即使可以通过扫描文件系统找到 DLL,Visual Chart本身也必须正在运行。...注意 道琼斯工业指数(不是全球版本)位于 099I-DJI 注意 所有这些时间管理都在 DST 转换期间进行真正的测试,期间本地和远程市场发生了与 DST 相关的不同步现象。...数据源将尝试(通过存储)重新连接和回填,必要时,并恢复操作 NOTSUBSCRIBED 合同和连接正常,但由于权限不足,无法检索数据。...) Order.StopLimit(当Stop触发时,Limit订单随后进行) 订单有效性 在回测期间可用的相同有效性概念(用于valid到buy和sell)可用,并具有相同含义。...一个Trade观察器,在一次交易结束时显示实际的盈亏 交易被定义为开仓并将仓位调回0(直接或从多头到空头或空头到多头) 一个BuySell观察器,在价格之上绘制买入和卖出操作的位置 这3

    38100

    大象机器人myCobot 320六轴协作机械臂日本用户开箱评测!

    这次我购买了myCobot pro 320,所以我想写一篇关于它的开箱测评文章。虽然有很多关于myCobot 280的文章,但是关于320的信息很少,曾经我在购买时也非常犹豫。...我认为拥有myCobot 280的人可能会考虑购买320,所以我写了这篇文章作为参考。我不是专家,所以可能会有一些写作方面的疑虑,请谅解。如果有任何错误的验证方法,请指出。...特别是当有重量施加在上面时,位置控制性能不佳,以及在施加反作用力时,280有很大的“松动”(反向间隙),这让我很烦恼。就我个人而言,我最担心的是320是否真的有足够的动力,以及它的“松动”有多严重。...https://twitter.com/i/status/1554460488519794691反向间隙这是我比较关心的一个问题,机械臂的关节是否会松动,我会在使用slider_control进行位置调整后进行确认...从myCobot 280创建的环境到ROS的快速转换给我留下了很好的印象。如果有任何建议或希望我进行的验证,请随时提出,感谢您的阅读!

    41410

    机器学习应用在市场微观结构和高频交易的思考

    比如,在许多HFT问题中可能没有任何先验的知识关于订单簿中的流动性分配与未来的价格变动相关(如果有的话)。因此,特征选择或特征工程成为HFT机器学习的重要过程,也是本文的核心主题之一。...需要注意的是,在中间价执行的假设下,两个操作中的一个或另一个总是有利可图的——如果中间价上升,则在t秒后买进卖出,如果中间价下降,则反向操作。当我们考虑更现实的执行假设时,这将不再成立。...举个简单的例子,如果我们不是以一个具有高价值的单一定向特征为条件条件,而是以几个具有高价值的定向特征为条件条件,那么与购买的相关性就会比任何孤立特征都要强得多。...在第一类中,当我们观察价格在毫秒到秒之间的演变时,我们可能会看到大量可售订单与订单簿相互作用,产生方向压力。...相反地,可能存在一个状态,在训练期间与之相关的支出为负,但如果该行动在所有状态中平均时更无利可图(同样,可能是由于长期价格漂移),则该状态-行动对被分配为正值。

    80610

    越长越好:简单6个步骤,教你创建吸引361,494个访客的内容

    反向链接很重要 ▲▲▲ 反向链接应当被视为你的多元内容的入口。 除了Rick的枪(Rick和Morty作为参考;是的我知道自己是个蠢货),你在挥舞着一把我们称之为“荣誉枪“的武器。...一个好的方法是在着陆页面添加高质量的图片,引人注目的行动呼吁,和联系我们的表格。 在几个不同的版本上运行A / B测试,看看哪些版本表现最佳。 ?...5 习惯竞争 如果MMA冠军Conor McGregor能成为Floyd Maywether训练时贴在墙上的一只苍蝇!...但是,如果你希望在所做的事情上做到最好,那么充分利用现有和已有的资源,同时密切关注你能够独一无二的提升你的服务所存在的任何差距。...他们有着更酷的logo,风格比你更年轻更新潮。 这竞争能严重影响你的销售,因为每个人都想尝试新鲜感。 一不小心,你就可能最终收获泪水而不是美元。 现在的问题就是你如何能在竞争中脱颖而出。

    46830

    最新 | JP摩根人工智能、机器学习应用算法交易解析

    如果你对机器学习和人工智能(AI)在金融领域的应用感兴趣的话,J.P. Morgan最新发布了一份关于算法交易“应用数据驱动学习”问题的报告。也许对你有帮助。...然而,算法并不是随心所欲的。JPM指出,客户机“通常向执行代理传输带有约束和首选项的特定指令”。例如,客户可能希望在他们的投资组合转换过程中保持货币中性,以便卖出的数量大致等于买入的数量。...当你在国际象棋和围棋中映射数据时,问题是考虑如何在所有合格棋子中移动一个棋子以及它们如何响应。然而,电子交易行为由多个步骤组成。这是“一组子订单”,JPM的分析师说。 什么是子订单?...JPM指出,一个简单的操作可能是“提交一个被动的购买订单和一个主动的购买订单”。被动子订单将以指定的价格停留在订单簿中,从而为其他市场参与者提供流动性。...但如果你不这样做,并尝试“基于梯度的训练”,你将以大量无关的经验和良好的行为可以忘记。 JP摩根试图通过“应用超参数优化技术”来避免这种情况。

    97130

    Man AHL CIO:趋势跟踪依然有效!

    3、行为金融学上的解释:如果投资者准备卖出某个资产,而资产价格在上升,那大部分人的选择是等待一个更好的卖出价格。 趋势策略和非趋势策略对市场非有效性的偏好是一致的吗?...对于任何系统来说,这都是一个完全合乎逻辑且可以理解的假设。如果有大量的人这样做,效率肯定会降低。有一种非常好的方法可以测试这一点,即将趋势分开。以市场为例,假设我使用移动平均线交叉创建了一个趋势信号。...因为利率本质上存在缺陷,中央银行充当了市场背后的某种后盾,让它们协同行动。在货币政策非常非常宽松和央行行动协调一致的时期,所有这些都有助于压缩波动性井使市场更具关联性。...如果你考虑什么对趋势有利,这是许多市场上的正凸性策略共同的特点,那当然希望相关性较低,并且希望事情发生变化。当你观察那些受失行影响较小的市场时,你会发现这些市场在过去十年中继续保持着良好的趋势。...所以通常情况下,它是国库券和各种非常安全的政府债务的组合。 我知道有人尝试在这一部分中承担更多的风险。但我只是认为,对我们来说,这不是我们应该去尝试同险或赚钱的地方。

    22510

    BackTrader 中文文档(十六)

    显然,X 轴上的时间演变不再是恒定的,而是被拉伸或压缩,取决于价格行动在期间是更静态还是移动了几个砖块。 为了更好地看到和欣赏效果,让我们将普通的价格条和砖形图放在一起在一个图表上: $ ....会有损失,会有问题。无论问题有多么善意和天真:它们都会产生影响。 backtrader是交易理念的基础,并且它已经找到了一个新的应用领域:报告。...交互式经纪人优化 使用交互式经纪人作为优化数据源的实时连接并未被预见。然而,有用户尝试了这种方法,导致了出现了速度违规。...如果 cheat=True 在这种情况下,将调用定时器: 在数据源加载了当前柱形图的新值之后 在 经纪人评估订单并重新计算组合价值之前 因此在指标被重新计算之前和任何策略的 next...) 由于价格的每日分辨率,这并没有太大的区别,除了: 该策略还在开盘前发出订单……并且在第二天与开盘价匹配。

    25300

    BackTrader 中文文档(十四)

    这是我学到的东西 因为这里已被删除,快速摘要如下: 这些策略不起作用 如果作者声称某种策略停止工作是由于阿尔法衰减,那么测试将针对过去的数据运行,而且仍然无法工作 底线是:这都是过度拟合...的时间赚钱 可靠性水平:38%(获胜交易的百分比) 缺失的部分: 测试市场 测试期间 如果始终处于市场中意味着“今天”关闭交易并在“明天”重新进入市场,或者意味着同时发出关闭/重新开放订单...如果在代码中固定了x和Y,但宇宙中只添加了 50 支股票,仍然尝试选择 100 支股票,就会出现这样的情况。...作为backtrader的目标之一是灵活地支持尽可能多的情况和用例,答案很简单:“至少有几种方法”。...购买和增加购买的绩效跟踪 如上所述,当现金被添加到(有时从中提取出)系统时,绩效必须以不同的方式进行衡量。没有必要发明什么,因为很久以前就已经发明了,这就是基金管理所做的事情。

    47300

    高频交易如何在去中心化交易所运作?

    为此,HFT 算法分析大量数据以识别可用于获利的模式和趋势。例如,一种算法可能会识别特定的价格趋势,然后快速连续执行大量买入或卖出订单以利用它。 美国证券交易委员会没有使用高频交易的具体定义。...但是,它列出了高频交易的五个主要方面: · 使用高速复杂的程序生成和执行订单 · 通过使用交易所和其他服务提供的托管服务来减少数据流中的潜在延迟和延迟 · 使用短时间框架开仓和平仓 · 提交多个订单,然后在提交后不久取消它们...HFT 算法旨在检测肉眼不易观察到的交易触发和趋势,尤其是在同时开立大量头寸所需的速度下。最终,HFT 的目标是在算法识别出新趋势时排在第一位。...例如,如果一个比特币 ( BTC ) 在交易所 A 的价格为 30,050 美元,在交易所 B 的价格为 30,100 美元,则可以在第一个交易所购买它,然后立即在第二个交易所出售它以快速获利。...相反,它被希望押注短期价格波动的投机者使用。因此,高频交易者行动得如此之快,以至于价格可能没有时间在他们再次行动之前进行调整。

    1.6K20

    能用强化学习买卖比特币赚钱吗?能能能,当然能!

    不过由于之前对投资交易没有任何理解,我自己做这个项目花了好几个月的时间。 请注意,我要研究的问题并不是「用深度学习预测价格」。所以如果你想看这方面的示例代码和模型的话恐怕要失望了。...参数优化:你可以用网格搜索这样的搜索方法,尝试策略中的参数的不同的值,比如阈值、相关系数等等,同样在模拟器和历史数据上进行测试。...首先我们有一个在环境中做出行动的智能体,在第 t 步时智能体把环境的目前状态 St 作为自己的输入,然后做出行为 At;接着在 t+1 步中接收到反馈 Rt+1 以及更新的环境状态 St+1。...比如,想象我们学习到了如何对其它市场上运行的算法和交易策略做反向工程,然后尝试利用它们,这将是一件多么美妙的事情啊。...结论 这篇文章的目的是对基于强化学习方法的交易智能体做一个入门介绍,讨论为什么这种方法优于现有的交易策略开发方法,以及提出什么我相信更多研究人员都应该研究这个问题。我希望我这篇文章达到了部分效果。

    1.6K60

    比特币价,黄金和无稽之谈 - 怎样不去给比特币估值

    重要提示:如果您拥有价值超过1,000美元的加密货币,那么您应该毫不犹豫地使用硬件钱包,而不是把货币存在交易市场里。我推荐使用Trezor,您可以直接从他们的网站上购买到€89 。...当你的交易对方把他们的比特币出售给你时,你投入的金额与“出手比特币”的金额完全相同!你投入了 $ 840而他们抽出了$ 840!(为了让事情更简洁,我排除了交易所收取的费用)。...) = $ 101.61 / BTC 但这不是订单簿正向我们展示的内容。...大胆的投资尝试 现在让我们看看如果我们尝试将大量资金用于比特币,会发生什么。...是的,当然,如果有更多的买家更愿意购买和支付积累BTC所需的任何东西,那么价格(出价,折中,报价,最后)应该会增加。但肯定不是“黄金资金”分析师们的说法。

    1.1K80
    领券