|
From: Pelle B. <pe...@ve...> - 2004-05-20 15:22:41
|
In a way. The Currency Controller verifies balances and issues receipts. The Transactions that it handles are uni directional or in case of exchange transactions bidirectional. (I exchange 100 Bux for 4 shoes). The Distribution Controller distributes an amount from one party proportionally to all the owners of an asset. It still relies on the Currency Controller for each transfer to each individual account holder. The process would work like this: Juan has issued a micro bond via NeuClear. The server hosting his Currency Controller also has a distribution controller. The bond is for $1000 and there are 3 owners: * Mibanco SA owns %50 * Luis owns %30 * Leticia owns %20 Juan has agreed to pay %10 annual interest on the loan. Lets just say for the sake of simplicity that he pays the interest once a year. Also in this example we aren't worrying about paying back the principal (the full amount) just the interest. At the end of year 1. Juan has to pay $100 to his bond holders. He sends a DistributionOrder to the Distribution Controller. This contains the following: * A TransferOrder for $100 to the Distribution Controller * The effective distribution date. (May 20th, 2005) The Distribution Controller on receipt of this performs the following: 1. Send TransferOrder to Currency Controller for the currency (bux) for processing 2. If he doesnt receive a valid TransferReceipt he sends an error back to Juan 3. He asks the Currency Controller (or an Audit Controller) of the Bond for a list of holders including amount of holdings for May 20th, 2005. 4. For each holder he creates a TransferOrder from his management account to each holder: * $50 to MiBanco SA * $30 to Luis * $20 to Leticia 5. He sends all TransferOrders in a batch to the Currency Controller for Bux. 6. On receipt of all the TransferReceipts he creates a DistributionReceipt which embeds ALL the TransferReceipts and sends it to Juan, who now has a complete record of having paid the interest. With regards to the question about the Ledger. The Distribution Controller doesnt need to access the ledger directly. He just asks for a list of accounts in step 3. above. A more efficient implementation would have the Distribution Controller on the same database as the AuditController or Currency Controller. -P On Monday 17 May 2004 15:53, deneb shah wrote: > Hi > > i was seeing the Distribution controller > ---------------------------------------------- > The Distribution Controller distributes an amount of > an asset to all the holders of a specific asset. > > This is useful for paying interest, dividends etc to > all the owners of an asset. The distribution is > divided pro ratio between the holders > ---------------------------------------------- > > so i was goign thru the currency controller, what i > figured out was > > Currency controller would be controlling currency > between 2 parties whereas Distribution Controller > would be amongst many people for the same asset > > > So in order to transfer one would have to do the > following > -- get all the identities from the asset > -- distribute the asset over each and add it to them > > the question is > -- where would one be dedcuting the asset from > -- how would this transaction be added to the ledger > since here we have one identity transferring the asset > to many > > am i on the right track ? > regards > Deneb > > --- Pelle Braendgaard <pe...@ve...> wrote: > > Deneb, > > I'm replying to the mailing list so we can document > > the requirements > > publically. > > > > The requirements as far as I see it is to: > > - Record all transactions for various accounts > > across asset types > > - Provide balance information and more > > > > Lets take an example flow of transactions here: > > > > Payor Payee Asset Amount > > Bob Alice bux 100 > > Bob Carol shoes 1000 > > Alice Carol bux 50 > > Carol Alice shoes 5 > > > > We assume that Bob had an initial balance of 200 bux > > and 1000 shoes. > > Alice and Carol had zero initial balance of either > > asset. > > > > Now the bux asset controller maintains a ledger of > > transactions within it's > > own asset. So it has the following of the above > > transactions: > > > > Bob Alice bux 100 > > Alice Carol bux 50 > > > > So bux has the following balances afterwards: > > > > Bob: 100 > > Alice: 50 > > Carol : 50 > > > > The shoe asset controller similarly maintains a > > ledger of it's own > > transactions: > > > > Bob Carol shoes 1000 > > Carol Alice shoes 5 > > > > Shoe maintains the following balances afterwards: > > > > Bob: 0 > > Alice: 5 > > Carol : 9995 > > > > Bob could check his balances on each of the asset > > controllers there, but it > > would make more sense if he had a portfolio manager > > locally or on a server > > that he trusted to do the accounting for him. This > > is where the Portfolio > > Manager comes in. > > > > The Portfolio Manager listens to all of Bob's > > transactions regardless of asset > > and stores them in it's own ledger. So of the > > transactions above the > > Portfolio stores the following in the ledger: > > > > Bob Alice bux 100 > > Bob Carol shoes 1000 > > > > With this Bob can immediately see his balances in > > all of his assets as being: > > > > bux: 100 > > shoes: 0 > > > > The portfolio manager is not only important to end > > users, but also in mutual > > fund style applications, where all the funds > > holdings could be held on a > > public server. The share holders of the fund could > > go in and view in real > > time the holdings of the fund. > > > > > > Now, my original plan was to have a separate > > portfolio manager. However I just > > realized that with the recent changes to the > > LedgerController. There is no > > real need for it. The current Auditor will actually > > do the whole thing > > without changes. What we may need are some changes > > to the reports generated > > afterwards. I will have to have a look. > > > > So it seems like we dont actually need a separate > > PortfolioManager class after > > all. Which means we can go straight to the > > DistributionController. > > > > -P > > > > On Thursday 13 May 2004 23:32, you wrote: > > > Hi > > > > > > Potfolio manager > > > I was searching this class .. it doesnt seem to be > > > there yet > > > > > > Is portfolio like the place for all assets, so do > > > > we > > > > > have to create a db where all the assets would be > > > stored > > > > > > for micro payments > > > what assets would we have > > > like its diffcult for me to understand due to lack > > > > of > > > > > finance knowlesge > > > > > > can u explain me the proto-type so that i can > > > understand better like > > > -- what all are we trying to exchange > > > -- is it a pre-paid kinda micro payment or a > > > > normal > > > > > one > > > > > > > > > can u guide me about portfolio manager [which > > > > package > > > > > and responsibility ] > > > > > > regards > > > deneb > > > > -- > > http://talk.org + Live and direct from Panama > > http://neuclear.org + Clear it both ways with > > NeuClear > > ------------------------------------------------------- > > > This SF.Net email is sponsored by: SourceForge.net > > Broadband > > Sign-up now for SourceForge Broadband and get the > > fastest > > 6.0/768 connection for only $19.95/mo for the first > > 3 months! > > http://ads.osdn.com/?ad_id=2562&alloc_id=6184&op=click > > > _______________________________________________ > > Neuclear-develop mailing list > > Neu...@li... > > https://lists.sourceforge.net/lists/listinfo/neuclear-develop > > > > > > __________________________________ > Do you Yahoo!? > SBC Yahoo! - Internet access at a great low price. > http://promo.yahoo.com/sbc/ > > > ------------------------------------------------------- > This SF.Net email is sponsored by: SourceForge.net Broadband > Sign-up now for SourceForge Broadband and get the fastest > 6.0/768 connection for only $19.95/mo for the first 3 months! > http://ads.osdn.com/?ad_id=2562&alloc_id=6184&op=click > _______________________________________________ > Neuclear-develop mailing list > Neu...@li... > https://lists.sourceforge.net/lists/listinfo/neuclear-develop -- http://talk.org + Live and direct from Panama http://neuclear.org + Clear it both ways with NeuClear |