Cerebro开源Elasticsearch集群管理工具发布

需积分: 3 1 下载量 95 浏览量 更新于2024-11-17 收藏 54.61MB ZIP 举报
资源摘要信息:"Cerebro是一个开源的Elasticsearch web管理工具,它基于Scala、Play Framework、AngularJS和Bootstrap技术构建。Cerebro以其轻量级特性而闻名,非常适合在生产环境和测试环境中对Elasticsearch集群进行管理。与Kibana相比,Cerebro更轻量,能提供更为直观和便捷的集群管理体验。 Cerebro的主要特点包括但不限于以下几点: 1. **开源性**:Cerebro项目是在MIT许可下开源的,意味着用户可以自由地使用、修改和分发该软件,并且用于商业用途也不会产生任何费用。 2. **轻量级**:相较于其他Elasticsearch管理工具,Cerebro的设计更加轻量。它在运行时不会对Elasticsearch集群性能产生太大影响,适合资源有限的环境。 3. **易用性**:通过Web界面,用户可以直观地查看集群状态,执行索引备份、节点管理、快照等操作。AngularJS的使用也大大提高了界面的响应速度和用户交互体验。 4. **集群管理**:Cerebro可以轻松地管理Elasticsearch集群中的多个节点,提供节点状态、健康检查、集群统计信息等,这对于维护大型Elasticsearch集群尤为重要。 5. **技术栈**:Cerebro使用Scala语言编写,前端基于AngularJS和Bootstrap,后端则利用了Play Framework。这一技术栈的选择,既保证了前后端的高效协同,又保证了开发和维护的灵活性。 6. **社区支持**:作为一个开源项目,Cerebro有着活跃的社区支持。开发者和用户可以在GitHub等平台上找到项目的源代码,提出问题或贡献自己的代码。 文件名称列表中的“cerebro-0.9.3”表明当前提供的安装包版本是0.9.3。用户可以通过下载对应的压缩包文件,并按照官方文档的指示进行安装和配置。安装后,用户可以通过Web界面轻松地管理Elasticsearch集群,无需进行复杂配置。 总结来说,Cerebro是一个非常实用的Elasticsearch集群管理工具,尤其适合那些需要轻量级、直观界面来监控和管理Elasticsearch集群的用户。通过使用Cerebro,用户可以提高工作效率,简化管理流程,确保Elasticsearch集群的稳定性和性能。"

# Set cash inside the strategy cerebro.broker = bt.brokers.BackBroker(coc=True) # 设置启动资金 cerebro.broker.setcash(10000.0) # 设置交易单位大小 # cerebro.addsizer(bt.sizers.FixedSize, stake=5000) # 设置佣金为千分之一 cerebro.broker.setcommission(commission=0.003) # 添加图表设置 cerebro.addobserver(bt.observers.Broker) cerebro.addobserver(bt.observers.Trades) cerebro.addobserver(bt.observers.DrawDown) # Set leverage #cerebro.broker.setcommission() # 添加分析指标 # 收益率 cerebro.addanalyzer(bt.analyzers.Returns, _name='_Returns') # 收益期间 cerebro.addanalyzer(bt.analyzers.TimeReturn, _name='_TimeReturn') # 计算最大回撤相关指标 cerebro.addanalyzer(bt.analyzers.DrawDown, _name='_DrawDown') # 回撤期间 cerebro.addanalyzer(bt.analyzers.TimeDrawDown, _name='_TimeDrawDown') # 计算年化夏普比率 cerebro.addanalyzer(bt.analyzers.SharpeRatio, _name='_SharpeRatio', timeframe=bt.TimeFrame.Days, annualize=True, riskfreerate=0) # 计算夏普比率 # 交易统计信息,如获胜、失败次数 cerebro.addanalyzer(bt.analyzers.TradeAnalyzer, _name='_TradeAnalyzer') # 运行回测 result = cerebro.run() # 输出回测结果 # 提取结果 print("--------------- 收益期间 -----------------") print(result[0].analyzers._TimeReturn.get_analysis()) print("--------------- 最大回撤相关指标 -----------------") print(result[0].analyzers._DrawDown.get_analysis()) print("--------------- 回撤期间 -----------------") print(result[0].analyzers._TimeDrawDown.get_analysis()) print(f"最终资金: {cerebro.broker.getvalue():,.2f} 元") print("收益率:",result[0].analyzers._Returns.get_analysis()['rtot']) print("夏普比率:",result[0].analyzers._SharpeRatio.get_analysis()['sharperatio']) # 绘制图表 cerebro.plot(iplot=False, style='candlestick', barup='red', bardown='green', volume=True, volup='red', voldown='green')这一代码显示IndentationError: unexpected indent

2023-06-03 上传