eth合约设置止损
A. ethusdt永续违法吗
ethusdt永续违法的,由于ETHUSDT合约2020年左右出现价格波动,平台部分用户为了控制仓位风险进行了止损,因仓位过大,给买盘带来了较大冲击。
B. 以太坊的智能合约
智能合约是运行在计算机里面的,用于保证让参与方执行承诺的代码,般情况下,普通合约上记录了甲方与乙方各方面的关系条款,并通常是通过法律强制执行或保护的,而“智能合约”则是用密码或密钥来执行关系。以更加直接的角度来理解的话,即“智能合约”的程序内容将同-开始大家一起设定好的那样百分百执行,并且零差错。
举个例子,以太坊用户可以使用智能合约在特定日期向朋友发送10个以太币。在这种情况下,用户可以操作创建一个合约,然后将程序推人该合约中进行特殊计算,以便它能够执行所需的命令。而以太坊就是专门把精力集中在这件事上的这么一个平台。
比特币是第一个支持“智能契约”的资源币种,因为网络的价值在于把价值或数据从一个点或人转移到另一个点或人身上。节点网络只在满足某些条件时才会进行验证,但是,比特币仅限于货币用例。相反,以大坊取代了比特币那种带有不小限制性的编程语言,取而代之的是一种允许开发人员编写自己程序的语言。以太坊允许开发人员编写他们自己的“智能契约”,即“自主代理”或“自治代理”,正如ETH白皮书所称的那样。该编程语言是“图灵完备”语言,这意味着它支持一组更广泛的计算指令。智能合约能做些什么呢?
1.“多签名”账户功能,只有在一定比例的人同意时才能使用资金。这个功能经常用在与众筹或募捐类似的活动中。
2.管理用户之间所签订的协议。例如,一方从另一方购买保险服务3.为其他合同提供实用程序。
4.存储有关应用程序的信息,如“域注册信息”或“会员信息记录”。概念有时候比较晦涩,我们举一个募捐的智能合约的例子来帮助理解:假设我们想向全网用户发起募捐,那就可以先定义一个智能账户,它有三个状态:当前募捐总量,捐款目标和被捐赠人的地址,然后给它定义两个函数:接收募捐函数和捐款函数。
接收募捐函数每次收到发过来的转账请求,先核对下发送者是否有足够多的钱(EVM会提供发送请求者的地址,程序可以通过地址获取到该人当前的区块链财务状况),然后每次募捐丽数调用时,都会比较下当前募捐总量跟捐款目标的比较,如果超过目标,就把当前收到的捐款全部发送到指定的被捐款人地址,否则的话,就只更新当前募捐总量状态值。
捐款函数将所有捐款发送到保存的被捐赠人地址,并且将当前捐款总量清零。每一个想要募捐的人,用自己的ETH地址向该智能账户发起一笔转账,并且指明了要调用接受其募捐函数。于是我们就有一个募捐智能合约了,人们可以往里面捐款,达到限额后钱会自动发送到指定账户,全世界的矿工都在为这个合约进行计算和担保,不再需要人去盯着看有没有被挪用,这就是智能合约的魅力所在。
C. 主流币轮流带动行情,ETH爆发的原因并不复杂
近两日主流币接连发威,前日莱特领头日涨幅久违的超过4%,带动其他主流币突破一直以来的震荡区间。
今日清晨ETH开启爆拉模式接力,日涨幅超过7%,站上3月份以来首次触及的260美元,同时也为其他主流货币把握住了昨日突破后续涨的机会,可谓是主流币上涨会迟到,但永远不会缺席,特别是ETH这样在主流币种地位也十分重要的货币。
关于以太坊的上涨原因市场上众说纷纭,但我们观察现在市场上能对ETH上涨起到重要作用的原因主要有以下三个:
1、中国国家层面支持的区块链服务网络BSN,已与包括Tezos,NEO,Nervos,EOS、IRISnet和以太坊在内的6条公共链展开合作。从8月10日开始,这六条公链上的开发人员将能够使用来自BSN海外数据中心的数据存储和带宽来构建DApp和运行节点。全球用户将通过网络的跨链结构以及与中国银联的合作关系,访问中国的企业链和财务数据。
2、前段时间DeFi爆发之时,市场上很多投资者都在盯着ETH,毕竟大部分爆发的DeFi运用是基于以太坊公链上,作为以太坊的taken,ETH确实有爆发的理由。或许是因为比特币的低迷压制,又或者是场内资金都流向山寨币以及DeFi项目,ETH始终没有出现爆发性的行情。
但暂时没有爆发依然掩盖不了ETH的潜在价值,我们的文章中也一直推荐支持大家值得购买的币种中只有比特币、ETH和三大平台币,而ETH是唯一一个以项目应用潜力进入的,所以当前资金注意到ETH也合乎常理。
3、昨日,有开发者表示以太坊2.0的最终测试网将于8月4日启动,而主网则可能最早在11月4日到来。以太坊2.0几乎是今年接下来的时间里最引人瞩目的话题,在比特币减半后,值得关注的项目有DeFi、Flicoin、波卡以及ETH2.0。
虽然Flicoin还未正式上线,但前期矿机和FIL期货的表现确实非常好,不排除这几个话题有市场热炒的原因,但市场就是这样,一旦经过大家热炒过的话题,时间便无法维持太久,这也是大家对ETH2.0就显得更为重视的原因,因为一旦大家对其他三个热点审美疲劳后,ETH就是接下来最亮的那颗星。
当前主流币接连发威,很多人认为是不是牛市已来,但我们暂时还不能乐观,毕竟比特币当前处的位置不足以支撑起“牛市”这个话题,真正的牛市效应还是需要比特币来带领。
清晰可见的是,随着主流币接连的开涨,近两日资金量确实有向主流货币资金回流的趋势,而且,行情波动起来才是最重要的,无论是涨跌,只要有交易的空间,结果都会比保持风平浪静要好。
回到行情上,近两日市场有逐渐激活的现象,当然很多人还是抱着会是诱多的可能性,这一点绝对是有道理的,无论行情涨的再好,都应该预防着庄家砸盘的风险,毕竟当庄家开动的时候,基本面和技术面都显得苍白无力。
当前日线表现逐渐转好,价位已经创近一个月的新高,而且昨日回踩过五日均线才回踩,虽然是受ETH的带动,但至少从技术指标来看,走的相当合理。当前五日均线有抬头迹象,MACD拐头向上,从盘面上看,是持币看涨的走势。
略显不足的是,价格接连上涨,量能却未及时跟上,其实主要原因还是昨日白天的成交比较拖后腿,能在今日清晨上涨时追上来这么高的量能,说不上表现差。
小时线方面基本上符合我们昨日下午文章的推测,5/10日均线离30日均线太远,需要等待30日均线上行确认支撑位,最后几根均线纠缠一下才有机会上行,而且以往第一次回调的时候基本上不会直接就反方向,昨日走势是完美的验证。
目前也是处于回调状态中,这对行情不一定是坏事,回调确认支撑位的上涨往往更踏实,持续拉涨的行情才应该担心。
回到一开始的话题,如果行情是诱多,现在上车了后期砸盘怎么办?但是如果不上车的话行情就这样上去了踏空更可惜。
这个问题基本上没有标准答案,因为行情涨的再厉害、在牛市中我们也要提防主力时不时的反噬,更何况目前还没有正式走出来,所以我们一直在强调做单策略。
像这种行情,看成交量表现就知道,是有庄家在刻意配合拉盘的,而且这两波上涨令空头损失惨重,庄家毕竟不是做慈善的,等多头筹码多起来,砸盘的概率也会增加。
当前这样的节奏,如果是从低位拿上来的,出一小部分落袋为安还是可以接受的,剩下的仓位就拿着继续等,设好止损,若是行情继续上涨,再在回调的时候选择加仓。
不管是持币想加仓还是现在想进场的小伙伴,一定要踩好节奏,行情在突破的一瞬间和涨至当下涨幅已经过高的情况下直接追高风险就会很大,最好的介入时间点就是在等回调的时候,我们在行情回调的时候能感受到震荡是否平稳,是否见底,这个事情加仓或买入是最安全的,其次,止损是我们做这些操作的保障,没有止损就会将风险无限放大。
D. eth永续合约100倍与125倍区别
倍数不同。eth永续合约100倍与125倍区别在于倍数的不同,eth永续合约100倍就是盈亏放大100倍125倍就是盈亏放大125倍。
E. 外汇市场参考数据
IFC Markets 提供了几道简单测试题:
布雷顿森林体系的终止引发了一种需求,即确定美元对其他主要货币的价值。 1973年,美联储制定了美元指数,以追踪美元对一揽子货币的几何平均加权值;这些货币包括:欧元、日元、英镑、加元、瑞典克朗和瑞士法郎。 制定美元指数时用到了美国主要贸易国的货币。 正式构成美元指数的各币别权重如下:
波动率指数 VIX - Volatility Index 又称恐慌指数,市场波动越大 VIX 越涨得高,一般以 20 为基准,高于 20 为 Risk Off,低于 20 为 Risk On。波动率 Volatility 作为一个重要的统计名词,一般用来衡量标的资产价格或投资回报率波动的剧烈程度。VIX 能有效反映美股市场恐慌和避险情绪,成为出色的市场情绪跟踪指标和风险对冲工具,这个工具可以在不知大盘涨跌方向一样能够靠对冲赚钱。
在欧美金融市场上已经发展十分成熟的波动率指数,为量化对冲投资人提供了一个只依靠判断股市波动性强弱,就可以实现市场对冲的投资手段。尤其值得注意的是,在美股整体温水般震荡、上冲力道有所减弱的背景下,一些知名金融投资机构可能大举选择做多美股波动率指数,期待市场长时间平静之后可能出现的大幅波动。
国际上主要的外汇市场以纽约、伦敦、东京为主,其次,澳洲悉尼、苏黎世、法兰克福、巴黎、东京、香港和新加坡:
主要货币对∶ 欧元/美元、美元/日元、英镑/美元、美元/瑞郎
商品货币对∶ 澳元/美元、美元/加元、纽元/美元
外来货币包括南非兰特(ZAR)、墨西哥比索(MXN)、港币(HKD)、北欧货币(瑞典克朗 SEK、挪威克朗 NOK 和丹麦克朗 DKK)以及一系列新兴市场货币,如土耳其里拉(TRY)、印度卢比(INR)和印尼卢比(IDR)等。此外,您还可以将俄罗斯卢布(RUB)和阿根廷比索(ARS)纳入外来货币的范围。
货帀对中左侧为 基础货帀 ,右边为 对应货币 ,也叫 报价货币 Quoted Currency,如 EURUSD 的 EUR 就是基本货币,但美元拥有国际地位高它通常是以基准货币出现的。货币对中有美元的称为直盘,没有美元的称为交叉盘。
国际汇率标准报价一般由 5 位数字组成,现在有很多平台提供 6 位数字精确报价,表示基础货币可以兑换到多少对应货币,比如 USDCNH 当前汇率报价 6.51702,表示 1 美元可以买到 6.51702 元人民币,对的没错,货币本质是可以交易的商品,书上说它是一般等价物,马克思说是一种特殊的商品,而汇率本质上就是 货币买卖 的价格。
外汇交易中很多都是以标准报价的点差 Spread 计算,点 Pip - Percentage in Point 为基本单位,一般都是小数点后面第 4 位数字,而日元货币对使用 3 位小数,0.01 位为点位。而 MT4 操作中止损点位通常是技术点位 Technical pip,是以最后的小数位为准,所以在设置止损点数时注意。为了区别二者的差别,通常使用 Point 表示标准点差,而 Pip 表示技术点差。
外汇交易是以按一张标准合约 10 万基础货币为单位,而实际交易使用 手 Lot 为单位,一标准手就是一个合约的价值。买 1 手 USDCNH,也就是 10 万美元的美元兑人民币。当汇率从 6.51702 上涨到 6.51708,即 0.6 个点差,则每一美元可以获利 0.00006 人民币,汇率每个 点差 Spread 变化相应的价值就是 点值 ,用报价货币表示,通常在外汇交易中换算成美元。点差和点值是外汇交易中的标准计量单位,当前的 USDCNH 点值就是 100000 * 0.0001/6.51708=1.534 美元。那么整个合约的交易获利 1.534 * 0.6 = 0.92 美元。
直盘 即含美元的货币对中,间接标价法,即美元在后的货币对每波动一个点为十美元,点值是默认的,而直接标价法根据当前汇率计算点值。如在 107.72 买入 1 标准手 USD/JPY,点值为 100000 * 0.01/107.72 = 9.2 美元。又以 USD/CHF 为例,当前汇率 0.88301,点值为 100000 * 0.0001/0.88301=11.32。
交叉盘 需要转换一下,交叉盘可以作两次直盘交易,如买入 GBP/JPY 相当买入 GBP/USD 和 USD/JPY。交叉盘点值=手数x基点x基本货币与美元的汇率/该外汇的汇率。
如 AUD/JPY 点值计算,现价 78.747,AUD/USD 汇率为 0.76218。AUD/JPY 点值为 100000 * 0.01 * 0.76218/78.747 = 9.68 美元。也就是说每个基点相当对应 JPY 1000,兑换为澳元后 1000/78.747=12.70,再兑换成美元数量。
再如 GBP/JPY 现价 139.442,GBP/USD 现价 1.34964,点值为 100000 * 0.01 * 1.34964/139.442 = 9.68 美元。几乎所有日元相关的货币对的点值都接近 10 美元。
各种产品的合约价值:
国内期货交易所有四家,中国金融期货交易所、大连商品交易所、郑州商品交易所、上海期货交易所,各所上市的品种不同。
上海期货交易所有期货与期权两大类的品种:
【1】期货品种:分为金属期货与能源化工期货两大类。金属期货为铜、铝、锌、铅、镊、锡、黄金、白银,线材、螺纹钢、不锈钢、热扎卷板;能源化工期货为原油、低硫燃料油、燃料油、石油沥青、天然橡胶、20号胶、纸浆。
【2】期权品种:铜、铝、锌、黄金、天胶。
需要注意的是,以上期权品种的标的物并非是实物资产,而是期货,所以这类期权都是期货期权。
如黄金期货1000克/手,报价为元(人民币/克),如黄金期货主力合约 AU2012,投机或套保买卖使用 5 倍杠杆,交易手续费 10元/手。虽然最便宜的期货品种如纤维板、玉米一手保证金大概需要 2 千左右,而金融期货开户需要 50 作为最低要求,并且需要通常考试。
IC Markets 贵金属产品 Basic Information-Metals( Gold, Platinum, Palladium)
IC Markets 指数产品目录 Indices Proct Specification Sheet
隔夜成本 Overnight Finacing Costs 3% +/- Libor,每个跳点 Tick 为 1 指数点。
IC Markets 外汇产品信息 Foreign Exchange - Basic Information
2020年11月27日褔汇保证金更新,最低保证金要求 MMR - Mininum Margin Requirements 是指 0.01 标准手的保证金,包含股指期货、大宗商品、贵金属、国库债券、一篮子产品等多种投资工具。
举例,如果 BTC/USD 的价格在美国东部时间 17:00 至美国东部时间 18:00 期间为 8000.00,则一份合约的保证金要求将更新至 20.00 美元。
举例,如果 ETH/USD 的价格在美国东部时间 17:00 至美国东部时间 18:00 期间为 300.00,则一份合约的保证金要求将更新至 7.50 美元。
举例,如果 EOS/USD 的价格在美国东部时间 17:00 至美国东部时间 18:00 期间为 30.00,则一份合约的保证金要求将更新至 7.50 美元。
黄金 XAU/USD 标准合约 100 盎司,交易为 1 标准手,每波动 0.01 为 1.0 美元,即每盎司每点变动带来 0.01 美元的点值。福汇平台在 MT4 交易黄金时,最低交易 0.01 手,下单填入 1 表示 1 迷你手即一盎司,实际使用 1:200 保证金比率需要 10.5 美元保证金。IC Markets 下单 0.01 表示一迷你手,即一盎司,使用 1:400 保证金比率需要 4.72 美元保证金。
银价是由投机和供需驱动的,主要是大交易商或投资者、卖空、工业、消费和商业需求,以及对冲。与黄金相比,银价格波动很大,这是因为市场流动性较低,工业消耗和仓储价值之间的需求波动。
白银 XAG/USD 标准合约国际大平台以采用一标准手 15kg 或 5000 盎司为常见,报价单位是美元/盎司。福汇单笔最大合约数为 200,000 盎司,而最小合约数为 50 盎司,请注意,交易数量必须为 50 的倍数。福汇的报价文件中以 0.01 手报保证金为 14 美元。在 MT4 平台上下单输入 1 一般就是一个标准手的意思,而白银的最低交易是以是 50 盎司为一手,即 0.01 张合约。因此,福汇做 0.01 标准手的白银时,数值填 50 就可以了。
IC Markets 白银合约为 100 盎司/标准手,最小交易 0.01 合约,按实际数值在 MT4 上下单即可。可以按目前白银报价 26 美元一盎司左右,交易一标准手以 1:40 计算,需要保证金大约为 2600/40=52 美元。交易 0.01 标准手 1 盎司,每 0.01 波动价值 0.10 美元。
原油 USOil 标准合约为 1000 桶,按目前 48 美元一桶的报价,1:400 杠杆大概需要 120 美元保证金,每波动 0.01 为 1.0 美元。
道琼斯指数 US30 福汇最低交易单位 1 即 0.1 手,只是下单时输入 1 表示。IC Markets 平台 US30 合约 30000 美元,最低交易单位 0.1 手,固定 1:200 保证金比率,一手保证金 150$,每波动 1.00 为 1.0 美元,指数交易不收取佣金。
美国 US30 的标的资产是 E-Mini 道琼斯工业平均指数期货。道琼斯指数包含了 30 间美国主要公司,包括:美国运通、波音、雪佛龙、可口可乐、杜邦、奇异公司、高盛、Intel、IBM、微软、Nike 等等。目前,50 张福汇 US30 合约相等于 1 张 E-Mini 道琼斯工业平均指数期货合约。
日经指数 JP225 福汇最低交易单位 1 即 0.1 手,只是下单时输入 1,一手保证金 45$。目前,550 张福汇 JPN225 合约相等于 1 张日经平均指数期货合约。IC Markets 最低交易单位 0.01 指数点/手,MT4 下单时输入 1 表示,当前指数 27304,0.01 手保证金 1.32 美元,每波动 1.0 为 0.01 美元。
福汇平台的 VOLX 恐慌指数产品的标的资产是芝加哥期权交易所迷你波动率指数期货,最低交易为 1 个指数点/手,波动 0.01 点值为 0.10 美元,保证金 30 美元。
IC Markets 平台目前交易的 CBOE VIX Index Futures 波动率指数期货符号是 VIX_F1,最低交易为 1 个指数点/手,保证金 0.24 美元,波动 0.01 点值 0.01 美元,期货 CFD 不收取佣金。
IC Markets 平台恒生指数 HK50 合约,最低交易 0.1 指数点,当前报价 27209.00/27218.00,点差较大。每标准合约使用 1:200 保证金 17.57 美元,波动 1.0 点值为 0.13 美元。
恒生指数由香港恒生银行全资附属的恒生指数服务有限公司编制,是以香港股票市场中的 50 家上市股票为成份股样本,以其发行量为权数的加权平均股价指数,是反映香港股市价幅动趋势最有影响的一种股价指数。
在 IC Markets 平台交易,当前 BTC/USD 价格为 26765,每一份合约 5355 美元,保证金比例为 1:50。最低交易 0.01 合约即 0.01 个比特币,波动 1.0 价值 0.01 美元。
当前 ETH/USD 价格 718.00,每一个合约 144 美元,保证金比例 1:5,最小交易 0.01 个以太币,波动 1.0 价值 0.01 美元。当前 EOS/USD 价格 2.7200,每一份合约 0.55 美元,保证金比例 1:5,最低交易 1 个柚子币,每波动 0.01 点价值 0.01 美元。
请谨记,外汇及差价合约 CFD 交易可能会导致损失超过您所存入的资金,因此未必适合每一位人士,故此请确保您完全了解所涉及的风险。
目前 IC Markets 的默认杠杆比例如下,特别交易品种除外,目前 USD/CNH USD/HKD 是 100 倍杠杆:
F. 火币、OK、星币全球这几个合约交易所怎么样
星币全球算是良心的交易所,网页的流畅和APP的速度真的是快到爆,而且在风控措施上更保护用户的利益,这一点甚至比很多大交易所做的好。算是后起之秀!火币一直以现货闻名,但是期货的体验度并不好,大多币友反馈在结算币种上就有硬伤。而OKEX一直名声在外,强平强减措施多被诟病。其他的大家多体验,多方比较吧。
G. 代币(ETH)空投工具
经过一段时间紧锣密鼓的开发测试,代币(ETH)空投工具已经上线啦。
代币空投工具
该工具支持erc20代币和eth的空投,具体操作方法如下:
之后合约会查出来该代币的信息,用户当前登录的账户所拥有的账户总量,以及当前用户对空投合约的代币授信。
授信表示用户允许合约代操作的代币数量,空投前必须授信空投合约。
如果空投授信额度为0时,请点击“点击授信”按钮,给空投合约授信。(即使授信合约,非您发起的空投请求也不会成功的,不用担心代币安全问题)
点击授信后打开授信页面,请输入授信数量,比如您要空投1w用户,每个用户10个币,授信数量就请填写100000, 然后点击确定。
确定后会发出一个交易请求,在metamask里点确认后,请耐心等待授信成功,期间可以通过metamask查交易进度。
刷新页面查询直到确认授信成功。
输入每个账户的空投币数量,同时也会显示每一笔空投的手续费(合约收费)。
点击上传空投账户列表文件。
注意,这里的文件最好为txt或者csv格式,每一个地址一行。如果有多余信息,每一行必须为逗号分隔,且用户地址必须在第一列。
注意,这里你可以选择空投批处理地址数量,比如有1w个地址要空投,批处理数量为100,那就需要空投100次。空投手续费按每次收取,因此批处理数量肯定是越大越好。
但是:以太坊每笔交易gas消耗量有上限,因此批处理数量是有上限的。
生成空投列表后,您可以点击空投按钮开始空投,这时会有两种结果:
空投ETH跟空投代币并没有太大区别,只是代币地址里直接填入0,另外也不需要设置授信。
注意发送ETH比发送代币所需要的gas更多,因此批处理数量需要调低
如果您仍有担心,可以先在Ropsten上测试,只需要把metamask接入网络换成ropsten,然后刷新页面即可。
请注意,您需要在ropsten网络上重新部署代币
该合约经过几次迭代,已经稳定工作,已经有稳定的使用记录可查。
H. 006:MPT与RLP|《ETH原理与智能合约开发》笔记
待字闺中开发了一门区块链方面的课程:《深入浅出ETH原理与智能合约开发》,马良老师讲授。此文集记录我的学习笔记。
课程共8节课。其中,前四课讲ETH原理,后四课讲智能合约。
第二课分为三部分:
这篇文章是第二课第二部分的学习笔记:MPT与RLP。
MPT,Merkle Patricia Tree,结合了Merkle Tree(默克尔树)和 Patricia Tree(帕特里夏树)的一种数据结构。
RLP,Recursive Length Prefix,一种编码方法。
这是两个非常重要的数据结构,在以太坊的区块和交易中都有用到。
先分别介绍一下Merkle Tree 和 Patricia Tree。
Merkle Tree 和 Patricia Tree Merkle Tree 和 Patricia Tree
默克尔树的解释:对每一个交易计算其散列值(Hash),再对两个散列值求他们的散列值。如果是奇数个,就把最后一个重复一次。最后得到的一个散列值就是默克尔树根的值。如图,交易1、1、2、3的散列值分别是HASH0、HASH1、HASH2、HASH3。HASH0和HASH1结合在一起计算散列值得HASH01,HASH2和HASH3结合在一起计算散列值得HASH23,接下来HASH01、HASH23结合在一起,计算散列值得HASH0123。
采用默克尔树的好处是可以方便的判断一个交易是否在区块中。
Patricia Tree,可称为压缩前缀树。如上图右半部分。相同的前缀在同一分支中,后面一同的部分分叉出来,如test和toast,都有相同的t,est和oast在两个分支中。
这个结构的好处是节省空间,因为每一级的键值可以是多个字符。
了解了Merkle Tree 和 Patricia Tree后,再来看这两者混合后的产物——MPT。
这里的原理知识单独来看不易理解,和具体的例子结合起来才更容易理解,此处先放上课件截图。在后面的例子中再做说明。
Merkle Patricia Tree 规格 Merkle Patricia Tree 规格
在MPT中,还涉及到三个小的编码标准。主要规则如图。下面结合两个例子说明一下。
三个编码标准 三个编码标准
HEX编码的例子:从ASCII码表中可以查出,b的十六进制编码为62,o的十六进制编码为6F,F在十六进制中就是15的意思。因为这是个叶子节点,最后加上0x10表示结束,也就是16。所以最后的编码为[6 2 6 15 6 2 16]
HEX-Prefix编码的例子:[6 2 6 15 6 2 16],将其最后的0x10去掉,[6 2 6 15 6 2]。前面补一个四元组,其中(倒数)第0位是区分奇偶信息的,[6 2 6 15 6 2]是偶数位,第0位是0;第1位是区分节点类型的,这是叶子节点,第1位是1。所以这个四元组就是0010是2。“如果输入key的长度是偶数则再添加一个四元组0x0在flag四元组之后。”,所以,最终的前缀是0x20。本例最终的结果,[32 98 111 98],即[0x20, 0x62, 0x6F, 0x62]
下面是综合性的例子,通过它可以很方便地理解前面的理论知识。值得多看几篇,仔细休会。
初始的key-value对为:
其中,<>中的数据为key的16进制编码。
MPT.jpg MPT.jpg
因为4组数据都有公共的6,所以这个节点的值为6,长度为1,奇数;节点类型:扩展节点;所以前缀就是0001,即1。
这是个扩展节点,它的值是一个Hashvalue,它指向一个分支节点。Hashvalue,具体指的是分支节点RLP编码的结果的散列值。(RLP见下小节)
分支节点。上面4组数据的第2位是4和8两种情况。在4的位置上存的是下面的扩展节点的散列值,在8的位置上存的是下面的叶子节点的散列值。
叶子节点。以68开头的只有一个了。所以这个节点上的四元组就是6f727365了。它是偶数位。前缀是0x20(同前文HEX-Prefix编码的例子)。这个叶子节点的value值为'stallion'。
扩展节点。在64之后,公共的部分是6f,这个扩展节点的key即为6f,前缀为0000,即00。这个扩展节点的value存放的是一个hashvalue,指向下一个节点,一个分支节点。
分支节点。646f已经表达完,这个节点的value值就是646f对应的值,'verb'。
除此之外,646f之后就是6,所以在这个分支节点的6位置上有一个散列值,指向下一个节点。
扩展节点。在646f6之后,公共的部分是7,其长度为1,奇数。所以前缀为0001。这个节点的value是一个散列值,指向下一个节点。
分支节点。646f67已经表达完,这个节点的value值就是646f67对应的值,'puppy'。
除此之外,646f67之后就是6,所以在这个分支节点的6位置上有一个散列值,指向下一个节点。
叶子节点。key为5,value为'coin'。长度为1,奇数,前缀0011,即3。
整个分析过程结束。可结合上图和前文的理论多加复习。
这小节也是理论性较强,通过例子可以方便理解。先放上课件,再根据我的理解举更多的例子。同样,学习方法也是理论和例子配合学习。其中,list的例子在下篇文章的上机实验部分再列举。 RLP的编码标准 RLP的编码标准 再举几个例子 再举几个例子
I. 以太坊交易应该注意什么
注意现在的以太坊是2.0就行了。截至4日13时57分,当前以太坊2.0存款合约地址已收到1000098ETH,已有31252个地址完成32ETH的抵押。随着抵押数量的不断上升,抵押的年化收益率会逐渐降低。在抵押金额达到100万ETH后,当前年化收益率约为15.7%。知名交易所中币已经率先开启了ETH2.0验证节点挖矿通道,然后此外还上线了QETH,用户可以将自有ETH投入进行验证节点挖矿并兑换QETH以获得流动性,兑入即参与挖矿。对比ETH2.0的多个弊端,QETH享有的东西可太多了:流动性有保障、用户无需承担技术成本、参与门槛无需32个ETH低至0.1ETH、节点由平台维护,收益依据ETH2.0发放。