1. 12 Jul, 2019 3 commits
    • Aurélien Campéas's avatar
      history: extract revision computation · dd9f03124350
      Aurélien Campéas authored
      This opens the door to a new `revisions` parameter
      which allows to pass a precomputed revisions list.
      dd9f03124350
    • Aurélien Campéas's avatar
      staircase: use a cache of the history to speed up the computation · 35770d059ad9
      Aurélien Campéas authored
      We introduce a generic `historycache` providing
      `get` and `staircase` methods.
      
      The `historycache` object embeds the output of a call to `history` for
      further use.
      
      
      Performance implications:
      
      correctness:
      DELTA all value dates 1.174530267715454
      DELTA 1 day  0.05773115158081055
      
      historycache:
      DELTA all value dates 0.5080251693725586
      DELTA 1 day  0.04896068572998047
      
      On the whole horizon we get a nice speed up (> 100%) and even the one
      day horizon gets slightly faster. This is good.
      35770d059ad9
    • Aurélien Campéas's avatar
      staircase: make it simpler · 349c870faa73
      Aurélien Campéas authored
      We get the base dates from the current series value dates.
      For each of those we query one point, then concatenate
      the result.
      
      Conceptually much simpler to grasp.
      Bonus side effect: staircase discrepencies of formula vs alias
      extensions have disappeared.
      
      Performance implications:
      
      base:
      DELTA all value dates 0.9304628372192383
      DELTA 1 day  0.10948061943054199
      
      correctness:
      DELTA all value dates 1.174530267715454
      DELTA 1 day  0.05773115158081055
      
      So on the whole horizon we are a tad slower but there is an
      interesting speedup already in a well-bounded case. This is not bad.
      349c870faa73
  2. 11 Jul, 2019 3 commits
  3. 10 Jul, 2019 1 commit
  4. 09 Jul, 2019 1 commit
  5. 03 Jul, 2019 1 commit
  6. 13 Jun, 2019 5 commits
  7. 12 Jun, 2019 1 commit
  8. 05 Jun, 2019 5 commits
  9. 24 May, 2019 4 commits
  10. 23 May, 2019 5 commits
  11. 21 May, 2019 1 commit
  12. 20 May, 2019 8 commits
  13. 17 May, 2019 1 commit
  14. 13 May, 2019 1 commit