Ethereum 'dollar auction' contract - win ether, no pyramids or ponzi schemes

etherauctionetherauction Member Posts: 3
I've written an Ethereum implementation of the 'Dollar auction'. Players bid for a prize in Ether, with the top bidder taking home the full amount. The catch: both the top and second bidders have to pay. Don't be the second bidder!

The first auction is for 5 ether.

Auctions run for 24 hours, after which the winner gets paid out, and the top two bids are rolled over to start a new auction, less a 10% fee paid out to the seller who put up the initial stake. Payout is triggered by the first bid in a new auction, or by anyone calling endAuction. Unlike pyramid schemes, there's no first-mover advantage; you don't have to get in early to have a chance.

To play, send your bid to 0x6fd93c524553e05b3a1ac9291bde505d37252dfd.

As of posting, there are no bids, meaning you can take home a cool 5 ether for a bid of just a few finney.

It's important to note, of course, that like all Ethereum games, this is zero-sum; it's not generating value from anywhere. Some people will come out ahead, and some behind. You may walk away with my 5 ether for a bargain, or you may not.

The full source of the contract, and the current state including top bidders and bid amounts can be seen here. Or, you can add the contract to your wallet by importing the interface:
[{
        "constant": true,
        "inputs": [],
        "name": "seller",
        "outputs": [{
                "name": "",
                "type": "address"
        }],
        "type": "function"
}, {
        "constant": true,
        "inputs": [],
        "name": "auctionValue",
        "outputs": [{
                "name": "",
                "type": "uint256"
        }],
        "type": "function"
}, {
        "constant": false,
        "inputs": [],
        "name": "bid",
        "outputs": [],
        "type": "function"
}, {
        "constant": true,
        "inputs": [],
        "name": "highBidder",
        "outputs": [{
                "name": "",
                "type": "address"
        }],
        "type": "function"
}, {
        "constant": false,
        "inputs": [],
        "name": "acceptTransfer",
        "outputs": [],
        "type": "function"
}, {
        "constant": true,
        "inputs": [],
        "name": "secondBidder",
        "outputs": [{
                "name": "",
                "type": "address"
        }],
        "type": "function"
}, {
        "constant": true,
        "inputs": [],
        "name": "expiresAt",
        "outputs": [{
                "name": "",
                "type": "uint256"
        }],
        "type": "function"
}, {
        "constant": true,
        "inputs": [],
        "name": "secondBid",
        "outputs": [{
                "name": "",
                "type": "uint256"
        }],
        "type": "function"
}, {
        "constant": true,
        "inputs": [],
        "name": "highBid",
        "outputs": [{
                "name": "",
                "type": "uint256"
        }],
        "type": "function"
}, {
        "constant": false,
        "inputs": [],
        "name": "lastAuction",
        "outputs": [],
        "type": "function"
}, {
        "constant": false,
        "inputs": [{
                "name": "recipient",
                "type": "address"
        }],
        "name": "transferOwnership",
        "outputs": [],
        "type": "function"
}, {
        "constant": false,
        "inputs": [],
        "name": "endAuction",
        "outputs": [],
        "type": "function"
}, {
        "inputs": [{
                "name": "_duration",
                "type": "uint256"
        }],
        "type": "constructor"
}]

Comments

Sign In or Register to comment.