Add first account cumsize test; known to fail Bo
parent
494b3faa9b
commit
803f4a6354
File diff suppressed because it is too large
Load Diff
|
@ -8,7 +8,15 @@
|
|||
from pathlib import Path
|
||||
|
||||
from piker import config
|
||||
from piker.accounting import load_account
|
||||
from piker.accounting import (
|
||||
Account,
|
||||
calc,
|
||||
Position,
|
||||
TransactionLedger,
|
||||
open_trade_ledger,
|
||||
load_account,
|
||||
load_account_from_ledger,
|
||||
)
|
||||
|
||||
|
||||
def test_root_conf_networking_section(
|
||||
|
@ -34,3 +42,53 @@ def test_account_file_default_empty(
|
|||
assert not conf
|
||||
assert path.parent.is_dir()
|
||||
assert path.parent.name == 'accounting'
|
||||
|
||||
|
||||
def test_paper_ledger_position_calcs():
|
||||
broker: str = 'binance'
|
||||
acnt_name: str = 'paper'
|
||||
|
||||
accounts_path: Path = config.repodir() / 'tests' / '_inputs'
|
||||
|
||||
ldr: TransactionLedger
|
||||
with (
|
||||
open_trade_ledger(
|
||||
broker,
|
||||
acnt_name,
|
||||
allow_from_sync_code=True,
|
||||
|
||||
_fp=accounts_path,
|
||||
) as ldr,
|
||||
|
||||
# open `polars` acnt dfs Bo
|
||||
calc.open_ledger_dfs(
|
||||
broker,
|
||||
acnt_name,
|
||||
ledger=ldr,
|
||||
|
||||
_fp=accounts_path,
|
||||
|
||||
) as (dfs, ledger),
|
||||
|
||||
):
|
||||
acnt: Account = load_account_from_ledger(
|
||||
broker,
|
||||
acnt_name,
|
||||
ledger=ldr,
|
||||
_fp=accounts_path,
|
||||
)
|
||||
|
||||
# do manual checks on expected pos calcs based on input
|
||||
# ledger B)
|
||||
|
||||
# xrpusdt should have a net-zero size
|
||||
xrp: str = 'xrpusdt.spot.binance'
|
||||
pos: Position = acnt.pps[xrp]
|
||||
|
||||
# XXX: turns out our old dict-style-processing
|
||||
# get's this wrong i think due to dt-sorting..
|
||||
# lcum: float = pos.cumsize
|
||||
|
||||
df = dfs[xrp]
|
||||
assert df['cumsize'][-1] == 0
|
||||
assert pos.cumsize == 0
|
||||
|
|
Loading…
Reference in New Issue