After #336 lands we'll have a first draft of a completely
broker-agnostic position tracking system that doesn't use the classic
FIFO style and further allows to offer custom dynamic pricing models
depending on user desire.
As a recap #336 introduces:
APIs for writing trades ledgers per backend broker
the initial idea is to allow writing "native" schema-ed/formatted trade entries to a .toml file and then expect the respective backend to provide (a) routine(s) to normalize to a common format for later piker processing into,
a new config-ledger file: pps.toml which is an incrementally updated data file containing the minimal set of information to allow a trader to immediately be able to reproduce any position for an instrument they are trading:
here's an example for micro-daq futes take from #336 :
Desired outstanding features: (some of these might get broken into new issues)
|-> most ledger content moved to #510 B)
correctness improvements, API ergonomics: => moved to #510
audit system moved to #510
paper engine support (more or less complete)
[x] support for the paper engine such that users can forward test
strats and keep progress in git and have a detailed clear-by-clear
record of algo behaviour
[x] we need to figure out a minimal trades ledger schema probably
based on an amalgamation of the best parts of other backends
(prolly landed in https://github.com/pikers/piker/pull/462 but who
knows)
=> more or less determined by Transaction type
CLI tools:
make a new issue for this and stuff from #489
CLI interface for all this: see #512
novel UI ideas:
make new issue for this and stuff from #489
[x] historical position line graphics on charts which show breakeven
price changes overlayed with actual underlyings, aka pp liftetime
"lines" more or less as super simple FSP style graphics that show the
beginning, changes, and end to a given pp such that users can easily
see past trades and their state changes on top of historical data
**=> see #515
Docs for it all:
new issue for this ..also see #512
[x] i'm thinking a new subpackage piker.ledger or positioning
or just .pps? and stick docs right in there?
landed as part of #489
After #336 lands we'll have a first draft of a completely broker-agnostic position tracking system that doesn't use the classic FIFO style and further allows to offer custom dynamic pricing models depending on user desire.
As a recap #336 introduces:
.toml
file and then expect the respective backend to provide (a) routine(s) to normalize to a common format for laterpiker
processing into,pps.toml
which is an incrementally updated data file containing the minimal set of information to allow a trader to immediately be able to reproduce any position for an instrument they are trading:Desired outstanding features: (some of these might get broken into new issues)
|-> most ledger content moved to #510 B)
paper engine support (more or less complete)
git
and have a detailed clear-by-clear record of algo behaviourTransaction
typeCLI tools:
make a new issue for this and stuff from #489
novel UI ideas:
make new issue for this and stuff from #489
Docs for it all:
new issue for this .. also see #512
piker.ledger
orpositioning
or just.pps
? and stick docs right in there? landed as part of #489