Closed urbanskalar closed 2 years ago
Združevanje dividend na isti dan je eleganten način "hendlanja" dividend reversalov, tako da ta delček kode ni za odmet, bo pa potrebno naredit to malo pametneje, z direktnim matchanje reversala z ustrezno dividendo.
Uff, sedaj sem se malo poglobil in se strinjam, ta del kode res ni za odmet. Ampak bo pa kar zalogaj najti nek način matchanja reversal-ov. Poleg tega, glede na to da v mojem primeru niso povsod trgali davka, bi bilo na nek način potrebno matchati tudi witholding tax z pravo dividendo. Na žalost pa v poročilu res ne vidim nikakršnih skupnih imenovalcev, ki bi jih lahko uporabili pri matchanju.
Urban, nimam pri roki IB reporta, ki bi imel dividende + reversale + že odvedene davke v istem XMLju. Imaš mogoče ti?
Imam, a ti lahko nekam na privat pošljem? Nebi ravno tu objavljal.
Sem ustvaril privat repozitorij z reportom in te dodal za collaboratorja.
Hvala, vidim. Zadeva je kar zoprna. Trenutna ideja: za dividende in za davke posebej poiščeš vnose z negativnimi vrednostmi in pobiješ z enakimi pozitivnimi vrednostmi na isti dan. Ostalo enako kot sedaj. Bom skodiral in preizkusimo.
Ampak a so reversal vedno obratne pozitivnim? Ubistvu ne razumem čemu reversal sploh služi in zakaj jih sploh imamo na IB, če je na koncu vsota z pozitivno vrednostjo enaka 0?
@urbanskalar poizkusi https://github.com/jamsix/ib-edavki/pull/43 in sporoči če dela OK na tvojih podatkih.
Ne deluje še popolno. Vse mi je izračunalo pravilno razen te:
<Dividend>
<Date>2021-06-15</Date>
<PayerIdentificationNumber>980161470</PayerIdentificationNumber>
<PayerName>BARRICK GOLD CORP.</PayerName>
<PayerAddress>161 Bay Street, Toronto, Ontario M5J 2S1</PayerAddress>
<PayerCountry>CA</PayerCountry>
<Type>1</Type>
<Value>17.53</Value>
<ForeignTax>-4.38</ForeignTax>
<SourceCountry>CA</SourceCountry>
<ReliefStatement>6/01, 2b odstavek 10. člena</ReliefStatement>
</Dividend>
Pri tej dividendi bi vrednost ForeignTax morala biti 0. Spodnja tabela mi je bila poslana s strani fursa in prikazuje vrednosti ki sem jih oddal v napovedi ter pravilne vrednosti.
OK, vidim. Težava je, da sta na isti dan dve dividendi (Ordinary Dividend in Return of Capital), pri čemer je obdavčena samo Ordinary Dividend. Prav tako je na ta dan samo en vnos za davek, ki pa nima nobene reference na to na katero od dveh dividend se nanaša.
Takole na pogled je edina varianta, da se matcha prvi del stringa description
parametra:
description="GOLD(CA0679011084) CASH DIVIDEND USD 0.09 PER SHARE - CA TAX"
description="GOLD(CA0679011084) CASH DIVIDEND USD 0.140505 PER SHARE (Return of Capital)"
description="GOLD(CA0679011084) CASH DIVIDEND USD 0.09 PER SHARE (Ordinary Dividend)"
... ni najbolj elegantno, pa spet ugibamo, da je prvi del stringa pri dividendi in pri davki vedno enak.
@urbanskalar lahko poskusiš z https://github.com/jamsix/ib-edavki/blob/div-tax-fix/ib_edavki.py
Sedaj dobim pravilne rezultate.
Zdravo
Danes sem od fursa prejel naslednji mail:
Predvidevam da bi se temu izognili če bi odstanili nasledji del kode.
Morda pa obstaja razlog da imamo to v kodi?