[转]BTC手续费计算,如何设置手续费
本文转自:https://blog.csdn.net/servletcome/article/details/81941334
首先BTC的交易手续费和交易金额是没有关系的。不要误认为交易的金额越大手续费越高;
BTC的手续费每个时间段是不一样的 它取决于你交易产生的字节数大小和当时交易池内的数据量多少;
字节数,字节数代表着你这笔交易打包的大小,单位是byte
字节数的计算公式是 input*148+34*out+10
以下图为例:
input的就是输入的地址数量红色部分 input=1
out就是输出的地址数量蓝色的部分 out=2
字节数大小就是黑色的部分 也就是计算呢公式 : 1*148+34*2+10=226
字节数我们计算出来了但是怎么算手续费呢?
手续费=字节数* X satoshis / byte
X的取值是我们自己设置的,那到底设置多少合适呢?
这个要根据当时交易池内的交易数量来定了,矿工优先打包字节费给的高的因此我们只要获取当时satoshis / byte是被优先打包的就可以;
下图为例:
红色部分代表satoshis / byte 和多少时间内被确认,我们选择最优的13satoshis / byte 那么我们最有可能的交易下一个区块就会被打包,相对的手续费也会变高;
查看地址: https://bitcoinfees.earn.com/
我很体贴的给你们发出API地址 : https://bitcoinfees.earn.com/api/v1/fees/recommended
{“fasterFee”:40,“halfHourFee”:20,“hourFee”:10}
fasterFee :最低费用(每个字节的satoshis),目前将导致最快的交易确认(通常为0到1块延迟)。最快确认
halfHourFee :最低费用(每个字节的satoshis)将在半小时内确认交易(概率为90%)。三个块内确认
hourFee :最低费用(每个字节的satoshis)将在一小时内确认交易(概率为90%)。六个块内确认
手续费 打包费用总结:
(in*148+34*out+10)* X satoshis / byte
当然计算出来的手续费有时候比实际的差几聪原因应该是有些币币龄比较大,输入的时候我们按照148算的,其实还有些地址是相对较小的一点的,具体是多少我不确定,曾经在一个国外的博客上看到的是144,所以有时候算出来的值会差几聪的。
原始交易也可以通过这个命令计算手续费:
fundrawtransaction
fundrawtransaction "hexstring" includeWatching # 把输入添加到交易中,直到它有足够的满足其输出的金额
此操作不会修改现存的输入,并且会添加一个找零输出到输出集中。
注:因为输入/输出已被添加,所以签名后的输入可能需要在完成此操作后重签。
使用 signrawtransaction 已添加的输入将不会被签名。
注意全部现存的输入必须在钱包中有它们前一笔输出交易。
注意所选的全部输入必须是标准格式,且在钱包中的 P2SH 脚本必须使用 importaddress 和 addmultisigaddress(用来计算交易费)。
watch-only 目前只支持 P2PKH,多签,和 P2SH 版本。
参数:
hexstring (字符串,必备)原始交易的 16 进制字符串。
includeWatching (布尔型,可选,默认为 false)选择 watch-only 的输入。
结果:
{
"hex": "value", (字符串)产生的原始交易(16 进制编码的字符串)
"fee": n, (数字)由此产生的交易费
"changepos": n (数字)添加的找零输出的位置,或为 -1
}
"hex"
BTC非原生交易设置手续费
settxfee amount # 设置交易费
原生的交易在创建的时候,设置手续费。
是否需要手续费:
比特币的数量乘以这些币在块中存在的时间(币龄,age),然后将所有的乘积加起来除以此次交易的大小(以字节为单位),计算公式:priority = sum(input_value_in__units * input_age)/size_in_bytes计算结果如果小于0.576,那么该交易就必须支付手续费。
---------------------
作者:疯狂猪
来源:CSDN
原文:https://blog.csdn.net/servletcome/article/details/81941334
版权声明:本文为博主原创文章,转载请附上博文链接!
[转]BTC手续费计算,如何设置手续费的更多相关文章
- 基于python网络编程实现支持购物、转账、存取钱、定时计算利息的信用卡系统
一.要求 二.思路 1.购物类buy 接收 信用卡类 的信用卡可用可用余额, 返回消费金额 2.信用卡(ATM)类 接收上次操作后,信用卡可用余额,总欠款,剩余欠款,存款 其中: 1.每种交易类型不单 ...
- 浅谈ScrollView嵌套ListView及ListView嵌套的高度计算
引言 在Android开发中,我们有时会需要使用ScrollView中嵌套ListView的需求.例如:在展示信息的ListView上还有一部分信息展示区域,并且要求这部分信息展示区域在ListVie ...
- CFD计算
47 求解器为flunet5/6在设置边界条件时,specify boundary types下的types中有三项关于interior,interface,internal设置,在什么情况下设置相应 ...
- Android 设置闹铃步骤和基础代码
主要分三步: 1. 设置闹铃时间; 2. 接收闹铃事件广播; 3. 重开机后重新计算并设置闹铃时间; 1. 设置闹铃时间(毫秒) private void setAlarmTime(Context ...
- PCB参数计算神器-Saturn PCB Design Toolkit下载及安装指南
进行PCB设计,特别是高频高速设计时,难免会涉及到PCB相关参数的计算及设置,如:VIA的过流能力,VIA的寄生电容.阻抗等,导线的载流能力,两相互耦合信号线间的串扰,波长等参数. 这里向大家介绍一款 ...
- UITableViewCell 高度计算从混沌初始到天地交泰
[原创]UITableViewCell 高度计算从混沌初始到天地交泰 本文主要基予iOS UITableViewCell 高度自适应计算问题展开陈述,废话少说直入正题: UITableView控件可能 ...
- SqlServer中计算列详解
计算列区别于需要我们手动或者程序给予赋值的列,它的值来源于该表中其它列的计算值.比如,一个表中包含有数量列Number与单价列Price,我们就可以创建计算列金额Amount来表示数量*单价的结果值, ...
- Android窗口管理服务WindowManagerService计算窗口Z轴位置的过程分析
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8570428 通过前面几篇文章的学习,我们知道了 ...
- 根据文字计算出label的高度
ios7.0之前用: [strtestsizeWithFont:ContentFontconstrainedToSize:CGSizeMake(ScreenWeight -20, 1000) line ...
随机推荐
- 基于UML网络教学管理平台模型的搭建
一.基本信息 标题:基于UML网络教学管理平台模型的搭建 时间:2013 出版源:网络安全技术与应用 领域分类:UML:网络教学管理平台:模型 二.研究背景 问题定义:网络教学管理平台模型的搭建 难点 ...
- TYVJ1424-占卜DIY
题目有点长,对于样例最好拿张A4纸模拟写一遍. 可以发现程序一定不会死循环,因为每种牌都是4张,而死循环的条件是某种牌有5张然后你拿了又放进去.如果写出来死循环了,那就是写不对了. 有几点可能是需要注 ...
- linux pxe 安装Centos7
服务端 需要3种服务 dhcp + tftp + vsftp tftp 提供引导 为什么不使用其他协议来进行pxe引导 是因为网卡只会集成tftp这种服务 写明到镜像的方式 dhcp 下发tf ...
- 算法第四版jar包下载地址
算法第四版jar包下载地址:https://algs4.cs.princeton.edu/code/
- HDU1263水果
//#include<bits/stdc++.h> #include<map> #include<cstdio> #include<string> #i ...
- unity 的一些API-01
public static float GetAxis(string axisName); 看下原话解释: Returns the value of the virtual axis identifi ...
- 探讨npm依赖管理之peerDependencies
引言 想必前端同学对npm的devDependencies和dependencies都比较熟悉,但是对peerDependencies可能就有点陌生,尤其是没有写过npm包插件的同学,比如之前使用gr ...
- Android 视频播放器 (三):使用NBPlayer播放直播视频
一.前言 在 Android 音视频开发学习思路 中,我们不断的学习和了解音视频相关的知识,随着知识点不断的学习,我们现在应该做的事情,就是将知识点不断的串联起来.这样才能得到更深层次的领悟.通过整理 ...
- shell脚本执行错误 $'\r':command not found
shell脚本执行错误 $'\r':command not found Linux下有命令dos2unix 可以用一下命令测试 vi -b filename 我们只要输入dos2unix *.sh就可 ...
- Ubuntu16.04设置静态ip
给Ubuntu系统配置一个静态IP ,方法如下 : 1. sudo vi /etc/network/interfaces (本人更推荐使用 sudo gedit /etc/network/inter ...