Module: Math::Finance::Benchmarks::AlgoScoring
- Defined in:
- lib/ruuuby/math/finance/benchmarks.rb
Overview
4 common main ways of bench-marking time-series based algorithms:
‣ | `historical back testing` | results ONLY to be used for providing a comparison benchmark
‣ | `out-of-sample testing` | reserve `10-20%` of overall data to be used for testing/benchmarking (note: separate to that of the learning & tuning/optimization data)
‣ | `walk-forward analysis` | an aggregate of multiple runs of `out-of-sample testing`
‣ | `real-time analysis` | compare to `walk-forward analysis` but emulate as many of the abnormalities/complexities of the real market as possible
‣ regardless of testing style, common fields to compare should be generated into an API-consumable summary/report
‣ | Expectancy | ‘((average $g00d)(win %) + (average $no-g00d)(lose %)) / (-average $no-g00d)`
broadly, separate to the reality that any particular statistical model/algorithm, there should be a natural weight/friction to the cost of any energy as an example, for a time-series algorithm, it can be externally scored against such attributes:
‣ `specific`
‣ `measurable`
‣ `attainable`
‣ `relevant`
‣ `time bound`
# TODO: t distribution tests (determine if datasets are statistically different) # TODO: handle ahead of time, generic algo to handle both stock splits and deconglomeration/synergism (ex: for both scenarios of market data and/or simulation ‘bots’)
TODO: temporary name, searching for math context