3 ms·
This seems far more advanced than usual for Bitcoin. Nice! I have little insight into the security of your software, but I hope you have also considered the pe
by JoachimSchipper 15y ago
This seems far more advanced than usual for Bitcoin. Nice!
I have little insight into the security of your software, but I hope you have also considered the peculiarities of Bitcoin. To name just one thing that would be far harder in a normal market: open a Bitcoinica account, deposit $10 000, buy $50 000 in Bitcoin, sell BTC really expensively at Mt Gox as the system frantically tries to rebalance. Given the volatility of BTC, this may be profitable even if[1] you subsequently abandon the Bitcoinica account (which is likely to hold $-40 000 in dollars and less than $40 000 in BTC at un-spiked prices...)
[1] EDIT: Actually, it's only profitable if you can get the Bitcoinica account into the red. But given enough ability to move the market, that's definitely possible.
- zhoutong 15y agoThanks for your wonderful suggestion! Honestly speaking, I haven't considered this because at first, it's hard to find anyone willing and able to deposit $10,000 (Mt. Gox limits withdrawals, including redeemable codes. Can be lifted though.) Even if that happens in reality, I have already designed some counter-measures: - The system will automatically break large orders down to 50 BTC increments in a chain. Execution of new orders in the chain will require validation of status of previous rebalance process. - Limit orders won't be executed further, because the price must increase. - Market orders will be executed at higher and higher prices, and due to low liquidity, the spread will be larger too. - The user will run out of margin very soon. Since I mention that Bitcoinica guarantees liquidity, measures like this must be implemented. Hopefully they are useful to counter malicious trading attempts too. I'll think about this in detail though. Will further refine my algorithms before the launch of Trading API (which is very dangerous if the algorithms are problematic). Edit: line breaks
- JoachimSchipper 15y agoWell, wonderful suggestion - I'm trying to break your scheme for my own amusement. ;-) Note that the attack works fine if the system allows me to keep buying BTC at, say, Mt Gox' price plus 10%. (For values of "works fine" which handwave a lot of practical issues, like paying you untraceably and making sure that I don't get undercut at Mt Gox too often.) Maybe you should switch to 1:1 leverage for all accounts once the total balance goes over $1000 until you've had some time to think this kind of thing through? EDIT: you also want a security@ account and a PGP key. I'm also happy to remove this discussion if you'd prefer that; I arguably shouldn't have posted the first post publicly.
- zhoutong 15y agoThanks for that! Really. I will consider this and focus on my algorithm design further. I don't mind if you leave the discussion here. Hiding a problem is never the solution. :-)
- nitrogen 15y agoThanks for posting publicly. It helps third parties to consider attacks to their own software that may not have occurred to them.
- deleted 15y ago[deleted]