You might have the initial balance displayed if the users need to know what it is prior to submitting their entry. If the users who compose these forms don't really care or don't need to know the balance before-hand, then why show it to them? If they are just having to enter journal ledger entries, then perhaps they don't care what the beginning balance is.
I would suggest having a server-side agent to do all of the math. That seems to me to be the best way to insure that all mathematical operations are handled by one entity - the server. Then each ledger entry only needs to have one field on it, the value of the transaction. Assuming that the database has a profile document, the balance could be stored on that and updated by the server agent.