zoukankan      html  css  js  c++  java
  • [ML] Daily Portfolio Statistics

    Let's you have $10000, and you inverst 4 stocks. ['SPY', 'IBM', 'XOM', 'GOOG']. The allocation is [0.4, 0.4, 0.1, 0.1] separately.  

    The way to calculate the daily porfolio is

    1. Normalize the price by devide price of first day.
    2. Nored * allocation
    3. * starting value
    4. Sum up each row

    After we can port value, the first thing we can calculate is the daily return.

    The important thing to remember that the first value of daily return is alwasy zero, so we need to remove the first value.

    daily_rets = daily_rets[1:]

    Four statics:

    1. Cumulative return:

      Is a just a measure of how much the value of the portfolio has go up from the beginning to the end.

    cum_ret = (port_val[-1] / port_val[0]) -1

    2. Average daily return:

      The mean value of daily return

    avg_daily_ret = daily_rets.mean()

    3. Standard deviation of odaily return:

    std_daily_ret = daily_rets.std()

    4. Sharp ratio:

      The idea for sharp ratio is to consider our return, or rewards in the context of risk. 

      All else being equal:

        Lower risk is better

        Higher return is better

      Also considers risk free rate of return, nowadays, risk free return is almost 0. (Put menoy into the bank has very low interests)

    Both stocks have similar volatility, so ABC is better due greater returns.

    Here both stocks have similar returns, but XYZ has lower volatility (risk).

     In this case, we actually do not have a clear picture of which stock is better!

    Calculate Shape ratio:

    Risk free value can be replace by:

    1. LIBOR

    2. 3mo T-Bill

    3. 0%

    Because risk free is so small, noramlly we can just drop it when calculate the sharp raito.

    IF we calcualte daily shape ratio: use K = srq(252), monly then srq(12)

  • 相关阅读:
    Silverlight 学习笔记(二)silverligth 界面布局
    (C#)WinForm窗体间传值
    软件开发所需要的十三个文档
    XP下安装SQL2000企业版本(转载)
    .net 框架下快速Web开发(一)——纠结的里程
    .net MVC 框架调试过程中,产生大量的临时文件
    认识NHitenate
    如何循序渐进向.Net架构师发展[转载]
    核桃煲鸡汤
    .NET获取客户端信息 (C#)
  • 原文地址:https://www.cnblogs.com/Answer1215/p/8304181.html
Copyright © 2011-2022 走看看