Back to the main design points...
P.S. I don't really want to delete my posts about language choices, as I think it is relevant and I put some effort into them but I agree to stop it so it doesn't dominate the discussion. I hope you will try to write modular layers/APIs (which might be difficult if under deadline pressure), but in any case it is your priorities that will dominate as you are the lead. The Unix design philosophy is you write your app with no GUI to begin with to be sure you've made the core functionality orthogonal.
Guys.... please delete your posts on the language debate, they detract from the thread and can be discussed in a PM or separate thread if you want it public.
Couldn't agree more, let's end this pissing match.
What pissing? We were discussing technical aspects of programming languages. Very interesting and relevant for those who understand.
8. What is the redeemable concept? Do you mean to say the long or short can close their position at any time without permission of the counter-party? How can that be fair?
Aside from margin calls, positions can only be closed by finding a buyer and trading out of your position. Fortunately the market is liquid and all BitUSD is fungible.
Thus the BitAsset isn't destroyed and isn't redeemed. So I still don't see where the redeemable concept comes in.
9. In the margin call, the BitAsset is destroyed, so what happens to the collateral of the counter-party which did not receive a margin call? If it goes to them, why are they forced to redeem their BitAsset prematurely? Wouldn't a better design be let the BitAsset remain for the counter-party? Also why does the redeemed money go to the dividend pool (for that BitAsset or all BitShares?) and not to counter-party, so that the counter-party gets some leverage?
When a short 'covers' their position they do so by BUYING the BitAsset on the market using the collateral. Thus some owner of BitUSD is now the proud owner of the some of the Bitshares held as collateral based upon the price. Any left-over collateral is returned to the owner of the short position.
I am not following this. I could try to guess what you mean by the somewhat ambiguous terminology ('cover', 'owner') you've used, but this will increase the verbosity of back and forth. How about an example?
There is the risk that the market value moves to more than 100% of one-side of the collateral before than the miner can issue the margin call. There is no default here, it is just the redeemed money is not as great as it should be. If the redeemed money was going to the counter-party instead of the dividend pool, then the counter-party would lose some real-time time-preference, but this isn't designed to a be a real-time trading system any way.
First of all, BitUSD is composed of 1000's of positions entered at different prices by different people.
Why you mention that extraneous info? How is that relevant? Are you implying a pooling of collateral?
The price would have to fall 50% in 5 minutes and even then there are no losses because the collateral would still be able to purchase the BitUSD at market price.
What if it falls 150% in 5 minutes?
Obviously the short positions would be entirely wiped out in such a rapid movement in price as they are forced to buy as much BitUSD as their collateral will allow and bid up the price in a short squeeze.
Why do they have to buy a BitUSD, who did they promise delivery to?
The long already has ownership of the BitUSD correct?
I am very much confused now.
Worst case outcome is that some people will end up with BitUSD with no backing at all and thus 0 interest.
I am totally lost now.
Fortunately, new BitUSD is always being created as new shorts / longs enter the game and the new BitUSD would be fungible with the old so only someone attempting to sell BitUSD in a very narrow window may face a discount to face value. Because market forces always push the price back toward parity, speculators would readily buy up BitUSD at a slight discount created during such an insane price move.
I am lacking basic understanding of the design in order to comprehend the private language you are using above.
11.... It is presumed that the market will try to maintain the market value of the BitAsset proportional to the price changes in its designated asset.... then the expiration period should be relatively short...
There is no reason to ever have expiration on longs (see above).
Then I don't see the pricing working as you expect. My understanding (perhaps wrong) is that probabilities for expectations on the price moves over the duration of the asset held have to symmetrical in order for the price to mirror the targeted asset. My prior explanation was more thorough.
Perhaps I am just missing something in the design which will give me an epiphany once I get it, so I reserve the judgment on whether I am correct or not. But I think I'm correct at this point in my understanding.
But couldn't a miner also exclude bid and asks, thus manipulating the market price? This appears to be a major flaw in the design.. I don't have idea for a solution yet.
A miner could exclude a new bid or ask in the most recent block, but would be unable to do anything about limit orders placed in prior blocks that were not filled.
Good point. Include also stop-loss orders, etc.
The miner will always have a slight advantage in picking which bids get into the block chain and thus how the price moves in the 5 minute window of the block they win.
If the volume of bid/ask is much lower than options outstanding, they could possibly offset the cost to sweep away the bid/ask with a gain from manipulating the options causing a margin call in that 5 minute window.
But in a given 1 hour window, there will be 12 different miners who win and they will have different goals with respect to which way they want the price to 'move' based upon their individual position (short or long). The reality is that the offers placed on the block chain are generally spread in a collar around the current bid ask and therefore the order book will be full on both sides of the trade at the start of mining. No single block would be able to budge that order book by more than the 'new bids/asks'. So margin calls will be based upon a wider bid/ask spread than the 'real-time market'. Most people who care about price fluctuation in time periods of less than 1 hour should be trading on an Open Transactions exchange that is funded with BitUSD / BitShares.
I am not following you. Does this invalidate my point above about relative volume? I think not.
I suspect that the small market advantage garnered by generating a block would further motivate miners and ultimately help secure the network. Of course, the reason why decentralizing the hashing algorithm is important is to keep a large percentage of the hash power in the hands of non-professional miners and thus limit the ability to control the market by any one actor.
You assume "small" but is that true. See above.
Why canceling bid/ask takes 24 hours when blockchain becomes secure after roughly 6 blocks, e.g. 60 minutes?
Any action that could be taken by a miner must wait for the 'chain reorg window' to pass. Bitcoin currently uses 100 blocks before miners can 'spend' their rewards because during a re-org
So 17 hours.
I don't understand why the blockchain takes 100 blocks to choose between competing forks. I thought that probability of competing forks beyond 6 blocks is exceedingly small?
, decisions of the miners based upon then-current prices are no longer valid.
You lost me again. I don't understand. What decisions? What "then-current prices"?
Writing in a clear, layman's language is very important.
If I cancel my order and then a re-org occurs, a miner in the reorg may have executed my order prior to the cancel.
Obviously, re-orgs are a risk for any trade executed by a miner and those that care about having instant spends should use the off-chain system to exchange and sign an atomic transaction that could survive a re-org.
Ok.
This is another example where the only bids/asks that will end up in the block chain are the 'open orders' / backlog that will only be executed if the price moves significantly (1% or so) in one direction or another.
You have thoughts going on in your brain that you are not writing down. Again I don't follow why that must be so.
This is typical for programmers (like us) though
Hate slowing down to do clear documentation right.
14. Dividends allow idle capital to not invest in mining, we want to maximally secure the blockchain.
We want the minimal security required to prevent chain forgeries and ensure things are decentralized. You don't go around paying for the MAXIMUM security for your house because after a while additional security has a marginal ROI.
The marginal-utility of blockchain security is a constant, and never declines
if the mischief that a 51% attack can do it irrecoverable or catastropic (or even less than 51% attack if more frequently manipulating bid/ask, which is why I suggested upthread you remove bid/ask resolution aggregation from the mining).
I am yet undecided if the potential mischief is so grave.
Also with CPU-only PoW, everyone can mine, so everyone can utilize their existing resource (computer) when it is idle (person is sleeping). So everyone can grab some of the debasement, proportional to the productive resources they bring to the system.
Dividends provide the following benefits that ultimately improve security of the network:
1) then encourage saving and value accumulation within the chain.
I provided links upthread that there is tension between saving and growth of the economy via investment at-risk. Saving isn't really a good thing in excess, as it is capital that is not applying any thinking, just sitting there dumb.
2) they create an incentive to bring the unwashed, greedy, masses such as Grandma, into the system because they can get a better ROI than their bank with a better risk profile.
3) having a relatively secure way to generate passive income will help make this go viral
I don't think so, because they get less than the debasement rate of the coin (as some goes to the miners). Unless fees and such will be so extensive, but then people will run from such an onerous coin.
People invest in Bitcoin for the capital gains and for the benefits of decentralized digital currencies. Conversative savers are not going to leave fiat because of interest rates. Heck they are fighting to get negative rates in Europe for the safety-- they pay the sovereign to borrow their money
4) increased adoption means more small time users, each of which can profitably mine with their CPU, and thus there will be more hash power in the network.
Yeah because they can earn coins for using their idle resource (computer). Has nothing to do with dividends. A society-wide dividend (without some additional justification) seems silly. We take debasement from ourselves and give it to ourselves again.
Thanks for all of your feedback, it is nice to see some deep conceptual thinkers picking through the paper and design.!
Yw. Thanks for replying. Hope I didn't offend. I like something easy-to-grasp.