Comments (5)
There are multiple date types (for balance, for interest, for exchange rate, for entry), and they are reported in different ways and don't always match. There is not one date that can be used. Also, the time-of-day component is often missing (so we pretend the mutation took place at midnight GMT but that's not accurate, we should say we know it took place some time between midnight am on the day and midnight am the next day).
from money-pane.
Another (often more reliable) way to identify mutations is by looking at the log order. Example:
Alice reports:
- 1 January Alice -> Bob 1 EUR
- 15 January Alice -> Bob 15 EUR
- 31 January Alice -> Bob 31 EUR
Bob reports:
- 1 January Alice -> Bob 1 EUR
- 16 January Alice -> Bob 15 EUR
- 31 January Alice -> Bob 31 EUR
They both report the same ordered list of 3 transactions for January, so we can link them based on "previous" and "next". So then you can peg a skewed transaction to the last correct one. But then what happens if every transaction is skewed? And the start and end date/time would then also not be reliable.
from money-pane.
heuristic:
If:
- there is a matched chunk
- there is an adjacent floating departure and a floating arrival, and the amount/unit match
- the date skew is at most 1 day
Then use the earliest date and merge.
from money-pane.
i'll start with implementing this in the forward direction
from money-pane.
and maybe only if to.date is 24 hours after from.date.
from money-pane.
Related Issues (20)
- Look at description to better match look-alike transaction
- Align parsers and separate out implied purchase code HOT 6
- add hours admin
- Track equity HOT 3
- Show earnings from 402 paywalls HOT 2
- MultiAccountView
- Help Solid users to on-board Web Monetization as a consumer HOT 5
- Help Solid users to on-board Web Monetization as a creator HOT 3
- Prioritize between development tracks
- Sharding the world ledger HOT 10
- Book date vs Value date HOT 4
- Test matching Departures to Arrivals
- Link creditcard and paypal with ING-Bank
- Use AccountHistoryChunk#mixIn for printSubView HOT 2
- Replace `myIbans` concept
- Check out other open source personal finance software HOT 3
- chart cash and equity based on income and expenses HOT 2
- Tie the data formats together HOT 8
- Should AccountHistoryChunk contain an array of mutations?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from money-pane.