Skip to content

PizzaPickle - 고객과 PB를 연결시켜주는 온라인 화상 서비스 및 매매시스템의 백테스팅 서버

Notifications You must be signed in to change notification settings

PizzaPickle/Back-Testing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Back-Testing

PizzaPickle - 고객과 PB를 연결시켜주는 온라인 화상 서비스 및 매매시스템의 백테스팅 서버

요청 예시

start_from_latest_stock
false -> 입력한 start_date, end_date 기준
true -> 입력한 종목들의 가장 최근 상장일 기준

stock_list의 4번째 요소
false -> 국내
true -> 해외

국내 요청 예시

{
  "start_from_latest_stock": "false",
  "portfolio": {
    "stock_list": [
      ["000660", "하이닉스", 0.25, "false"],
      ["055550", "네이버", 0.25, "false"],
      ["005930", "삼성전자", 0.5, "false"]
    ],
    "balance": 1000000,
    "interval_month": 1,
    "start_date": "20100101",
    "end_date": "20221231"
  }
}

해외 요청 예시

{
  "start_from_latest_stock": "false",
  "portfolio": {
    "stock_list": [
      ["AAPL", "Apple", 0.25, "true"],
      ["NVDA", "NVIDIA", 0.25, "true"],
      ["TSLA", "Tesla", 0.5, "true"]
    ],
    "balance": 1000000,
    "interval_month": 1,
    "start_date": "20100101",
    "end_date": "20221231"
  }
}

자산군 통합 api

각 자산군의 백테스트 결과를 요청에 담아준다.

{
  "asset_groups": [
    {
      "name": "국내",
      "ratio": 0.6,
      "portfolio_result": {
        "backtest": {
          "2010-01-31": 0.999851,
          "2010-02-28": 0.958637,
          "2010-03-31": 1.086642,
          "2010-04-30": 1.142702,
          "2010-05-31": 1.037122,
          "2010-06-30": 1.048286,
          "2010-07-31": 1.06295,
          "2010-08-31": 0.99675,
          "2010-09-30": 1.01175,
          "2010-10-31": 0.999843,
          "2010-11-30": 1.06739,
          "2010-12-31": 1.20079,
          "2011-01-31": 1.273831,
          "2011-02-28": 1.206391,
          "2011-03-31": 1.258511,
          "2011-04-30": 1.27288,
          "2011-05-31": 1.222348,
          "2011-06-30": 1.134249,
          "2011-07-31": 1.136409,
          "2011-08-31": 0.979754,
          "2011-09-30": 1.059437,
          "2011-10-31": 1.175257,
          "2011-11-30": 1.177283,
          "2011-12-31": 1.189276,
          "2012-01-31": 1.316387,
          "2012-02-29": 1.405825,
          "2012-03-31": 1.440361,
          "2012-04-30": 1.456349,
          "2012-05-31": 1.286325,
          "2012-06-30": 1.304475,
          "2012-07-31": 1.308978,
          "2012-08-31": 1.255374,
          "2012-09-30": 1.357424,
          "2012-10-31": 1.364315,
          "2012-11-30": 1.383165,
          "2012-12-31": 1.499733,
          "2013-01-31": 1.462733,
          "2013-02-28": 1.555433,
          "2013-03-31": 1.558173,
          "2013-04-30": 1.548771,
          "2013-05-31": 1.610231,
          "2013-06-30": 1.466786,
          "2013-07-31": 1.417404,
          "2013-08-31": 1.479523,
          "2013-09-30": 1.52971,
          "2013-10-31": 1.62855,
          "2013-11-30": 1.671957,
          "2013-12-31": 1.641779,
          "2014-01-31": 1.583078,
          "2014-02-28": 1.626626,
          "2014-03-31": 1.618342,
          "2014-04-30": 1.647977,
          "2014-05-31": 1.744112,
          "2014-06-30": 1.733661,
          "2014-07-31": 1.76227,
          "2014-08-31": 1.69592,
          "2014-09-30": 1.641854,
          "2014-10-31": 1.705454,
          "2014-11-30": 1.736457,
          "2014-12-31": 1.72054,
          "2015-01-31": 1.74967,
          "2015-02-28": 1.72324,
          "2015-03-31": 1.753468,
          "2015-04-30": 1.761528,
          "2015-05-31": 1.71714,
          "2015-06-30": 1.616701,
          "2015-07-31": 1.519161,
          "2015-08-31": 1.422657,
          "2015-09-30": 1.449644,
          "2015-10-31": 1.600137,
          "2015-11-30": 1.541887,
          "2015-12-31": 1.500187,
          "2016-01-31": 1.384237,
          "2016-02-29": 1.427574,
          "2016-03-31": 1.51591,
          "2016-04-30": 1.488735,
          "2016-05-31": 1.507014,
          "2016-06-30": 1.620946,
          "2016-07-31": 1.730566,
          "2016-08-31": 1.812634,
          "2016-09-30": 1.835951,
          "2016-10-31": 1.909231,
          "2016-11-30": 1.994941,
          "2016-12-31": 2.059871,
          "2017-01-31": 2.265184,
          "2017-02-28": 2.175187,
          "2017-03-31": 2.295912,
          "2017-04-30": 2.441572,
          "2017-05-31": 2.499594,
          "2017-06-30": 2.681136,
          "2017-07-31": 2.742247,
          "2017-08-31": 2.699979,
          "2017-09-30": 2.955338,
          "2017-10-31": 3.058415,
          "2017-11-30": 2.862958,
          "2017-12-31": 2.878898,
          "2018-01-31": 2.87574,
          "2018-02-28": 2.743511,
          "2018-03-31": 2.822654,
          "2018-04-30": 2.990887,
          "2018-05-31": 2.932955,
          "2018-06-30": 2.749875,
          "2018-07-31": 2.746394,
          "2018-08-31": 2.792263,
          "2018-09-30": 2.677435,
          "2018-10-31": 2.481578,
          "2018-11-30": 2.458759,
          "2018-12-31": 2.267442,
          "2019-01-31": 2.661926,
          "2019-02-28": 2.603126,
          "2019-03-31": 2.603105,
          "2019-04-30": 2.709005,
          "2019-05-31": 2.504137,
          "2019-06-30": 2.683221,
          "2019-07-31": 2.680942,
          "2019-08-31": 2.601827,
          "2019-09-30": 2.808512,
          "2019-10-31": 2.857962,
          "2019-11-30": 2.864096,
          "2019-12-31": 3.131461,
          "2020-01-31": 3.067844,
          "2020-02-29": 2.833474,
          "2020-03-31": 2.551239,
          "2020-04-30": 2.659939,
          "2020-05-31": 2.655307,
          "2020-06-30": 2.707882,
          "2020-07-31": 2.856758,
          "2020-08-31": 2.686844,
          "2020-09-30": 2.820074,
          "2020-10-31": 2.816004,
          "2020-11-30": 3.261931,
          "2020-12-31": 3.783618,
          "2021-01-31": 3.793614,
          "2021-02-28": 4.009907,
          "2021-03-31": 4.055461,
          "2021-04-30": 4.095403,
          "2021-05-31": 4.126052,
          "2021-06-30": 4.090646,
          "2021-07-31": 3.879396,
          "2021-08-31": 3.778896,
          "2021-09-30": 3.724615,
          "2021-10-31": 3.567634,
          "2021-11-30": 3.611791,
          "2021-12-31": 3.970841,
          "2022-01-31": 3.803765,
          "2022-02-28": 3.814865,
          "2022-03-31": 3.770089,
          "2022-04-30": 3.6849,
          "2022-05-31": 3.668682,
          "2022-06-30": 3.115482,
          "2022-07-31": 3.265509,
          "2022-08-31": 3.218702,
          "2022-09-30": 2.875488,
          "2022-10-31": 3.107452,
          "2022-11-30": 3.238752,
          "2022-12-31": 2.908444
        },
        "sharpe_ratio": 0.28,
        "standard_deviation": 19.93,
        "annual_return": 0.09,
        "total_balance": 2908444.177099999,
        "mdd": -0.30308973323651756
      }
    },
    {
      "name": "해외",
      "ratio": 0.4,
      "portfolio_result": {
        "backtest": {
          "2010-01-31": 0.99985,
          "2010-02-28": 1.058736,
          "2010-03-31": 1.176049,
          "2010-04-30": 1.182117,
          "2010-05-31": 1.074147,
          "2010-06-30": 0.94215,
          "2010-07-31": 0.846323,
          "2010-08-31": 0.828176,
          "2010-09-30": 0.934232,
          "2010-10-31": 0.987847,
          "2010-11-30": 1.333503,
          "2010-12-31": 1.225117,
          "2011-01-31": 1.353055,
          "2011-02-28": 1.342502,
          "2011-03-31": 1.384659,
          "2011-04-30": 1.411605,
          "2011-05-31": 1.475925,
          "2011-06-30": 1.362871,
          "2011-07-31": 1.350798,
          "2011-08-31": 1.249582,
          "2011-09-30": 1.218831,
          "2011-10-31": 1.418831,
          "2011-11-30": 1.500755,
          "2011-12-31": 1.383701,
          "2012-01-31": 1.461375,
          "2012-02-29": 1.647327,
          "2012-03-31": 1.791349,
          "2012-04-30": 1.609736,
          "2012-05-31": 1.499213,
          "2012-06-30": 1.591408,
          "2012-07-31": 1.5028,
          "2012-08-31": 1.578868,
          "2012-09-30": 1.58158,
          "2012-10-31": 1.468165,
          "2012-11-30": 1.613083,
          "2012-12-31": 1.588259,
          "2013-01-31": 1.618936,
          "2013-02-28": 1.561867,
          "2013-03-31": 1.637071,
          "2013-04-30": 2.014964,
          "2013-05-31": 2.871668,
          "2013-06-30": 2.906464,
          "2013-07-31": 3.393142,
          "2013-08-31": 3.915574,
          "2013-09-30": 4.231784,
          "2013-10-31": 3.944414,
          "2013-11-30": 3.631013,
          "2013-12-31": 3.99475,
          "2014-01-31": 4.282326,
          "2014-02-28": 5.267283,
          "2014-03-31": 4.866487,
          "2014-04-30": 5.018876,
          "2014-05-31": 5.144464,
          "2014-06-30": 5.546831,
          "2014-07-31": 5.315485,
          "2014-08-31": 6.110419,
          "2014-09-30": 5.699382,
          "2014-10-31": 5.872879,
          "2014-11-30": 6.162331,
          "2014-12-31": 5.706294,
          "2015-01-31": 5.492185,
          "2015-02-28": 5.82417,
          "2015-03-31": 5.494447,
          "2015-04-30": 6.129611,
          "2015-05-31": 6.523397,
          "2015-06-30": 6.540084,
          "2015-07-31": 6.448204,
          "2015-08-31": 6.333091,
          "2015-09-30": 6.444134,
          "2015-10-31": 6.2836,
          "2015-11-30": 6.812108,
          "2015-12-31": 6.838856,
          "2016-01-31": 5.825907,
          "2016-02-29": 5.930517,
          "2016-03-31": 6.905536,
          "2016-04-30": 6.829993,
          "2016-05-31": 7.230848,
          "2016-06-30": 6.988494,
          "2016-07-31": 7.891374,
          "2016-08-31": 7.692188,
          "2016-09-30": 7.89719,
          "2016-10-31": 7.85948,
          "2016-11-30": 8.223217,
          "2016-12-31": 9.172776,
          "2017-01-31": 10.155997,
          "2017-02-28": 10.258773,
          "2017-03-31": 11.15204,
          "2017-04-30": 11.750847,
          "2017-05-31": 13.570769,
          "2017-06-30": 13.79547,
          "2017-07-31": 13.608939,
          "2017-08-31": 14.782635,
          "2017-09-30": 14.45881,
          "2017-10-31": 15.170612,
          "2017-11-30": 14.602653,
          "2017-12-31": 14.475529,
          "2018-01-31": 16.41426,
          "2018-02-28": 16.349087,
          "2018-03-31": 14.096965,
          "2018-04-30": 14.677051,
          "2018-05-31": 15.368188,
          "2018-06-30": 16.675642,
          "2018-07-31": 15.838381,
          "2018-08-31": 17.280967,
          "2018-09-30": 16.19451,
          "2018-10-31": 17.279375,
          "2018-11-30": 15.85544,
          "2018-12-31": 14.268826,
          "2019-01-31": 14.186804,
          "2019-02-28": 14.886198,
          "2019-03-31": 14.922449,
          "2019-04-30": 14.06522,
          "2019-05-31": 11.149565,
          "2019-06-30": 13.259024,
          "2019-07-31": 14.140638,
          "2019-08-31": 13.576104,
          "2019-09-30": 14.414579,
          "2019-10-31": 17.59382,
          "2019-11-30": 18.683006,
          "2019-12-31": 22.052463,
          "2020-01-31": 28.517456,
          "2020-02-29": 29.083473,
          "2020-03-31": 25.270244,
          "2020-04-30": 33.152137,
          "2020-05-31": 36.739235,
          "2020-06-30": 44.126145,
          "2020-07-31": 54.404666,
          "2020-08-31": 80.981511,
          "2020-09-30": 73.531155,
          "2020-10-31": 67.574218,
          "2020-11-30": 85.988077,
          "2020-12-31": 98.317062,
          "2021-01-31": 104.146764,
          "2021-02-28": 95.788041,
          "2021-03-31": 94.788676,
          "2021-04-30": 102.471897,
          "2021-05-31": 97.184309,
          "2021-06-30": 109.422227,
          "2021-07-31": 111.102247,
          "2021-08-31": 120.256708,
          "2021-09-30": 119.213656,
          "2021-10-31": 153.829994,
          "2021-11-30": 170.612568,
          "2021-12-31": 162.979761,
          "2022-01-31": 146.268472,
          "2022-02-28": 138.947814,
          "2022-03-31": 161.572443,
          "2022-04-30": 129.262611,
          "2022-05-31": 119.330596,
          "2022-06-30": 104.611967,
          "2022-07-31": 131.586402,
          "2022-08-31": 120.184015,
          "2022-09-30": 108.422432,
          "2022-10-31": 106.730599,
          "2022-11-30": 104.881442,
          "2022-12-31": 78.885954
        },
        "sharpe_ratio": 0.93,
        "standard_deviation": 40.01,
        "annual_return": 0.4,
        "total_balance": 78885954.12070945,
        "mdd": -0.5376310495484717
      }
    }
  ]
}

결과

{
  "integrated_portfolio": {
    "backtest": {
      "2010-01-31": 0.9998506,
      "2010-02-28": 0.9986766,
      "2010-03-31": 1.1224048,
      "2010-04-30": 1.158468,
      "2010-05-31": 1.051932,
      "2010-06-30": 1.0058316,
      "2010-07-31": 0.9762992000000001,
      "2010-08-31": 0.9293203999999999,
      "2010-09-30": 0.9807428,
      "2010-10-31": 0.9950446000000001,
      "2010-11-30": 1.1738352,
      "2010-12-31": 1.2105207999999998,
      "2011-01-31": 1.3055206,
      "2011-02-28": 1.2608354,
      "2011-03-31": 1.3089702,
      "2011-04-30": 1.32837,
      "2011-05-31": 1.3237788,
      "2011-06-30": 1.2256977999999998,
      "2011-07-31": 1.2221646,
      "2011-08-31": 1.0876852,
      "2011-09-30": 1.1231946,
      "2011-10-31": 1.2726866000000001,
      "2011-11-30": 1.3066718000000002,
      "2011-12-31": 1.2670460000000001,
      "2012-01-31": 1.3743821999999999,
      "2012-02-29": 1.5024258000000001,
      "2012-03-31": 1.5807562000000002,
      "2012-04-30": 1.5177038,
      "2012-05-31": 1.3714802,
      "2012-06-30": 1.4192482,
      "2012-07-31": 1.3865067999999998,
      "2012-08-31": 1.3847716,
      "2012-09-30": 1.4470863999999999,
      "2012-10-31": 1.4058549999999999,
      "2012-11-30": 1.4751322,
      "2012-12-31": 1.5351434,
      "2013-01-31": 1.5252142,
      "2013-02-28": 1.5580066000000001,
      "2013-03-31": 1.5897321999999998,
      "2013-04-30": 1.7352482,
      "2013-05-31": 2.1148058,
      "2013-06-30": 2.0426572,
      "2013-07-31": 2.2076992,
      "2013-08-31": 2.4539434,
      "2013-09-30": 2.6105396,
      "2013-10-31": 2.5548956,
      "2013-11-30": 2.4555794,
      "2013-12-31": 2.5829674000000002,
      "2014-01-31": 2.6627772000000003,
      "2014-02-28": 3.0828888,
      "2014-03-31": 2.9176,
      "2014-04-30": 2.9963366,
      "2014-05-31": 3.1042528000000003,
      "2014-06-30": 3.2589289999999997,
      "2014-07-31": 3.183556,
      "2014-08-31": 3.4617196000000003,
      "2014-09-30": 3.2648652,
      "2014-10-31": 3.3724240000000005,
      "2014-11-30": 3.5068066,
      "2014-12-31": 3.3148416,
      "2015-01-31": 3.246676,
      "2015-02-28": 3.363612,
      "2015-03-31": 3.2498595999999997,
      "2015-04-30": 3.5087612000000004,
      "2015-05-31": 3.6396428000000003,
      "2015-06-30": 3.5860542,
      "2015-07-31": 3.4907782,
      "2015-08-31": 3.3868305999999997,
      "2015-09-30": 3.4474400000000003,
      "2015-10-31": 3.4735222,
      "2015-11-30": 3.6499754000000006,
      "2015-12-31": 3.6356545999999996,
      "2016-01-31": 3.160905,
      "2016-02-29": 3.2287512,
      "2016-03-31": 3.6717604,
      "2016-04-30": 3.6252382,
      "2016-05-31": 3.7965476000000002,
      "2016-06-30": 3.7679652000000003,
      "2016-07-31": 4.1948892,
      "2016-08-31": 4.1644556,
      "2016-09-30": 4.2604466,
      "2016-10-31": 4.2893305999999995,
      "2016-11-30": 4.4862514000000004,
      "2016-12-31": 4.905033,
      "2017-01-31": 5.421509199999999,
      "2017-02-28": 5.4086214,
      "2017-03-31": 5.8383632,
      "2017-04-30": 6.1652819999999995,
      "2017-05-31": 6.928064,
      "2017-06-30": 7.1268696,
      "2017-07-31": 7.0889238,
      "2017-08-31": 7.5330414,
      "2017-09-30": 7.5567268,
      "2017-10-31": 7.9032938,
      "2017-11-30": 7.558836,
      "2017-12-31": 7.5175504,
      "2018-01-31": 8.291148,
      "2018-02-28": 8.185741400000001,
      "2018-03-31": 7.3323784000000005,
      "2018-04-30": 7.6653526,
      "2018-05-31": 7.9070482,
      "2018-06-30": 8.3201818,
      "2018-07-31": 7.983188800000001,
      "2018-08-31": 8.5877446,
      "2018-09-30": 8.084265,
      "2018-10-31": 8.400696800000002,
      "2018-11-30": 7.8174314,
      "2018-12-31": 7.067995600000001,
      "2019-01-31": 7.2718772000000005,
      "2019-02-28": 7.5163548,
      "2019-03-31": 7.530842600000001,
      "2019-04-30": 7.251491,
      "2019-05-31": 5.962308200000001,
      "2019-06-30": 6.9135422,
      "2019-07-31": 7.2648204000000005,
      "2019-08-31": 6.991537800000001,
      "2019-09-30": 7.4509388,
      "2019-10-31": 8.7523052,
      "2019-11-30": 9.19166,
      "2019-12-31": 10.6998618,
      "2020-01-31": 13.2476888,
      "2020-02-29": 13.333473600000001,
      "2020-03-31": 11.638841000000001,
      "2020-04-30": 14.856818200000003,
      "2020-05-31": 16.288878200000003,
      "2020-06-30": 19.2751872,
      "2020-07-31": 23.475921200000002,
      "2020-08-31": 34.004710800000005,
      "2020-09-30": 31.1045064,
      "2020-10-31": 28.7192896,
      "2020-11-30": 36.3523894,
      "2020-12-31": 41.59699560000001,
      "2021-01-31": 43.93487400000001,
      "2021-02-28": 40.721160600000005,
      "2021-03-31": 40.348746999999996,
      "2021-04-30": 43.4460006,
      "2021-05-31": 41.34935480000001,
      "2021-06-30": 46.223278400000005,
      "2021-07-31": 46.76853640000001,
      "2021-08-31": 50.3700208,
      "2021-09-30": 49.920231400000006,
      "2021-10-31": 63.672578,
      "2021-11-30": 70.41210180000002,
      "2021-12-31": 67.574409,
      "2022-01-31": 60.7896478,
      "2022-02-28": 57.8680446,
      "2022-03-31": 66.8910306,
      "2022-04-30": 53.9159844,
      "2022-05-31": 49.9334476,
      "2022-06-30": 43.714076000000006,
      "2022-07-31": 54.5938662,
      "2022-08-31": 50.00482720000001,
      "2022-09-30": 45.0942656,
      "2022-10-31": 44.5567108,
      "2022-11-30": 43.895828,
      "2022-12-31": 33.299448
    },
    "sharpe_ratio": 0.86,
    "standard_deviation": 32.83,
    "annual_return": 0.31,
    "mdd": -0.5270777728722764
  }
}

About

PizzaPickle - 고객과 PB를 연결시켜주는 온라인 화상 서비스 및 매매시스템의 백테스팅 서버

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages