Skip to content

feat: Implement Dutch auction mechanism for fractional share sales #498

@nanaf6203-bit

Description

@nanaf6203-bit

Description

Currently fractional shares can only be sold at fixed prices via listings. Add a Dutch auction mechanism where the price decreases over time until a buyer accepts.

Acceptance Criteria

  • Add DutchAuction struct: token_id, shares, start_price, end_price, start_time, duration
  • Add create_dutch_auction(token_id, shares, start_price, end_price, duration) message
  • Add bid_dutch_auction(auction_id) message — buyer pays current descending price
  • Current price = start_price - (elapsed/duration) * (start_price - end_price)
  • Auction completes on first bid; remaining unsold shares returned to seller
  • Add cancel_dutch_auction(auction_id) message (seller only, before any bid)
  • Emit DutchAuctionCreated, DutchAuctionBid, DutchAuctionCancelled events
  • Add unit tests for all auction lifecycle states

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave programenhancementNew feature or request

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions