数字货币交易所结算精度问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
tosmq009
V2EX    数学

数字货币交易所结算精度问题

  •  
  •   tosmq009 2019-03-15 09:27:08 +08:00 21236 次点击
    这是一个创建于 2469 天前的主题,其中的信息可能已经有所发展或是发生改变。

    数字货币的最小单位是 1 乘 10 的负 8 次方,即 0.00000001,出现任何比小数点后 8 位小的则自动截取小数点后 8 位,不采用四舍五入的方法 交易所 MGD/BTC 这两种数字货币的交易 假设: 甲以 1 个 MGD=0.000494BTC 的价格购买 16000 个 MGD

    即买入下单: 价格(BTC)0.000494 数量( MGD ) 16000 预计成交额 7.904BTC ( 0.000494* 16000 ) 下单时,系统冻结 7.904 个 BTC 用于购买 16000 个 MDG, 这笔订单在撮合交易系统里分别与乙和丙完成成交 乙、价格 0.000494 数量 11057.9159 成交 5.4626104546 截取八位 5.46261045 丙、价格 0.000494 数量 4942.0841 成交 2.4413895454 截取八位 2.44138954

    则乙获得 5.46261045 个 BTC ;丙获得 2.44138954 个 BTC,双方共获得 7.90399999 而甲下单以后被冻结 7.904 个 BTC 并成功购买 16000 个 MGD 那么这 7.904-7.90399999=0.000000001 的误差如何来处理?

    我们的方法是算作交易所的收益,但是否有可能某一种交易的情况下,需要交易所补贴类似这样 0.00000001 的情况? 而且交易数据是用户可查的,对于甲来说,两次交易分别显示花出 5.46261045 个 BTC 和 2.44138954 个 BTC,那么甲是否会找交易所问他的 0.00000001 个 BTC 哪里去了。

    7 条回复    2019-03-15 16:06:37 +08:00
    justfindu
        1
    justfindu  
       2019-03-15 09:43:17 +08:00
    一般他们会使用长整数来做, 然后业务自己处理倍数
    tosmq009
        2
    tosmq009  
    OP
       2019-03-15 09:45:17 +08:00
    @justfindu 那最终展示给客户的时候,还是需要截取到 8 位的,这种情况是如何保证双方的利益呢?谢谢
    subpo
        3
    subpo  
       2019-03-15 09:47:47 +08:00
    实际 10 位,截取 8 位,剩余的不显示(但是记录下来),如果下次用户得到的货币可以补足,即可给用户提现
    即 数据库记录的精度要大于实际逻辑处理的精度
    leavic
        4
    leavic  
       2019-03-15 10:13:09 +08:00
    一般就当交易所收益了,这种碎币很多交易所都有,总有那么几毛钱是拿不出来的。
    tosmq009
        5
    tosmq009  
    OP
       2019-03-15 15:26:51 +08:00
    @leavic 这是有效粗暴的解决办法~~ good
    tosmq009
        6
    tosmq009  
    OP
       2019-03-15 15:27:31 +08:00
    @subpo 意思是 下次交易之后再补足 ,当前交易允许数字毛刺
    subpo
        7
    subpo  
       2019-03-15 16:06:37 +08:00
    @tosmq009 #6 数字并不是毛刺,你也可以在提现资产界面显示全部位数,但是只能提 8 位。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4422 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 04:02 PVG 12:02 LAX 20:02 JFK 23:02
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86