黄金链表库
Last updated
Last updated
黄金链表定义了由一系列代表定价委托挂牌出让股份的卖单节点构成的链表,节点之间按出让价格“由低到高”正序排列。
投资人可调用特定接口发出定价定额的委托买单并支付以太坊作为对价,系统将按照“价格优先、时间优先"规则撮合,在委托有效期内的卖单中选择价格最低的与买单撮合,只要卖单价格小于等于买单即按卖单价格成交,成交的卖单会相应调减成交金额或全额从黄金链表中删除,直至买单金额耗尽,或再也找不到合适价格的卖单为止。若有余款,则系统会自动退回投资人在公司的以太坊账户,供投资人自主取回,这主要是为了防范重入攻击。
每个卖单对象都规定了委托有效期,一但有效期届满,系统会在下一次撮合中自动将过期卖单做撤单处理;委托人也可以在有效期届满后主动操作撤单,将特定卖单从挂牌黄金链表上撤掉。
挂牌发行的股份均可通过挂牌出让方式转让,而总发行额、发行最高限价、最低限价、摘牌交易价格等发行交易条件均可通过挂牌规则详细规定。
成交摘牌后,相关卖单将直接从黄金链表中删除,但系统将在event中保留摘牌成交的交易日志。
黄金链表主要由代表股权挂牌出让卖单的节点对象,及其按“节点编号->节点对象”构成的卖单节点映射链表。
prev
前一节点卖单编号。
next
后一节点卖单编号。
seqOfShare
卖单标的股份编号。
paid
卖单的实缴出资额。
price
卖单的出让价格。
expireDate
卖单委托有效期截止时点。
votingWeight
标的股份的表决权重。
参数对象主要用于跟踪记录小股东队列的头尾用户编号,以及一些汇总统计数据。
tail
小股东队列的尾结点用户编号。
head
小股东队列的头结点用户编号。
maxQtyOfMembers
公司股东人数上限。0-无限数量。
minVoteRatioOnChain
大股东表决权比重阈值。万分数,即500代表5%。
qtyOfSticks
独立小股东及小股东一致行动人集团总数量。
qtyOfBranches
独立大股东及大股东一致行动人集团总数量。
qtyOfMembers
股东总人数。
查询接口最能体现黄金链表在整个系统中的功能和用途,具体请见下表。
counter
获取卖单节点编号计数器当前值。
length
获取链表总长度,即所有卖单数量总和。
head
获取表头节点,即价格最低的卖单节点。
tail
获取表尾节点,即价格最高的卖单节点。
isNode
查询特定编号卖单是否存在。
getNode
获取特定编号卖单节点对象。
getSeqList
获取所有卖单编号列表。
getChain
获取所有卖单节点对象列表。