Prophet

Python 金融计算框架
授权协议 BSD
开发语言 Python
所属分类 企业应用、 金融/财务/证券系统
软件类型 开源软件
地区 不详
投 递 者 居焱
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Prophet 是一个 Python 的微框架,用于金融市场。Prophet 可以让开发人员把精力放在金融策略模型、项目组合管理和分析上。 

示例代码:

from datetime import datetime

from prophet import Prophet
from prophet.data import YahooCloseData
from prophet.analyze import default_analyzers
from prophet.orders import Orders


class OrderGenerator(object):

    def __init__(self):
        super(OrderGenerator, self).__init__()
        self._data = dict()

    def run(self, prices, timestamp, cash, **kwargs):
        symbol = "AAPL"
        orders = Orders()
        if (prices.loc[timestamp, symbol] * 100) < cash:
            orders.add_order(symbol, 100)

        return orders


prophet = Prophet()
prophet.set_universe(['AAPL', 'XOM'])

prophet.register_data_generators(YahooCloseData())
prophet.set_order_generator(OrderGenerator())
backtest = prophet.run_backtest(start=datetime(2010, 1, 1))

prophet.register_portfolio_analyzers(default_analyzers)
analysis = prophet.analyze_backtest(backtest)
print(analysis)
# +--------------------------------------+
# | sharpe            |    1.09754359611 |
# | average_return    | 0.00105478425027 |
# | cumulative_return |         2.168833 |
# | volatility        |  0.0152560508189 |
# +--------------------------------------+

# Generate orders for you to execute today
# Using Nov, 10 2014 as the date because there might be no data for today's
# date (Market might not be open) and we don't want examples to fail.
today = datetime(2014, 11, 10)
print(prophet.generate_orders(today))
# Orders[Order(symbol='AAPL', shares=100)]
 相关资料
  • 一、佣金计算 佣金计算分为:三级分销、股东分红、区域分销。 1、三级分销:展示的是三级分销的具体信息。可对其进行搜索和高级搜索。 三级分销的具体展示情况是对订单号、订单金额、订单状态、佣金、买家的账户名称、创建时间以及完成时间的展示信息。 2、股东分红:展示的是商城股东的信息以及分红的具体信息。可对其进行搜索和高级搜索。 股东分红的具体展示情况是对订单号、订单金额、订单状态、佣金、买家的账户名称、

  • 金融服务 自有人类社会以来,金融交易就是必不可少的经济活动。交易角色和内容的不同,反映出来就是不同的生产关系。通过交易,可以优化社会的效率,实现价值的最大化。人类社会的发展,离不开交易形式的演变。可见,交易在人类社会中的地位有多重要。 交易本质上交换的是价值的所属权。现在为了完成交易(例如房屋、车辆的所属权),往往需要一些中间环节,特别是中介担保角色。这是因为,交易双方往往存在着不充分信任的情况,

  • 用友金融 面试时间:2024年7月9日 时常:30分钟 岗位:Java后端转正实习 自我介绍 使用过什么Spring模块?比如web SpringBoot和Spring有什么区别? SpingMvc的工作流程? 介绍Mybatis的一级缓存和二级缓存? Mybatis的#和$有什么区别? 使用过什么设计模式?单列设计模式的使用场景 单例模式和静态类有什么区别? 静态类启动会创建对象吗? Jvm的内

  • 1. 背景说明 在 API 列表基础上,FinClip围绕金融特色场景,提供了如下API接口供小程序使用。 需声明的是,使用以下API时,请确保宿主App已经集成对应能力且与FinClip SDK实现联调的第三方功能SDK,否则小程序调用将无法实现相关功能。 具体来说,此类场景包括: 如果App集成了FinClip SDK + 已与FinClip 实现联调的SDK,则此时小程序可以直接调用API,

  • 移动POS通过运营商蜂窝网络,连接金融服务机构,实现用户的灵活刷卡消费。 我们能够提供: 高速,稳定,覆盖广泛的通信服务,帮助用户更加快捷,方便的刷卡消费; 专业的业务平台和应用支持,帮助你降低通信成本,减少金融风险,提高服务形象; 专业的管理平台,让你实时了解通信终端的工作状态。

  • 面试官迟到5分钟 个人介绍 1.项目中开源组件是什么 2.hashmap有了解吗 3.学习java多久 4.怎么学的java 5.springboot理解 6.sql调优 7.到岗时间 反问: 1.业务干啥 2.工作地点 3.面试表现 总结:经过大佬们的劝告,不去 #24届软开秋招面试经验大赏#

  • 项目介绍 排序复杂度,归并排序实现 类加载器,双亲机制好处 堆栈结构 violate 关键字 sychronized 关键字 HashMap 错误 内存区域和垃圾回收 多线程实现 线程池好处 晋升年龄 流计算框架对比 正确性保证 Spark 提交过程 Yarn 申请 Container 过程 Zookeeper 选举机制 平衡二叉树的实现

  • 10月15号一面(20min) 1. 进程和线程 2. 为什么要有线程 3. tcp/ip模型 4. 三次握手过程 5. 输入一个URL的过程 6. jvm的内存结构 7. 元空间会不会溢出 8. 栈放什么东西,会不会溢出 9. 类加载的过程 10. spring aop的原理和应用 11. 接到一个需求是怎么考虑落地的 12. 排名 13. 为什么想来深圳 14. 想不想读博 反问:业务和建议