_($0PXQFQ7Y(P~4838LJ_]L.png

管理培训搜索
18318889481 17875936848

管理
| 并购重组

破产重整 不良资产处置 重大资产重组 破产管理人 并购重组 管理控制与企业合并

| 转创国际企业研究所

中国企业国际化发展 粤港澳大湾区 上市公司内部控制 企业内部控制 董事之家 专精特新企业 企业内控与风险管理 集团管控 民营企业与经济 通商董事会馆 雏鹰企业 高新技术企业 瞪羚企业 企业治理

| 创新创业

信息与软件 系统集成 创新创业创投创意 BIM工程 人工智能 互联网+ 网络工程 电子商务师 制造业创新 乡村振兴工委会 数字经济 价值共创 企业科创管理 视觉传达设计 《类似商品和服务区别分表》 创新创业与可持续 电子商务 数字媒体艺术 数字创新中心 全面质量管理 移动支付 私营经济 企业经营 商业模式创新 数字转型 灯塔工厂 企业产品创新 客户与营销 专利 商标 著作权 视觉传播设计与制作 商业规划 产品检测 金融科技 企业创新绩效 价值网络 企业创新管理 科技管理创新 集成电路布图设计 企业知识产权管理 发明专利 技术投资与并购 版权 新一代信息技术产业 精益创新 绿创中心

| 转型升级

十四五规划专题 科技创新 全过程工程 转型升级 绿色建筑 环保技术 装配式建筑 并购重组动态 节能减排咨询 数字化转型 制造业转型升级 碳排放管理 工业转型升级 教育转型升级 外贸转型升级 能源转型升级 供给侧改革 企业转型升级 地产转型升级 制造业转型与高质量发展 产业转型升级 转创国际技术转移 数控工厂 工业互联网 绿色转型升级 碳排放管理会计 服务业转型升级 智能制造 全面绩效管理 工业物联网 组织变革与管理转型 产业科技管理 国有资产管理 绿色转型与可持续发展 低碳转型 盈利模式转型 绿色能源与碳核算

| 投融资规划

广东股权交易中心 私募热点 私募投资 投融资简报 案例研究 内保外贷 融资策划 气候投融资 供应链金融 银行境外贷款 前海港企贷 知识产权金融 股权投资 风险投资 股权质押 企业投资 股权激励 内部控制准则

| 管理咨询

工程造价 管理会计 企业内控管理 医院管理 物流与供应链 预算管理与会计 中小企业内部控制 财务经理人 转创产研 家族企业管理 企业价值 企业发展管理咨询 企业能源效率 管理培训 质量管理 流程管理 精益生产 商业策略 企业技术与绩效 中国卓越管理公司 数据分析 核心业务运营 制度智库 投资管理 管理信息系统 许可证 管理咨询 可行性研究 商业计划书 绩效评价 预算评审 绩效考核 企业运营 价值创造 商业模式评估 内部控制政策

| 企业管理可持续

建筑工程管理 消防企业管理 安全企业管理 乡村振兴 制造企业管理 卫生企业管理 工程管理中心 企业质量管理 科技企业管理 医药企业管理 产品质量管理 电力企业管理 企业经济管理 食品企业管理 工业企业管理 软件企业管理 能源企业管理 智能企业管理 汽车企业管理 环保企业管理 进出口企业管理

| 环境评价与双碳计划

碳达峰中和计划 环境影响评价 双碳补贴 环境评价 应对气候变化与碳中和 气候变化与脱碳管理 生态环境合规专题 气候审计与鉴证

| 人力资源

人力资源会计 劳动关系协调 高层次人才 人才引进 薪酬管理 入户落户 培训与开发 人力资源 股权激励与绩效考核 薪酬激励 人社中心

| 咨询与战略

招标投标 项目管理 家族信托 上市公司独立董事 IPO咨询 独立董事 关联交易管理 跨境资金集中运营 信息披露管理 董事会治理 保险公司绩效评价 资产负债管理 企业管理与战略 资金信托 内部控制质量

| 转创产研

新鲜牛肉市场 教育产业 体育产业 中医药产业 新能源产业 能源与电力 酒店业 电子信息产业 预制菜产业 信创产业 网络安全产业 轻纺工业 服装服饰 安全与应急产业 无人机 餐饮美食 奶茶饮品

| Brinson分析简介当前您所在的位置:首页 > 管理 > 转型升级 > 外贸转型升级

分析框架

Brinson的框架可以用来分解投资组合的总收益。尽管计算上很简单,但理论上是有效的,已被各种养老金赞助人、顾问和投资管理人员成功地使用;目前,它被用来表示实际投资组合中的业绩贡献。绩效归因虽然不是新发现的理论,但仍然是一个不断发展的学科。早期关于这一主题的论文主要关注风险调整后的收益,提出了最初的框架,但很少关注多重资产绩效衡量。我们的任务是按照投资客户和经理的决策的重要性排序,然后衡量这些决策对实际计划绩效的整体重要性。


表1说明了分析投资组合收益的框架:

在这里插入图片描述


象限Ⅰ表示基准收益(Benchmark Return)。在此,我们将根据其长期投资基准确定投资组合的基准收益率。

一个计划的基准收益是所采用的投资基准的结果。投资基准确定长期资产配置计划(包括资产类别和标准权重),用于控制总体风险和满足投资组合目标。

简而言之,基准确定整个计划的投资组合的标准。要计算策略基准收益率,我们需要:(1)预先说明所有资产类别的权重,以及(2)分配在每种资产类别上的被动(或基准)收益。

象限II表示基准和择时的收益(Benchmark and Timing Return)。这里象限II的收益并不单表示了择时的收益,而是按照基准进行选股加以主动择时的综合收益。择时是指相对于基准,以提高收益和/或降低风险为目的,在资产类比的标准权重上战略地降低或提高它的权重,择时表现了相对于政策回报的增量回报。

象限III表示基准和选股的收益(Benchmark and Security Selection Return)而产生的收益。同样地,这里象限Ⅲ的收益并不单表示了选股的收益,而是按照基准进行择时加以主动选股的综合收益。选股是在一个资产类别中进行主动投资选择,我们将其定义为投资组合的实际资产类别收益率(例如,普通股和债券部分的实际回报率)超过这些类别的被动基准收益率,并由标准的资产配置权重进行加权。

象限IV表示该期间基金总额的实际收益(Actual Portfolio Return)。这是主动进行择时和选股的实际结果。

表2给出了计算这些象限值的方法:

在这里插入图片描述


表3根据四个象限的值,计算出择时(Timing)、股票选择(Security selection)和两种的交互效应(Other),三者共同构成了组合的超额收益:

在这里插入图片描述


案例展示

下面我们用一个实际的策略案例来说明如何使用brinson分析。


这个策略是一个比较简单的双均线策略,当短期均线上穿长期均线,出现金叉,则买入;当短期均线下穿长期均线,出现死叉,则卖出。

交易时间我们选择从15年初到17年底,共三年时间。为演示目的,我们没有选择全市场的股票,而是抽了一些股票,这样回测结果跑得快些。


核心代码如下所示:


def run_stretegy1(instruments,start_date,end_date):


    # 金叉死叉策略

    #     当短期均线上穿长期均线,出现金叉,买入

    #     当短期均线下穿长期均线,出现死叉,卖出

    #     不风控:29.8%  26.61%  25.54%


    ## 1. 主要参数


    def prepare(context):

        context.pre_days = 60

        context.date = context.start_date

        tmp = datetime.datetime.strptime(context.start_date,'%Y-%m-%d') - datetime.timedelta(days=context.pre_days )

        #context.start_date =  tmp.strftime('%Y-%m-%d')

        start_date =  tmp.strftime('%Y-%m-%d')

        df = D.history_data(context.instruments, start_date, context.end_date, ['close'])

        #计算指标历史数据

        def ma_calculate(df):

            short_mavg = pd.rolling_mean(df['close'], 5)

            long_mavg = pd.rolling_mean(df['close'], 50) 

            df['ma_signal'] = (short_mavg>long_mavg).astype(np.int)

            return df

        context.ma_signal = df.groupby('instrument').apply(ma_calculate)[['date','instrument','ma_signal']].pivot(index='date', columns='instrument', values='ma_signal')


    ## 2. 模型训练


    def initialize(context):

        context.set_commission(PerOrder(buy_cost=0.0003, sell_cost=0.0013, min_cost=5))

        context.short_period = 5

        context.long_period = 50

        assert context.long_period <=  context.pre_days



    def handle_data(context, data):

        date = data.current_dt.strftime('%Y-%m-%d')

        if date <  context.date:

            return


        for instrument in context.instruments:

            equity = context.symbol(instrument)

            ma_signal = context.ma_signal.ix[date,instrument]


            if np.isnan(ma_signal):

                ma_signal = 0


            # 获取账户现金和持仓

            cash = context.portfolio.cash  

            cur_position = context.portfolio.positions[equity].amount  


            #  交易逻辑

            #if  (state_choosed is None or context.options['state_pred'].ix[date,'state']==state_choosed) and ma_signal==1 and cur_position == 0 and data.can_trade(equity):

            if ma_signal== 1 and cur_position == 0 and data.can_trade(equity):

                context.order_target_percent(equity, 1/20.)   

            if ma_signal==0 and cur_position > 0 and data.can_trade(equity):  

                context.order_target_percent(equity, 0) 

    

    m=M.trade.v4(

                    instruments=instruments,

                    start_date=start_date,

                    end_date=end_date,

                    prepare=prepare,

                    initialize=initialize,

                    handle_data=handle_data,

                    volume_limit=0,

                    order_price_field_buy='open',

                    order_price_field_sell='open',

                    capital_base=float("1.0e6"),

                    plot_charts=True,

                    auto_cancel_non_tradable_orders=True,

                    benchmark='000300.SHA',

                    m_deps = np.random.randn())

    return m

    

instruments = ["600000.SHA","600010.SHA","600015.SHA","600016.SHA",

                "600028.SHA","600029.SHA","600030.SHA","600036.SHA",

                "600048.SHA","600050.SHA","600089.SHA","600100.SHA",

                "600104.SHA","600109.SHA","600111.SHA","600150.SHA",

                "600196.SHA","600256.SHA","600332.SHA","600340.SHA",

                "600372.SHA","600406.SHA","600485.SHA","600518.SHA",

                "600519.SHA","600547.SHA","600583.SHA","600585.SHA",

                "600606.SHA","600637.SHA","600690.SHA","600703.SHA",

                "600795.SHA","600837.SHA","600887.SHA",

                "600893.SHA","600919.SHA","600958.SHA","600999.SHA",

                "601006.SHA","601088.SHA","601118.SHA","601166.SHA",

                "601169.SHA","601186.SHA","601198.SHA","601211.SHA",

                "601288.SHA","601318.SHA",

                "601328.SHA","601336.SHA","601377.SHA","601390.SHA",

                "601398.SHA","601601.SHA","601628.SHA","601668.SHA",

                "601669.SHA","601688.SHA","601727.SHA","601766.SHA",

                "601788.SHA","601800.SHA","601818.SHA","601857.SHA",

                "601901.SHA","601919.SHA","601985.SHA",

                "600018.SHA","601988.SHA","601989.SHA","601998.SHA"]

start_date = '2015-01-01'

end_date = '2017-12-31'

strategy1 = run_stretegy1(instruments,start_date,end_date)

在这里插入图片描述

调用brinson分析api


当运行完回测的时候,保存下M.trade.v4的返回对象,在案例里我们存在strategy1里。强调一下,现在brinson分析只支持在v4版本上。

然后我们调用brinson_analysis()方法,这个方法会计算brinson分析所需要的数据,应该要不了几分钟。


brinson = strategy1.brinson_analysis()

1

当brinson对象构建后,我们调用plot_return_path()方法,来获得收益归因的路径图,对应的是上述表2的结果:


brinson.plot_return_path()

在这里插入图片描述


其中,RETURN_I是基准收益,相对应的RETURN_IV是组合实际收益。


然后我们来看下最关键的收益贡献分析:


brinson.plot_periods_return_analysis()

在这里插入图片描述


图中每根柱子代表相应收益在时间上的累积贡献,不难从上图中发现,这个策略有正的择时贡献,由于我们的双均线策略本来就是择时策略,所以并不奇怪。然而我们的选股收益是负的,说明我们的策略并不具有选股能力,分析我们的样例策略,是一个固定的股票列表,比基准的数量还要少,这个结果也能解释。


如果我们还可以单独看超额收益,如下图,可以看到我们的样例策略还是获得了超额收益。

在这里插入图片描述


小结:分解影响投资组合表现的因素,有利于量化投资管理决策在投资组合表现中发挥的作用;明确投资政策和投资策略之间的区别和联系将有助于进一步阐明这两项活动在投资过程中的作用。简单、准确、完整和可衡量的投资决策过程归因,将使我们进一步认识到投资活动中各部分的重要性,Brinson的理论在分析投资组合表现的决定因素上搭建起了一个简明而完整的框架。

转创君
企业概况
联系我们
专家顾问
企业文化
党风建设
核心团队
资质荣誉
领导智库
专家库
公司公告
加入转创
战略合作伙伴
质量保证
咨询流程
联系我们
咨询
IPO咨询
中国企业国际化发展战略
投融资规划
企业管理咨询
人力资源管理
风险管理
竞争战略
集团管控
并购重组
家族办公室
资产管理
股权设计
企业管治与内部审计
企业估值
价值办公室
内控咨询
投资银行
管治、内控及合规服务
法律咨询
服务
管理咨询服务
投融资规划
人力资源
资产评估服务
会计服务
科技服务
资质认证
ESG服务
商务咨询
转创法信
内部控制服务
转创投服
金融服务咨询
企业服务
财会服务
翻译服务
财审
金融会计专题
财税中心
国际财务管理
税务师事务所
财税法律服务
会计中心
财务咨询
内部审计专题
审计创新与全球化
代理记账中心
会计师事务所
审计智库
审计中心
审计及鉴证
专项审计
审计工厂
审计咨询服务
金融
纳斯达克
并购交易服务
北交所
IPO咨询
深交所
上交所
直通新三板
董秘工作平台
独立董事事务
SPAC
资本市场服务中心
澳洲上市
加拿大上市
香港联交所
新交所
金融分析师事务所
合规
合规与政府管制
企业合规
网络安全与隐私保护
法证会计与反舞弊
反洗钱与制裁合规
反垄断中心
企业合规管理咨询
合规中心
转创全球企业合规
合规律师事务所
金融安全与合规
海关及全球贸易合规
ESG合规
反欺诈中心
合规中心(产业)
知识产权合规专题
私募股权基金合规
ESG
绿色金融
ESG环境
监督中心
ESG社会
监管中心
全球ESG政策法规
ESG咨询
ESG治理
CRS中心
ESG中心
纪检监察
SDG中心
政府管制
法信
信用中心
知识产权
诚信中心
估值分析
转创信评
资产管理
内控中心
征信中心
转创评值
资产评估事务
金融估值
数据资产评估
信用研究
管理
并购重组
转创国际企业研究所
创新创业
转型升级
投融资规划
管理咨询
企业管理可持续
环境评价与双碳计划
人力资源
咨询与战略
转创产研
法律
刑事法律服务
资本市场法律服务
财税金融法律事务
转创国际合规律师
民商事法律服务
人力资源与劳动法律
公司法律服务
转创法信事务所
科技与知识产权专题
风险
警察中心
危机管理
金融风险专题
风险管理中心
网络安全与隐私保护
法律风险
企业风险管理
风险控制师事务所
国际风险研究
风险管理咨询
风险中心
黑客中心
风控中心
操作风险专题
安全中心
转创
转创深圳(深莞惠)
转创广佛
转创系统
转创梅州
客家经济
转创珠三角
转创潮州
转创网校
转创厦门
转创国际汕头
转创揭阳
转创国际研究院
中国转创科学院
18318889481 17875936848
在线QQ
在线留言
返回首页
返回顶部
留言板
发送