精华内容
下载资源
问答
  • A定投,每个投资1000块钱,投了12个,总投资12000,最终金额是14000,最终收益率=(14000-12000)/12000=16.67%; B一次性购买,第一个就购买了12000,12个后最终金额也是14000,最终收益率=(14000-12000...

    A和B两个人都去买基金,他们都有12000块钱。

    A定投,每个月投资1000块钱,投了12个月,总投资12000,最终金额是14000,最终收益率=(14000-12000)/12000=16.67%;

    B一次性购买,第一个月就购买了12000,12个月后最终金额也是14000,最终收益率=(14000-12000)/12000=16.67%;

    最终他们的年化收益率是多少呢?

    B很明显,就是16.67%,但是A呢?他11个月投入的10000块才放了一个月而已,你要让这部分的钱收益算成是12个月的,这样算年化收益是有问题的。

    那应该怎么算呢?就是IRR公式,打开Excel表格,将每个月投入和最终金额输入,然后使用=IRR(B1:B13)这个公式。

    但这里计算出来的是每期收益率,我们应该算一下年化收益=(IRR(B1:B13)+1)^12-1

    对,没错,这个才是A的真实年化收益率32.14%,接近B的16.67%两倍!!!

    当然下次如果有类似每月同样金额然后计算最终收益率,如果你不想这么麻烦,毛估估直接*2也是没太大问题的。

    好,故事讲完了,定投收益率计算也清楚了,作为程序员,难道你确定你每次打开Excel去计算吗?你确定你要手动输入??

    Python大法上。

    首先你需要安装numpy库,然后numpy里面直接有个函数叫irr,直接使用即可。

    具体参见如下:

    profile = numpy.irr([10000, 10000, 10000, 10000, 10000, 10000, 10000, 10000, 10000, 10000, 10000, 10000, -140000])
    print (profile)
    print(pow(profile+1, 12) - 1)

    运行结果:

    骚年,是不是很神奇,以后不用打开Excel计算定投收益率了,一行python代码搞定。

     

    关注公众号: 量化ETF    轻松获取每日指数估值     还有各种量化指数小策略等你哦~

    文章链接: https://www.jianshu.com/p/d81cefee68ce

    展开全文
  • 基金的累计单位净值,简称“累计净值” ​仅考虑分红时,公式为: 累计单位净值=单位净值+累计分红金额 累计单位净值的隐含假设为...某基金成立时,基金单位净值为1,1个后的T日单位净值增加到1.2。投资者乙买入1.2万

    图文版:https://zhuanlan.zhihu.com/p/144838984

    基金的累计单位净值,简称“累计净值”
    ​仅考虑分红时,公式为:
    累计单位净值=单位净值+累计分红金额

    累计单位净值的隐含假设为:
    发生分红时,投资者选择现金分红方式,投资者获得的现金分红金额无法再参与该基金的投资过程。
    一般来讲,基金公司会在每个交易日公布基金的单位净值和累计单位净值,可在基金公司官网、基金销售渠道查询单位净值和累计单位净值。
    在基金的分红的例子中,根据公式,分红后的累计单位净值=1+0.1=1.1元。
    某基金成立时,基金单位净值为1,1个月后的T日单位净值增加到1.2。投资者乙买入1.2万元,获得1万份基金份额。T+9日,单位净值为1.2元,基金达到分红条件,基金公司通知将在T+10日每10份分红1元,即每份分红0.1元。T+10日,分红前单位净值为1.1元,分红除权后基金公司公布的单位净值为1元。

    基金的复权单位净值,简称“复权净值”
    累计单位净值仅考虑了现金分红的效果,实际上投资者还可以选择红利再投资的分红方式,所获得的份额将继续享受基金投资的收益,即利滚利。为此,可引入复权单位净值的概念,评估红利再投资方式下基金的等效净值。
    同时,由于不同基金的分红时点不同、分红金额不同,不能直接通过比较单位净值来比较基金的投资收益,因此为方便评估不同基金的投资收益,可通过评估不同基金在某个相同时间段复权净值增长率来评估基金的收益表现。
    仅考虑分红时,复权计算公式为:
    复权因子=分红除权日上一日的单位净值/(分红除权日上一日的单位净值-分红金额)
    复权单位净值=复权因子*分红除权日单位净值

    基金公司一般不提供复权单位净值,可在万得金融终端、choice金融终端、第三方基金数据库获取由信息商计算的复权单位净值。
    在基金的分红投资者的例子中,T+9日单位净值为1.2元,T+10日每份分红0.1元,分红后单位净值为1元。复权因子=1.2/(1.2-0.1)=1.0909,复权单位净值=1.0909*1=1.0909。
    再以广发创新升级混合 (002939)为例,其在2018-08-21日每份分红0.045元,分红信息如下:

    万得金融终端的复权单位净值如下:

    Choice金融终端复权单位净值如下:

    复权因子=分红除权日上一日的单位净值/(分红除权日上一日的单位净值-分红金额)=1.0742/(1.0742-0.045)=1.0437。
    复权单位净值=复权因子分红除权日单位净值=1.04241.0437=1.0880,与万得和Choice一致。

    复权净值增长率
    复权净值增长率=期末的复权单位净值/期初的复权单位净值-1

    以交银成长30混合 (519727)为例,其在天天基金的涨幅统计如下图所示,相关收益率和涨幅均根据复权单位净值计算得到。近1月涨幅=5.15号复权单位净值/4.15号复权单位净值-1=2.4631/2.3501-1=4.80%

    (数据来源:天天基金网、Choice金融终端)
    在基金的分红投资者的例子中,假设T+11日单位净值降低0.02到1.0800,累计单位净值=1.0800+0.1000=1.1800,复权单位净值=1.0800*1.0909=1.1782。
    T日到T+11日的复权净值增长率=1.1782/1.2-1=-1.82%。

    若投资者选择现金分红,则总的投资收益=1.080010000份+1000(现金分红)-12000(申购金额)=-200元,收益率=-200/12000=-1.67%。
    若投资者选择红利再投资,则总的投资收益=1.0800
    11000份+0-12000=-120元,收益率=-120/12000=-1.00%。
    可以看到通过复权单位净值计算得到的收益率-1.82%不等于实际红利再投资的收益率-1.00%,与预期不同。
    复权单位净值含义分析

    回顾复权因子的公式:
    复权因子=上一日的单位净值/(上一日的单位净值-分红金额)

    实际上,基金的复权因子公式为股票(后)复权因子公式衍生而来,股票(后)复权因子为:

    复权因子=前一天的收盘价/当天的前收盘价

    其中,当天的前收盘价=前一天的收盘价-当天分红金额。
    复权股价=最新价复权因子=最新价前一天的收盘价/当天的前收盘价
    复权市值=复权股价持仓数量=最新价(前一天的收盘价/当天的前收盘价)持仓数量=最新价(前一天的收盘价*持仓数量/当天的前收盘价)

    以上公式可以理解为以前一日收盘价卖出所得金额,再以前收盘价重新买入后的价值。除以持仓数量后就是等效的后复权股价。
    在股票投资领域,可以理解为在分红除权日(T日)当天盘前进行除权操作。但在场外基金领域,实际是在除权日盘后进行除权操作,等效于股票的T+1日除权。
    因此,本文定义:
    修正后的基金复权因子=(分红除权当天单位净值+分红金额)/分红除权当天单位净值=1+分红金额/分红除权当天单位净值

    并且在红利再投资场景下,一般按除权日除权后的基金份额净值转换为基金份额,“分红金额/分红除权当天单位净值”即为红利再投资获得的份额。
    在此例中,修正后的基金复权因子=(1.0+0.1)/1.0=1.1。

    T日到T+11日的复权净值增长率=1.1880/1.2-1=-1.00%。
    通过复权单位净值计算得到的收益率-1.00%与实际红利再投资的收益率-1.00%相等,能够更准确的体现基金的投资业绩。

    展开全文
  • 众所周知,现在银行的分期贷款利率是很有诱惑性人。... excel提供了一个公式叫irr,专门用来计算这种分期贷款实际利率的。 irr函数有两个参数,第一个是现金流,第二个是预估值。只要我们根据贷款情...

      众所周知,现在银行的分期贷款利率是很有诱惑性人。表面看利率是很低的,例如招行的闪电贷有时给我的利率是4.3%

    但是,由于贷款是分期还本的,我手上的本金每月都在减少,到最后一个月时手上只有少量本金,但是还的利息却还是跟第一个月一样。

      excel提供了一个公式叫irr,专门用来计算这种分期贷款实际利率的。

    irr函数有两个参数,第一个是现金流,第二个是预估值。只要我们根据贷款情况填好总贷款金额和每月还款金额就可以算出每月的内部收益率。

    月内部收益率*12就是我们的实际贷款利率。预估值一般不用填,只有irr计算失败返回#NUM!才要考虑填,具体可见office官方说明。

      https://support.office.com/zh-cn/article/IRR-%E5%87%BD%E6%95%B0-64925eaa-9988-495b-b290-3ad0c163c1bc

      为方便计算,我做了一个excel表格,有兴趣大家可以去下载。只要输入下面图片黄底黑体列,即可自动得出折算年利率。招行的闪电贷利率表面看是4.3%,实际年化利率是7.84%。

      如果你把钱投理财产品,没有7.84%以上你实际是亏本的。

      当然,本文重点不是介绍irr函数,而是我写(抄)的一个计算irr的程序(函数)。使用的是二分迭代法(网上看还有牛顿迭代法和加速迭代法,这两种需要用到数学知识)

    之所以用c语言写一个,原因是我们最近项目组有一个c程序需要计算内部收益率。我从网上找了一个程序改了一下,变成一个函数,并加上注释,方便理解和调用。

      程序和代码还有前面提到的表格我都已经上传,有需要可以去下载。实现代码如下:

    // testirr.cpp : 定义控制台应用程序的入口点。
    //
    
    #include "stdafx.h"
    #include <math.h>
    
    
    //const double zero = 1e-5;
    
    //int n;
    
    /*
    //代码是在csdn上找到的 我拿下来改了一下
    //https://blog.csdn.net/dinghaoseu/article/details/50322117
    //这是原来的代码
    double quickpow(double a, int b)
    {
        double ans = 1;
        while(b)
        {
            if(b & 1) ans = ans * a;
            a = a * a;
            b >>= 1;
        }
        return ans;
    }
    
    double makeans(double irr)
    {
        double ans = 0;
        for(int i = 1; i <= n; i++)
            ans += ( a[i] / (quickpow(1 + irr, i)) );
        return ans;
    }
    */
    //计算流出Npv
    double getNpvOut(double irr, const double arrOutMoney[], int n)
    {
        double npv = 0;
        double denominator = 1 + irr; //分母
        double multiplier = denominator; //乘数
    
        for (int i = 1; i <= n; ++i)
        {
            npv += arrOutMoney[i] / denominator; //即:arrOutMoney[i] / (quickpow(1 + irr, i)
            denominator *= multiplier;
        }
    
        return npv;
    }
    
    //最小最大IRR(内部收益率) 用于折算年化率计算
    //最小值必须大于-1 最大值1其实就足够了,折算成年化收益率是120%(国家规定利率不能超过30%)
    //数字越小计算速度越快,为保险计这里填10
    #define IRR_MIN -1.0f
    #define IRR_MAX 10.0f
    
    //二分迭代寻找合适的irr值(如果存在多个irr,取第一次找到的值,不保证大小顺序)
    //arrInOutMoney是分期现金流 nArrLen是arrInOutMoney元素个数
    //arrInOutMoney[0]必须是负数,代表总分期金额(负数),后面是每期还款金额(正数)
    //返回[IRR_MIN, IRR_MAX]之间的数字代表符合要求的IRR值,<IRR_MIN代表找不到合适的IRR
    double binarySearchGetIrr(const double arrInOutMoney[], int nArrLen)
    {
        double l = IRR_MIN, r = IRR_MAX; //irr取值-1~10之间 
        int n = nArrLen - 1;
        //int nCnt = 0;
    
        while (l < r)
        {
            //每次从最大和最小期望IRR中间取一个数值进行npv测算
            double mid = (l + r) / 2;
            //现在是用除法求Npv,其实可以改成用乘法求,效率会高一点
            //因为计算机处理乘法速度比较快
            double npvOut = getNpvOut(mid, arrInOutMoney, n);
    
            //++nCnt;
            //如果结果等于0说明找到符合要求的IRR
            if (fabs(npvOut + arrInOutMoney[0]) <= 1e-5) //double类型不能直接与0比较判断是否相等
            {    
                //printf("nCnt = %d\n", nCnt); //经测试,一般分12期迭代次数在30~60之间
                return mid;
            }
            //irr越大,npvOut越小,故npvOut太大时irr就应该落在mid和r之间,反之则反之
            else if (npvOut > -arrInOutMoney[0]) 
            {
                l = mid;
            }
            else
            {
                r = mid;
            }
        }
    
        //printf("nCnt = %d\n", nCnt);
        //找不到返回比IRR_MIN还小的值
        return IRR_MIN - 1;
    }
    
    //输入按月分期现金流,输出对应irr和折算年化收益率
    //arrInOutMoney是分期现金流 nArrLen是arrInOutMoney元素个数(一般是7或者13)
    //arrInOutMoney[0]必须是负数,代表总分期金额,后面是每期还款金额(正数)
    //nCheckFlag = 0,代表直接计算irr,否则会先对数据合法性做检查
    //返回0代表成功 其它代表失败 失败原因存放在errBuf(调用者需要保证至少有256个字节空间)
    int GetIrrAndAnnualizedRate(const double arrInOutMoney[], int nArrLen,
        OUT double *pIrr, OUT double *pAnnualizedRate, 
        int nCheckFlag, OUT char *errBuf)
    {
        double irr = 0;
    
        if (nCheckFlag != 0)
        {
            double inMoney, outMoney;
            int i;
    
            if (arrInOutMoney == NULL || nArrLen < 2)
            {
                strcpy(errBuf, "arrInOutMoney需要非空并且元素个数大于2个");
                return -10;
            }
    
            inMoney = arrInOutMoney[0];
            outMoney = 0;
            for (i = 1; i < nArrLen; ++i)
            {
                if (arrInOutMoney[i] < 0)
                {
                    //不支持多次现金流入(因为没这个需求,不要浪费计算力)
                    outMoney = -1;
                    break;
                }
                outMoney += arrInOutMoney[i];
            }
    
            if (inMoney >= 0 || (-inMoney > outMoney))
            {
                strcpy(errBuf, "第一个元素必须是负现金流,之后每个元素均是正现金流,"
                    "并且正现金流之和要大于负现金流");
                return -20;
            }
        }
    
        irr = binarySearchGetIrr(arrInOutMoney, nArrLen);
        if (irr < IRR_MIN)
        {
            sprintf(errBuf, "%.5f(%.2f%%)~%.5f(%.2f%%)之间无法找到合适的irr,请检查现金流是否输入异常",
                IRR_MIN, IRR_MIN * 12 * 100, IRR_MAX, IRR_MAX * 12 * 100);
            return -30;
        }
    
        *pIrr = irr;
        *pAnnualizedRate = irr * 12 * 100;
    
        return 0;
    }
    
    int getIrrDemo()
    {
        double irr, annualizedRate;
        double a[100 * 12 + 1];
        int n, nRet;
        char errBuf[256];
    
        printf("**************如果要退出,请在还款期数填0**************\n");
        while ((printf("input 还款期数 n(0代表退出):")) && ~scanf("%d", &n) && n)
        {
            printf("n = %d\n", n);
            if (n >= sizeof(a) / sizeof(a[0]))
            {
                printf("n值太大,不支持\n");
                continue;
            }
    
            printf("输入分期金额(负数):");
            if (scanf("%lf", &a[0]) != 1) {
                printf("输入的金额不能包含非数字和小数点\n");
                getchar();
                continue;
            }
    
            printf("输入%d期还款金额(正数),每输入一期按一次回车:", n);
            for (int i = 1; i <= n; i++)
            {
                scanf("%lf", &a[i]);
            }
    
            nRet = GetIrrAndAnnualizedRate(a, n + 1, &irr, &annualizedRate, 1, errBuf);
            if (nRet != 0)
            {
                printf("error:[%s]\n", errBuf);
                continue;
            }
    
            //计算irr常用的方法是迭代计算,即不断尝试可能值,根据尝试结果缩小范围,直到找到符合要求的值
            //网上能找到的迭代算法有二分迭代,牛顿迭代,加速迭代,其中二分迭代最好理解,最容易开发
            irr = binarySearchGetIrr(a, n + 1);
            if (irr < IRR_MIN)
            {
                printf("找不到合适的irr\n");
            }
            else
            {
                printf("irr = %.6f  年化收益率(12 * irr) = %.4f%%\n", irr, annualizedRate);
            }
        }
    
        return 0;
    }
    
    
    int main(int argc, char *argv[])
    {
        getIrrDemo();
        //system("pause");
        return 0;
    }

     

      

     

      

    转载于:https://www.cnblogs.com/kingstarer/p/10322343.html

    展开全文
  •  年化收益率仅是把当前收益率(日收益率、周收益率、月收益率)换算成年收益率来计算的,是一种理论收益率,并不是真正的已取得的收益率。比如某银行卖的一款理财产品,号称91天的年化收益率为3.1%,那么你购买了10...

    概述

      年化收益率仅是把当前收益率(日收益率、周收益率、月收益率)换算成年收益率来计算的,是一种理论收益率,并不是真正的已取得的收益率。比如某银行卖的一款理财产品,号称91天的年化收益率为3.1%,那么你购买了10万元,实际上你能收到的利息是10万*3.1%*91/365=772.88元,绝对不是3100元。另外还要注意,一般银行的理财产品不像银行定期那样当天存款就当天计息,到期就返还本金及利息。理财产品都有认购期,清算期等等。这期间的本金是不计算利息或只计算活期利息的,比如某款理财产品的认购期有5天,到期日到还本清算期之间又是5天,那么你实际的资金占用就是101天。实际的资金年化收益只有772.88*365/(101*10万)=2.79%。绝对收益是772.88/10万=0.7728%。

      对于较长期限的理财产品来说,认购期,清算期这样的时间也许可以忽略不计,而对于7天或一个月以内的短期理财产品来说,这个时间就有非常大的影响了。比如银行的7天理财产品,号称年化收益率是1.7%,但至少要占用8天资金,1.7%*7/8=1.48%,已经跟银行的7天通知存款差不多了,而银行通知存款,无论是方便程度还是稳定可靠程度,都要远高于一般有风险的理财产品的。所以看年化收益率,绝对不是看他声称的数字,而要看实际的收入数字。

      在不同的收益结转方式下,七日年化收益率计算公式也应有所不同目前货币市场基金存在两种收益结转方式,一是日日分红,按月结转,相当于日日单利,月月复利另外一种是日日分红,按日结转相当于日日复利其中单利计算公式为:(∑Ri/7)×365/10000份×100%复利计算公式为:(∑Ri/10000份)365/7×100%其中,Ri 为最近第i 公历日(i=1,2…..7)的每万份收益,基金七日年收益率采取四舍五入方式保留小数点后三位。

      可见,7日年化收益率是按7天收益计算的,如果30日年化收益率就是按最近1个月收益计算。

      设立这个指标主要是为投资者提供比较直观的数据,供投资者在将货币基金收益与其它投资产品做比较时参考在这个指标中,近七日收益率由七个变量决定,因此近七个收益率一样,并不意味着用来计算的七个每天的每万份基金份额净收益也完全一样。

    计算方式

      综述:投资人投入本金C于市场,经过时间T后其市值变为V,则该次投资中:

      1、收益为:P=V-C

      2、收益率为:K=P/C=(V-C)/C=V/C-1

      3、年化收益率为:  ⑴.Y=(1+K)^N-1=(1+K)^(D/T)-1 或   ⑵.Y=(V/C)^N-1=(V/C)^(D/T)-1其中N=D/T表示投资人一年内重复投资的次数。D表示一年的有效投资时间,对银行存款、票据、债券等D=360,对于股票、期货等市场   D=250日,对于房地产和实业等D=365日。

      4、在连续多期投资的情况下,Y=(1+K)^N-1=(1+K)^(D/T)-1   其中:K=∏(Ki+1)-1,T=∑Ti

      在“投资公理一:投资的目的——赚钱”中我们得出了三条结论:

      1、投资的目的是赚钱!

      2、赚赔的多少和快慢以年化收益率表示。

      3、投资成败的比较基准是:5年期银行定期存款利率、10-30年期长期国债收益率、当年通货膨胀率、当年大盘指数收益率。只有年化收益率超过这4个标准中的最高者才能算投资成功!

      年化收益率如何计算呢?我们先来看简单的例子:一次性的投资。假设投资人在某一时刻投资了本金C于一个市场(比如股市),经过一段时间T后其市值变为V,则这段时间内投资人的收益(或亏损,如果V<C的话)为P=V-C,其收益率(即绝对收益率,以下简称收益率)为K=P/C=(V-C)/C=V/C-1,而假设一年的所有有效投资时间为D,则投资人可在一年内重复投资的次数为N=D/T,那么该次投资的年化收益率便可表示为:Y=(1+K)^N-1=(1+K)^(D/T)-1或Y=(V/C)^N-1=(V/C)^(D/T)-1。

      这里,一年的有效投资时间D是随不同市场而变动的。像银行存款、票据、债券等一般每年按360天(或很少情况下365天)计息,即D=360天。而股票、期货等公开交易市场,其有效投资时间便是一年的交易日数,扣除节假日后约为250日(每年52周,每周5个交易日,一年大约10天节假日:52×5-10=250)即D=250天。对于房地产、普通商业、实业等由于每天都可以买卖或开业,并不受节假日的影响,所以有效投资时间便是一年的自然日数,即D=365天。因闰年而导致的个别年份多一天等非常特殊的情况,由于其影响很小,自然可忽略不计。

      举例说吧,假设投资者甲投资1万元(C=1万元),经过一个月后市值增长为1.1万元(V=1.1万元),则其收益为P=V-C=0.1万元,即赚了1千元。那么其该次投资的收益率为K=P/C=10%,由于一年有12个月即一年可以重复进行12次(N=D/T=12)同样的投资,所以其年化收益率为Y=(1+K)^12-1=1.1^12-1≈213.84%。即一个月赚10%相当于一年赚2.1384倍,投资者甲反复如此投资的话,1万元本金一年后可以增值到31384元。

      反之,如果很不幸该投资人一个月亏掉了1千元,那么该次投资的净收益为P=-0.1万元,收益率为K=P/C=-10%,年化收益率为Y=(1+K)^12-1=0.912-1≈-71.76%。也就是说投资人每个月都亏10%的话,一年后将亏掉本金的71.76%,到年底其1万元本金便只剩2824元了。

      如果一天赚10%呢?比如说昨天收盘价买入的股票今天非常幸运赚了一个涨停板,那么其年化收益率有多高呢?这里很显然收益率K=10%,而一年内可重复投资的天数就是一年内的交易日数即N=250。故年化收益率为Y=(1+K)^N-1=1.1^250-1 ≈2.2293×10^10 ,即222.93亿倍!也就是说投资人每天赚一个涨停板的话,最初的1万元本金一年后就可增值为222.93万亿元!真是富可敌国了呀!!

      反之,若投资人不幸遭遇了一个跌停板,那么其收益率为K=-10%,年化收益率为Y=(1+K)^250-1=0.9^250-1≈3.636×10^(-12)-1 ≈-1=-100%。显然投资人的本金全部亏损完毕!

      再来看第二个例子,投资者乙做长线,28月赚了3.6倍,即最初投资的本金1万元两年另4个月后增值到4.6万元。这里该次投资的投资时间为T=28月,所以其每年可以重复投资的次数为N=D/T=12/28。其该次投资的收益率为K=360%,而年化收益率为Y=(1+K)^N-1=4.6^(12/28)-1≈92.33%,也就是接近于每年翻番。

      假如投资者乙第二次的长线投资是35个月亏损了68%,即最初投资的1万元本金2年另11个月后只剩下3200元。那么其本次投资的时间为T=35月,N=D/T=12/35,而收益率K=-68%,则年化收益率Y=(1+K)^N-1=0.32^(12/35)-1≈-32.34%,即接近于每年亏损1/3。

      再看一个超长期的投资者丙,假设他投资1万元买入的股票26年后增值了159倍至160万元。那么其该次投资中T=26年,N=D/T =1/26,收益率K=15900%,而年化收益率Y=(1+K)^N-1=160^(1/26)-1=21.55%,也就是说其投资水平与另一个一年赚21.55%的投资者相当。

      假设投资者丙最初买入的另一只股票18.3年后只剩下5%,即一万元本金亏损到只剩500元,那么该次投资中T=18.3年,N=D/T=1/18.3,收益率K=-95%,而年化收益率则为:Y=(1+K)^N-1=0.05^(1/18.3)-1≈-15.1%。即相当于每年亏损了本金的15.1%。

      最后再来看一个权证或期货等市场上每天可做多次T+0交易的投资者丁。假设该市场一天交易4小时,一年的有效交易时间为D=250日×4小时/天×60分钟/小时=60000分钟。假设他某天某时某刻投资1万元开仓,15分钟后平仓赚了108元。那么该次交易中T=15分钟,N=D/T=60000/15=4000,收益率K=108/10000=1.08%,则年化收益率为Y=(1+K)^N-1=1.0108^4000-1≈4.58×10^18!既相当于一年赚458亿亿倍! 由此可知,交易时间越短的话,即使单次收益的绝对收益很小,但年化收益率都非常非常大,往往变成一个天文数字!而假如他另一次交易中37分钟1万元本金亏损了76元的话,则该次T=37分钟,N=D/T =60000/37≈1621.62,收益率K=-0.76%,故年化收益率为Y=(1+K)^N-1=0.9924^1621.62-1≈0-1=-100%。

      对于多次投资的情况又如何计算呢?其实是一样的。假设投资人用本金C开始,连续进行了n次投资,那么其第i次(i=1~n)投资的情况与上述的单次投资完全一样,具体可表示为:第i次投资的期初本金为Ci,期末市值为Vi,所耗时间为Ti,该次投资的净收益为Pi=Vi-Ci,其收益率为Ki=Pi/Ci=(Vi-Ci)/Ci=Vi/Ci-1。在没有追加或减少投资资金的情况下,显然每次投资的期末市值等于下一次投资的期初本金,即Vi=Ci+1。而第一次投资的本金为C1=C。全部n次投资完成后,其净收益P等于每次投资的收益总和即P=∑Pi,投资时间等于每次投资的时间总和即 T=∑Ti,而投资收益K =∏(Ki+1)-1。然后将全部n次投资的结果看作一次投资,使用上面介绍的一次性投资的计算方法,即可简单地计算出该段时间全部n次投资的年化收益率。

      举例来说吧,假设投资人最初投资1万元本金,第1次3个月赚了50%,帐户增值至1.5万元;紧接着第二次两个月亏损了40%帐户缩水至0.9万元;然后马上第三次八个月赚了120%,帐户增值至1.98万元。则总的来看,投资人最初的1万元经过13个月后增值至1.98万元,其净收益为P=0.98万元,收益率为K=98%,年化收益率为Y=(1+K)^N-1=1.98^(12/13)-1≈87.87%。请注意这里每一次的投资净收益分别为0.5万元,-0.6万元和1.08万元,其总收益即为三者之和0.98万元。与此同时,三次的收益率分别为50%,-40%和120%,其总的收益率为K=∏(Ki+1)-1=1.5×0.6×2.2-1=98%。也就是说在既不追加也不减少本金的情况下,将多次投资的总和全部看成一次投资来计算,其结果与单独计算每一次投资后再合成没有任何差别,当然相比之下前者就是非常简单的方法了!

      上述例子中,如果三次投资并不是连续的,中间有资金空闲的情况,比如说第一次卖出后空仓了3.7个月,期间收获税后利息18.62元,而第二次投资后在第三次投资前又空仓了2.5个月,期间收获税后利息7.55元,又该如何计算呢?!看起来很复杂,其实非常简单!完全可以把两次空仓当作另两次存银行赚取活期利息的投资,这样一来,加上上述的3次投资,不就变成了连续的5次投资了吗?总的来说,不就是1万元本金经过19.2个月(13+3.7+2.5=19.2)后增值到19826.17元吗?这样收益率K=98.2617%,而年化收益率Y=(1+K)^N-1 =1.982617^(12/19.2)-1 ≈53.38%。

      其实即使中间没有利息,比如说将钱免息借给朋友一段时间再收回来,也都是一样的。总之,只要将一段考察时间内的总收益K和时间T带入公司公式Y=(1+K)^N-1=(1+K)^(D/T)-1即可。

      在投资本金变动的情况下,又如何来计算呢?开放式基金就是个典型的例子,受客户的申购或赎回影响其投资资金量每天不断地发生变动。这时候虽然最终的净收益必然也等于每一次的净收益之和即P=∑Pi,投资时间等于连续每期投资的时间之和即T=∑Ti。但由于不断追加或减少投资本金,造成每一次的期末市值并不等于下一次的期初本金即Vi≠Ci+1。这种情况下,便有两种方法来计算年化收益率,第一种是几何平均的方法,即先计算连续每期的收益率Ki,再根据总的收益率K=∏(Ki+1)-1计算出总收益率K,再代入公式Y=(1+K)^N-1=(1+K)^(D/T)-1计算即可。在本金大幅度变动的情况下,这种办法可以做到公平而精确地考察和比较投资者的收益水平。而在本金变动幅度不是很大的情况下,直接采用期初的本金C和总的净收益P代入公式Y=(V/C)^N-1=(V/C)^(D/T)-1计算即可,其实质是将其简化为没有本金变动的情况。

      最后再总结一下定量的公式:投资人投入本金C于市场,经过时间T后其市值变为V,则该次投资中:

      1、收益为:P=V-C

      2、收益率为:K=P/C=(V-C)/C=V/C-1

      3、年化收益率为:  ⑴.Y=(1+K)^N-1=(1+K)^(D/T)-1 或   ⑵.Y=(V/C)^N-1=(V/C)^(D/T)-1   其中N=D/T表示投资人一年内重复投资的次数。D表示一年的有效投资时间,对银行存款、   票据、债券等D=360日,对于股票、期货等市场   D=250日,对于房地产和实业等D=365日。

      4、在连续多期投资的情况下,Y=(1+K)N-1=(1+K)D/T-1   其中:K=∏(Ki+1)-1,T=∑Ti。



    展开全文
  • 理财数学课之收益率

    2016-07-06 14:18:00
    就是把当前的收益,比如日收益率、周收益率、月收益率,换算成年收益率来计算,是一种理论收益,并非投资者能真正取得的。 那么,问题来了!某产品只告诉月收益率怎样最快速度转换成年收益率呢? 年收益率=月收益率...
  • p2p年化收益率

    2016-03-29 18:08:17
    年化收益的计算公式是:年化收益=本金×年化收益率×投资天数/365。 年化收益率是一种理论收益率,并不是真正的已取得的收益率。打一个比方,君融贷的一个理财项目,三个期限(以90天计算),年化收益率为12%,...
  • 拍拍贷只有一个利率,加上每个都有还款和再次投入,年化收益率计算就比较糊涂。我写了一个简单的excel,推算了一下理想状态下的年化收益率。 前提:每还款额的公式 每期还款额= (借款金额*利率) * power(1+...
  • 如何计算租金回报

    千次阅读 2018-08-21 13:30:37
    这里有介绍房地产投资分析的三种方法,可以比较科学地计算出投资买房的收益率,消费者不妨试试。 方法一:租金回报率分析法 公式:(税后租金-每物业管理费)×12/购买房屋总价 这种方法算出的比值越大,就...
  • 货币基金收益

    2017-07-06 10:59:53
    在不同的收益结转方式下,七日年化收益率计算公式也应有所不同。 目前货币市场基金存在两种收益结转方式: 一是“日日分红,按结转”,相当于日日单利,月月复利。 二是“日日分红,按日结转”,相当于日日复利。 ...
  • 只根据股息率的计算公式来计算排名,无人工参与的过程,所以并不能对未来的分红做预测。 银亿股份(SZ000981)- 滚动年化股息收益率:23.1% - 滚动市盈率PE:0.75 - 滚动市净率PB:0.75 -汽车零配件-银亿股份(SZ...
  • ​仅根据最新的市盈率计算公式进行排名,无法对未来的业绩做出预测。 方大集团(SZ000055) - 滚动市盈率PE:2.59 - 滚动市净率PB:1.16 - 滚动年化股息收益率:3.91% - 建筑产品 方大集团(SZ000055)的历史市盈率走势...
  • ​仅根据最新的市盈率计算公式进行排名,无法对未来的业绩做出预测。 方大集团(SZ000055) - 滚动市盈率PE:2.32 - 滚动市净率PB:1.04 - 滚动年化股息收益率:4.37% -建筑产品方大集团(SZ000055)的历史市盈率走势图...
  • ​仅根据最新的市盈率计算公式进行排名,无法对未来的业绩做出预测。 方大集团(SZ000055) - 滚动市盈率PE:2.68 - 滚动市净率PB:1.2 - 滚动年化股息收益率:3.78% - 建筑产品 方大集团(SZ000055)的历史市盈率走势...
  • 仅根据最新的市盈率计算公式进行排名,无法对未来的业绩做出预测。 新钢股份(SH600782) - 滚动市盈率PE:3.87 - 滚动市净率PB:1.29 - 滚动年化股息收益率:1.31% - 钢铁 - 新钢股份(SH600782)的历史市盈率走势图 ...
  • 仅根据最新的市盈率计算公式进行排名,无法对未来的业绩做出预测。 深康佳A(SZ000016) - 滚动市盈率PE:2.51 - 滚动市净率PB:1.68 - 滚动年化股息收益率:2.9% - - - 深康佳A(SZ000016)的历史市盈率走势图 华菱...
  • ​仅根据最新的市盈率计算公式进行排名,无法对未来的业绩做出预测。 方大集团(SZ000055) - 滚动市盈率PE:2.53 - 滚动市净率PB:1.13 - 滚动年化股息收益率:4.01% - 建筑产品 方大集团(SZ000055)的历史市盈...
  • 3.5.6 EOMONTH——计算从指定日期向前或向后几个后的那个最后一天的日期 140 3.5.7 NETWORKDAYS——计算日期间的所有工作日数 141 3.5.8 NETWORKDAYS.INTL——计算日期间的所有工作日数,使用参数指明周末的...
  • 无套利区间的计算:其中包含期货理论价格的计算 首先, 无套利区间上界=期货理论价格+总交易成本;...垂直套利:垂直套利中的最大风险、最大收益及盈亏平衡点的计算 本类计算中主要涉及到的变量为:高
  • 市盈

    千次阅读 2011-10-09 15:45:32
    市盈 ...市盈指在一个考察期(通常为12个的时间)内,股票的价格和每股收益的比例。投资者通常利用该比例值估量某股票的投资价值,或者用该指标在不同公司的股票之间进行比较。“P/E Ratio”表
  • 记学习量化投资的两个

    千次阅读 2018-09-27 22:23:56
    开头先说好,这篇文章算是个广告 以上三张图是我目前用的参数跑的EOS品种的回测数据...这几个指标的计算公式列在这里: 年化收益率:(账户最终价值/账户初始价值)^(365/回测期间总天数)-1 上涨概率...
  • 互金年化利率相关

    2018-03-17 11:15:58
    IRR年化利率内部收益率公式IRRIRR...结果估计这个是用来矫正数据的就是精确度空着就行 IRR虽然能够计算收益率,但是有个缺点就是时间间隔必须相同,以年为单位、为单位、周为单位都可以,但是要记得乘以对应的周...
  • 实习总结-gm智投

    2019-05-28 18:52:14
    这是到gm实习的第三个了,这个我的岗位是python...计算公式如下: 年化收益: 〖(1+第一天日收益率)(1+第二天日收益率)…*(1+当前天日收益率))〗^(252/5)- 1 年化标准差: 日收益率的标准差×√2...
  • 理解最大回撤及Python实现

    千次阅读 2019-12-12 17:29:04
    最大回撤率,是指统计周期内的最大产品净值的时点往后推,当产品净值回落到最低点时,产品收益率的回撤幅度。 计算公式 DrawDown=maxDt−Dt+1Dt DrawDown = max \frac{D_t-D_{t+1}}{D_t} DrawDown=maxDt​Dt​−Dt...
  • 股票估值方法

    2020-09-29 17:26:00
    1.周期性证券行业,东方财富:净资产收益率估值法 2.PEG估值法,华东医药 PEG指标(市盈率相对盈利增长比率)是用公司的市盈率除以公司的盈利增长速度。计算公式是: PEG=PE/(企业年盈利增长率*100) 从东方财富获取...
  • 初识Python

    2014-07-21 16:56:00
    看了一点Python的知识点,写了一段代码来加深理解: ...print ('计算公式:M=12a(1+x)[-1+(1+x)^n]/x') print ('M:预期收益') print ('a:每定投金额') print ('x:一年收益率') print ('n:定投期数(公...

空空如也

空空如也

1 2 3
收藏数 48
精华内容 19
关键字:

月收益率计算公式