I’m also in need of that complete history, as I’m working on a script to get my full financial statement from Binance, with the (basic ?) goal of injecting that information into my accounting software.
And indeed, I also find the experience extremely frustrating : the data is spread throughout several API endpoints (which is acceptable), but some just cannot be obtained through the API currently. @Lutrix01 already mentionned several aspects, and you can add Large OTC Trades to the list (API for Large OTC trades).
But I’m starting to realize that the situation might be even worse than you think, let me explain.
I tried another strategy : exporting the full statement csv (the one you can only generate 4 times a month), along with the “Buy History” and the “Deposit History”, and trying to process that.
Again, this was a painful process because it doesn’t contain as much information as the API, for instance:
- the fees appear as separate records, so if you want to associate it with the corresponding trade, you have to correlate several records…
- … but the problem is, the file doesn’t have any kind of “id”
- you could use the timestamp to correlate the records instead, but it’s not terribly reliable
- the trade prices are not included, you have to compute them yourself… but again, you need to correlate the records first.
After some time I finally got to a point where I could start to work with a combination of the statement file and the API.
[Quick side note: I now use the statement to get my list of traded pairs, which narrows down the number of API calls I have to make]
But I’m still not to the point where I can obtain the same balances as what the web interface (or the balance in the /api/v3/account API) gives me.
When I compare the data I get from the statement and from the API, I can explain some differences (eg. data not available through the API), but I’m still trying to explain quite a few others.
All in all this is, again, a very frustrating exercise.
More than frustrating actually : a better word would be “concerning”, as I’m really not confortable with the idea of putting my money in a centralized institution, without any reliable means of getting at my financial data.