heyuan 发布的文章 - 六币之门
首页
视频教程
网站导航
活动日历
关于我们
用户投稿
推荐
新闻动态
搜 索
1
融资周报 | 公开融资事件11起;加密技术公司Toposware完成500万美元融资,Polygon联创参投
112 阅读
2
六币日报 | 九只比特币ETF在6天内积累了9.5万枚BTC;贝莱德决定停止推出XRP现货ETF计划
76 阅读
3
融资周报 | 公开融资事件27起;L1区块链Monad Labs完成2.25亿美元融资,Paradigm领投
74 阅读
4
六币日报 | 美国SEC再次推迟对灰度以太坊期货ETF做出决定;Do Kwon已出黑山监狱等待引渡
72 阅读
5
【ETH钱包开发06】查询某个地址的交易记录
55 阅读
新闻动态
每日快报
一周精选
融资情况
项目投研
自治组织
数字藏品
去中心化应用
去中心化游戏
去中心化社交
去中心化金融
区块链交易所
科普知识
小白入门
用户手册
开发文档
行业报告
技术前沿
登录
搜 索
标签搜索
新闻
日报
元歌Eden
累计撰写
1,087
篇文章
累计收到
0
条评论
首页
栏目
新闻动态
每日快报
一周精选
融资情况
项目投研
自治组织
数字藏品
去中心化应用
去中心化游戏
去中心化社交
去中心化金融
区块链交易所
科普知识
小白入门
用户手册
开发文档
行业报告
技术前沿
页面
视频教程
网站导航
活动日历
关于我们
用户投稿
推荐
新闻动态
用户登录
登录
找到
1087
篇与
heyuan
相关的结果
2023-03-24
以太坊智能合约 + DApp 从入门到上线:来自前端工程师的实战指南 - 王仕军 | Jeth 第一期
编者按:本文系 以太坊布道师 王仕军讲师,在由掘金技术社区主办,以太坊社区基金会、以太坊爱好者与 ConsenSys 协办的《开发者的以太坊入门指南 | Jeth 第一期 - 北京场》 活动上的分享整理。Jeth 围绕以太坊技术开发主题的系列线下活动。每期 Jeth 会邀请以太坊开发领域的优秀技术团队和工程师在线下分享技术干货。旨在为开发者提供线下技术交流互动机会,帮助开发者成长。王仕军老师本次分享视频回放(B站)分享整理传送门智能合约全栈介绍 - Howard | Jeth 第一期详解 ERC20 代币及众筹 - 熊丽兵 | Jeth 第一期王仕军 是掘金专栏和掘金小册作者,他著作的《区块链开发入门:从 0 到 1 构建基于以太坊智能合约的 ICO DApp》销量近千本;他创办和维护的微信公众号“前端周刊”目前有2600+订阅数;此外他还是 async/await、styled-components 高质量技术视频教程的作者。先跟大家介绍下我的背景,我是从去年五月开始学习区块链的,在场的同学可能学习区块链时间有比我还长的,所以我跟大家是在同一条起跑线上。我是做前端出身,对 JavaScript 非常熟悉,今天这个分享里的代码除了 Solidity 其他的都是 JS 写的。如果做这开发时间比较长,会了解到语言间的差别其实没有那么大,外界有说 Solidity 跟 JS 很像,但实际上 Solidity 语言创造的时候借鉴了 Golang、 Python 和 Javascript。我所要介绍的内容就是在我接触以太坊开发的这一段时间内,所积累出来的,怎么把所有区块链有关的点串起来做成一个可以用的应用,在座的可能看了不少资料,但是真正动手做东西的可能很少,接下来我就正式开始我的分享。在讲具体的事情之前我们站在软件开发这的角度来看一下区块链在计算机科学里面,或者说区块链的技术栈构成到底是什么样的,区块链最底层依赖于 OS,接下来算是基础设施层,这里面有 TCP/IP 协议和密码学。2017年 - 2018年期间爆发的是区块链协议这一层,包括分布式、共识算法,其中共识算法现在搞的人非常多,但是实际上在分布式里面已经有很成熟的研究。在应用这一层现在最成功的应该当属于以太坊,它引入是智能合约的概念以及DApp。最上面的是表现层,这个是现在所有的互联网产品都具有的东西,比如说你做了一个网站,一个H5页面,甚至是做了一个APP,甚至是给开发者提供一些API或者是命令行的接口。凭我自己对这个行业的观察,我觉得不光是前端工程师,所有做应用的工程师可以介入的点就是应用层和表现层,只不过对前端工程师来说做表现层有天然的优势。接下来是具体我要分享的内容:要做出一个完整的区块链 DApp 你需要掌握的最少必要知识; 怎么准备开发环境,开发环境需要有什么必要的条件; 如何在我们熟悉的开发环境里面把智能合约集成进来; 怎么做一个简单的DApp并且让他上线给人们去使用。 最少必要知识相信大家都听过账户、钱包、区块、区块链等没名词,但是怎么把这些东西串在一起,真正去琢磨、研究的人可能不多。首先回顾一下Howard 老师分享的区块、和区块链的结构。每个区块链平台里面都会有帐户的机制,最成功的区块链应用大家应该都知道,叫做比特币,比特币可以认为是去中心化的银行,那不同的帐户之间会有转帐交易,一段时间之内所有的转帐交易汇集在一起形成一个区块,区块的数据结构上面也有介绍,我就不展开讲了。随着时间的推移多个不同的区块通过一些特定的方式连起来,就形成了区块链,区块链上每一个区块可以认为是编号,这个编号就是块高,那不同的链产生一个区块所需要的时间是不一样的,那这个时间是出块时间,现在比特币大概在10分钟左右,而以太坊需要10多秒。至于以太坊,它本质是个分布式网络,所有的消息包括转帐、合约部署、以及合约接口调用都要通过一个节点,节点接收到消息然后把他广播给网络中的所有节点,然后当交易被打包之后出来的区块同样也会被广播给网络的所有节点。那怎么跟以太坊的网络交互呢?拿现在我们比较熟悉的微信小程序举例,开发者可以通过微信小程序提供的特定框架、小程序的管理后台去创造小程序,普通用户可以在微信 APP 里面使用小程序。腾讯的服务器他本身是中心化的,只有腾讯自己去维护;对应到以太坊的网络里面,社区给开发者提供的工具很多,可以用 web3.js、web3j、web3.swift,也可用 etherscan,这些工具或者语言包通过某一个节点作为入口与以太坊网络交互,用户通过浏览 DApp 或者钱包来和网络交互。以太坊的帐户和比特币的帐户最本质的结构是很类似的,包含了三个要素:私钥、公钥和地址。以太坊除了主网之外然后还有三个测试网,它的主网我们可以理解为传统软件开发环境里面的线上环境,Rinkeby、Kovan 和 Ropsten 是三个测试网络,这是三个测试环境是大家都可以公用的,后面的实战案例会用到。说完帐户,另外一个大家很熟悉的概念是区块链钱包,那比如说是像 imToken 或者是 Bitpie,还有后面我们要介绍的 Metamask,钱包和帐户之间有什么关系呢。我们用这个我们现在所熟知的金融系统里面的钱包和帐户来类比一下,就比如说是我在招商银行和建设银行开了两三个帐户,那我有一个钱包装在我兜里面的,我实际上持有5张银行卡,对于区块链里面我安装了一个比特派钱包,这个钱包里面有以太坊的帐户和比特币的帐户,以太坊的帐户我可以有很多个,比特币的帐户也可以有很多个。智能合约本质上是一个被代码控制的帐户,这个帐户本身和你在钱包里面所拥有的帐户是相同的,不同的是你所拥有的帐户的私钥掌握在你的手里,智能合约的则是掌握在合约部署者的手里。关于智能合约,可以用我们非常熟悉的面向对象的概念做个类比:我写了一个类 Class,那我可以生成很多的实例,然后在区块链世界里面我有一份智能合约源代码,可以部署到上面介绍的几个以太坊网络上面,每部署一次产生的合约实例都是不一样的,是完全不同的帐户,这个应该是很多做 DApp 开发的工程师迷惑的地方,也是智能合约不能升级的原因。现在也有一些比较 “Trick” 的方法可以完成合约的热更新,刚兴趣的同学可以自己去搜。智能合约的源代码大多数情况下是用 Solidity 编写的,合约帐户和普通帐户之间的关系用上面这张图说明一下,开发者通过向以太坊网络发送一个交易创建合约实例,拿到合约实例地址,有了合约实例地址之后普通用户可以和合约交互。比如说是 EOS 众筹时,实际上是在以太坊上发布了一个智能合约,每天都有人参与进去,参与时把代币取回来的时候就是在调对应的合约。合约和合约之间也是可以交互的,合约帐户是被称为内部帐户,而普通用户帐户通常被称为外部帐户。开发环境准备接下来是第二个主题 —— 开发环境的准备。需要在以太坊这个区块链上做开发,要有什么条件才可以开始呢?只有两个关键点:因为它是P2P网络,交易、合约部署都需要节点,就是说你需要有一个节点,然后任何活动都需要有帐户,即使说你调一个不花钱的合约方法也是需要帐户的。具体点来说,第一个必要条件是测试网络节点。有好多种方法,第一个自己跑一个节点,称其为私链可能不够准确,那这个方法实施或者是理解的成本对于不做底层的同学稍微高一点,不建议做应用层的同学采用;如果说想把控制权掌握在自己手里的话,那还是非常建议做这个事情。本地开发调试可以使用 Ganache,方便地在本地起一个节点来处理交易,还有 Remix,它提供在浏览器内部的 JavaScript 测试网络。成本非常低,打开就可以用,本地测试非常的方便,Ganache 和 Remix Javascript VM 内置了已经解锁的帐户,不需要去关心帐户的私钥或助记词。还可以使用共享测试网络,就是前面提到的 Rinkeby、Ropsten 和 Kovan,使用这几个作为网络入口的节点,我们不需要自己跑节点。infura.io 则是为广大开发者提供区块链接入的服务,不过使用他需要我们有自己注册、自己管理钱包和帐户。这二个必要条件是帐户和余额,因为以太坊上的任何操作都需要帐户才能够发起,所以我们需要创建钱包和帐户。我们开发的 DApp 是运行在浏览器里面的,对于 PC 端来说钱包最好是能和浏览器无缝集成的。目前社区中有个很好的选择是 Metamask,它实际上是一个浏览器插件,但是 Metamask 历史上出了一个安全事故,有人发了个假的 Metamask,有一部分的用户上当了,因此大家安装的时候一定要认准狐狸图标。另外一点以太坊上的很多交易都是要收费的,这个也是它现在最大的痛点,部分区块链项目在解决这个问题,目前我们开发还没有办法绕过他。在做DApp 测试的时候我们不需要去花费真金白银,可以使用不同的测试网提供的 faucet 给测试网的帐户充值,即把 ETH 充到 Metamask 钱包里面。以上就是准备开发环境的两个必要的条件,需要动手做的就是 Metamask、充值还有注册 infura.io。智能合约工作流接下来是如何做一个完整的应用。对应到传统的应用开发,先要有一个后端然后有一个前端,我们先介绍后端部分。后端在以太坊上面可以粗暴的用智能合约代替,复杂应用中所有的数据应该不是全部存储在以太坊区块链上,有一部分数据是存在传统的数据库里面,这里我们简化设定所有数据都存在链上。做智能合约开发有两种方式,第一种是通过 Remix 在线 IDE ,这个 IDE 还算好用。另一种方式,对于前端来说,就是用你熟悉的编辑器加上你熟悉的语言去做。Remix 适合做我们快速的验证概念和原型,在 Remix中可以快速写合约代码,然后调用它的合约接口,测试它的行为,此外还可以测试已有的合约实例,我们可以从以太坊的线上环境和测试环境把合约实例加载到 Remix 里面然后测试,也可以通过 Remix 把合约部署到任何以太坊网络上面。Remix 还可用来做单步调试,当你发现合约某一些接口有奇怪问题的时候可以用 Remix 做单步调试。但是 Remix 有个明显的缺点,在传统的软件开发工作流里面,通常会有版本管理,在 Remix 里是做不了的,但在我们自己的工作流里面是可以的,我们可以用 Git 做版本管理,然后保存合约编译部署的结果,最重要的一点就是能把可以自动化的都自动化了,因为自动化之后出错的可能性会小很多。通常在实际的工作当中或者是说学习过程当中这 Remix 和自动化工作流会结合使用,来回切换使用。接下来就是实战 DApp 里面用到的非常简单的智能合约,可以认为这是一个以博彩原型,代码非常简单,合约有两个属性,合约的管理员,以及谁参与了博彩活动。构造函数作用是设定合约管理员,然后参与抽奖/下注接口,再然后是随机数函数,在以太坊区块链里面没有非常好的随机数的方法,合约部署到以太坊上之后随机数的代码别人是可以看到的,它能够知道你种子是怎么来的,然后很容易被操控。pickWinner 是开奖接口,里面调用了随机数的函数,然后把整个奖池里面的钱都转给赢家。合约本身是不收任何手续费的,只不过是在调用接口的时候收手续费。modifier 是做了安全的限制,开奖的接口只能是合约的管理员才可以调用。安全、权限也是智能合约要重点考虑的问题,最近两个月爆发出来的合约的漏洞非常多,有一部分安全限制,还有一部分是溢出,值得大家关注。合约在 Remix 里面的工作流,简单给大家演示下,在 Remix 里选 JavaScript VM,它是 Remix 提供的跑在浏览器内存里的一个测试网络,它的响应速度非常快,选择 JavaScript VM 之后默认这有几个帐户,里面的余额是 100 ETH,点击 Deploy 把合约部署一下,可以看到很快合约实例就有了,实例界面中红色的是合约接口,蓝色是合约属性。然后我们怎么去下注呢?可以看到下注并不需要提供参数,下注金额需要在发起交易的地方填写,用合约管理员下注一次,现在玩家有一个人,下面换一个帐户,再下一次注,就是模拟两个人,这里就变成了两个人。用第二个帐户去调开奖接口时候直接报错了,那是因为我们的合约代码里面强制了必须是管理员才可以调用,失败的例证就是没有人拿到奖池里面的钱,把帐户切回去重新调开奖接口,可以看到第一个人拿到了奖池里面所有的钱,这个是非常简单的 Remix 合约工作流演示。那怎么把这个 Remix 里面做的事情自动化?接下来我介绍一下怎么在 Node.js 里面做智能合约的工作流。我先介绍两个工具,第一个是把智能合约的源代码编译,编译会产生字节码 ByteCode,这个是部署到测试网络时用的;以及接口声明 ABI,通过 ABI 实际业务代码就能知道这个合约到底暴露了哪些接口,每个接口接收参数的类型和数量。接下来工作流里做的事情就是围绕这个图展开的,可以看到这里面用到了 web3.js,可以把 web3.js 理解为应用层的代码通向以太坊网络的一个桥梁。它作为桥梁的方式是可以使用很多不同的插件,在 web3 里面叫 Provider,我在浏览器当中运行时,Metamask也提供了一个插件;在本地的话,Ganache-cli 提供了一个插件;如果只想调用 infura.io 提供的入口节点,那可以通过 HTTP Provider。我们要做的第一步把智能合约的源代码变成可以部署到以太坊网络上的 ByteCode 以及我们应用层代码可以使用的 ABI。编译脚本的代码也很简单,我们可以把文件读出来,准备一个结果保存目录,然后调用 solc 的 compile,接下来会处理编译结构里面的错误,最后把编译结果写到文件系统里面。合约构建完之后怎么通过 web3 测试它?直接使用 Ganache-cli 就行了,我们在测试合约代码之前,要初始化 web3 的实例,直接使用 Ganache的 Provider 插件。测试里面我们会先创建一个隔离的测试环境,即跑每个测试的时候我们会重新部署合约,然后调用这个新合约上的方法,或者是尝试修改他的状态,最后对他的状态做断言。接下来是部署合约,在创建 Contract 的时候我们要把 ABI 传进去,在 Deploy 里把它的 ByteCode 传进去,可以看到我们做任何事情都需要有帐户,gas 是我们愿意为这个操作最多支付多少的手续费。关于 gas 有两个参数调节,一个是 gas limited,另一个是 gas pressed,感兴趣的同学可以自行去研究。再来看一个抽奖合约完整的流程测试,先调用下注接口,用得还是解锁出来帐户里面第一个,然后取出来合约的玩家,确认玩家是我们下注过的人,接下来检查帐户 initialBalance 和账户抽奖完成之后的余额状态。在这个地方调用了开奖接口,开奖之后对于部署合约的帐户的余额做了一个断言,最后是我们断言中每次开奖之后这个合约里面的玩家要被清空。合约部署所需要做的事情跟合约自动化测试时做的事情有很多相似的地方,不过部署的网络不是 Ganache-cli 提供的本地网络,而是 Rinkaby 测试网络,这里用到了一个插件,我们可以提供一个钱包的助记词,以及一个网络入口的节点,它通过 HTTP 的方式给节点发送消息进行交易。接下来做的事情跟每次隔离测试环境类似,先解锁帐户,然后部署合约。因为我们是部署在真实的测试网络上,这个过程通常花费的时间比较长。每次部署完之后我们会有一个合约帐户的地址,我们可以通过这个地址跟合约交互。最后是把整个流程串起来的过程,部署之前必须要重新编译,并且确保所有单元测试在最新的合约上是可以完全通过的。DAPP构建和部署合约部署完之后,我们在以太坊的区块链上已经有一个我们可以直接与他交互的后端了,那接下来我们需要写的就是做这个应用层的代码和后端的交互,以及给DApp加上界面。从技术视角来看这个DApp的本质,我们这没有讨论商业和其他方面的东西,就是 DApp 可以理解为就是小白用户可以使用的,可以和前端数据交互、读取的界面。它的形态可以是很多种,可以是 Web、App,也可以是桌面软件。如果是非常简单的 DApp 你可以做成以区块链为后端的单页应用。接下来我们做一个非常简单的抽奖或者是博彩的 DApp,可以使用 create-react-app,使得我们的技术栈变得非常简单。还有一个是 web3.js,合约工作流里面用的比较多,在 DApp 里面用 web3.js 是跟 ABI 打交道。如果开发完,整个合约加上 DApp 的目录结构如同上图的,编译部署脚本和测试脚本分别放在对应的目录下面。抽奖 Dapp 可以说是相当简单,甚至相当简陋,我们可以把界面对应到合约的源代码上面,现在奖池的金额有 1 个 ETH ,有 1 人参与,但这个 Balance 属性在之前的合约代码中没有提到,实际上合约实例是一个帐户,那在任何的一个帐户上面都是有余额的,共有 1 个人参与抽奖,有两个按钮,一个是下注,调用的的合约接口是 participate;还有就是开奖,对应的接口是 pickWinner。下面我们来看一下大概的关键代码实现。第一个就是使用 web3 把我们的桥梁建起来,这里面我们假设使用这个 DApp 的用户安装了 Metamask,第二个关键的地方是我们新建这个合约的时候不像部署和编译脚本,传入了一个地址,这个不是完全新建的合约实例,而是从这个地址把这个合约加载进来。DApp 和智能合约关键的交互就是两点,一个是读取合约数据,还有一个就是提交数据。那可以看到这里面我们在界面上显示三个属性,一个是管理员,一个是玩家的数量还有一个是合约里面奖池的金额,也就是合约实例他的帐户余额,这里面调的三个接口都是异步的。渲染合约数据因为是 React 语法也比较简单,DApp 开发的同学一定要注意单位之间的相互转换,我们展示给用户的是ETH。修改合约数据有一个是触发点在下方,给这个按钮绑 onClick,里面做的事情实际上是调取了合约的方法然后把组件状态做了一些变更。在提交交易的时候那我们在组件上设置 loading 状态,loading 状态下按钮是不能重新点击的,然后调 participate,如果安装了 Metamask,传给合约的值要填写进去,等我们这个操作完成后,我们会把这个页面刷新一下,合约数据状态会被重新加载。真正要做出用户友好的 DApp,需要在这个基础上做很多的事情,比如说点击按钮并安装了这个 Metamask 的之后,用户的屏幕上马上就弹出了一个 Metamask 交易确认界面,会使用户疑惑,我明明在用你这个网站怎么出来了一个我没有见过的东西,弹出 Metamask 交易确认框过程当中需要给用户一些提示,让用户不会感觉到意外。抽奖 DAPP DEMO抽奖 DApp 流程我已经部署到我在阿里云上的一台机器上面,部署的过程跟传统的 WEB 应用的部署类似,部署前需要对代码做构建,构建使用 create-react-app 内置的构建脚本就可以了,构建产生的是纯静态文件,然后我们用 express 来启动极简的 http 服务,管理服务进程使用 pm2,部署和构建的过程也可以使用 npm script 串起来。结束语到这里我要分享的内容就结束了,区块链领域虽然已经存在了 9 年,但是开发者大量涌入是在最近这一两年的时间,这个领域里面有很多的概念的同时,也有比较好的实践,欢迎大家在微信群里跟我多多交流,谢谢。
2023年03月24日
5 阅读
0 评论
0 点赞
2023-03-24
技术形态与成交量分析
人生没有如果,命运不相信假设。曾经的拥有,感恩就好;错过的美丽,回味就好;爱过的人,记得就好,无须苦苦纠结,无须时时懊恼,轻装上阵,才能有一个轻松快乐的旅程。 复制代码一、顶部形态1. 特征一轮上涨趋势已经持续较长时间,或币价已经有较大的上涨幅度 趋势即将反转的第一个信号,经常是重要的趋势线被突破 大盘币开始向下破位是整个市场的危险信号 各项指标走坏(均线、MACD 等) 顶部形态波动性较强 顶部形态形成的时间越长,形态越大,转势后的下跌幅度也越大 顶部形态形成的时间要比底部形态形成的时间短 顶部形态的出现往往表现为放量特征 2. 单峰顶 - V 字顶,V 形反转经过长期的上涨,市场处于失控的状态 成交量常常放量,也有一部分呈现量价背离,越往后越缩量 见顶时常常是经典的 K 线反转组合 结合岛形反转意义更强烈(岛形反转币圈较少见) 3. 单峰顶 - 圆弧顶经长期上涨之后滞涨,走出一个圆弧形转而下跌 先放量上涨后圆弧顶逐步缩量,之后放量下跌,放量的圆弧也有,但是较少 中间的小 K 线常常会有较长的上影线 圆弧顶往往时间较长,反转后破坏性较大 出现概率较小 4. 双峰顶 - M 形顶最常见的顶部形态之一,多数右峰高度小于左峰少数高于左峰 交易量往往第一个峰较重,第二个峰较轻 跌破 D 点后常常会出现反扑,反扑常回向 D 点附近 跌破 D 点时交易量放的越大,反扑的余地便大为减小,同时反扑应伴随较轻的交易量 5. 延伸 V 形 - 单头顶左延 V(左头肩)、右延 V(右头肩) V 形顶变体,具备 V 形顶的特征 左肩、右肩一般向下或者横盘(逆着原趋势) 在左肩、右肩时成交量往往会有所下降,恢复趋势后成交量再次回升 6. 头肩顶、三重顶三个山峰,中峰最高,非常常见可靠的顶部形态之一 多数右峰高度小于左峰,少数高于左峰,单低于中峰 头肩顶每一轮上涨的交易量逐渐减轻为好 跌破 F 点后常出现反扑,反扑常回向 F 点附近,跌破 F 点放量越大反扑的余地越小,同时反扑应伴随较轻的交易量 note一定要杜绝追高:风险第一、利润第二 二、底部形态1. 特征一轮下跌已经持续较长时间,并且有较大的下跌幅度 长期下跌趋势线被突破 大盘币企稳是整个市场企稳的信号 各项指标走好(均线、MACD 等) 底部形态波动性较小 底部形态形成的时间越长,形态越大,转势后的上涨幅度也越大 底部形态形成的时间要比顶部形态形成的时间长 底部形态的出现常常表现为缩量的特征 2. V 形底常见的底部形态,行情波动剧烈能快速获利 前期快速下跌持续缩量之后快速放量反弹 回调一般只有几根 K 线,且快速放量反弹 入场点为缩到地量的 K 线(比前边 K 线一倍左右)或者突破缩量整理的一组 K 线入场 3. 圆弧底经长期下跌后走出一个圆弧形转而上涨 下跌过程逐渐由放量到缩量,之后再次放量向上盘升 圆弧底持续时间越长,反弹后涨幅也会越大 出现概率较小,大周期更容易看到 4. W 底(双重底,双谷底)多数右侧底高于左侧,成交量左侧底偏大,右侧底偏小 双重底之间的时间越长越好,双重底突破时若形态紧凑是第一个买点 双重底突破后多数会有缩量回踩确认,此时也是一个较好的买点 5. 右延 V(右头肩底)V 形底变体,比 V 形底形态更大,可靠性更高 入场点为右肩缩量整理阶段或放量突破右肩 6. 头肩底、三重底头肩底向上过程放量回调缩量为好,右肩向上突破时放量为好 右肩高于左肩最好,但不宜太高,持续时间越长底部越夯实越稳定 头肩底突破时若形态紧凑是第一个买点 头肩底突破时多数会有一个回踩确认,同时也是一个较好的买点 三、中继、持续形态1. 特征处于涨势或跌势中间的整理形态,出现在涨势中后市看涨,出现在跌势中后市看跌 成交量呈现缩量的状态,时间周期通常要短于反转形态 再次放量突破形态为主要入场点 2. 三角形币圈三浪结构居多,股市五浪结构居多,后面每一浪都小于前面浪的高度 上边线向下倾斜,下边线向上倾斜,上下边线延中线对称 突破位置在三角形横向和宽度的 1/2 到 3/4 位置处 三角形整理时逐渐缩量,突破时放量,有时在突破后会有回踩确认 3. 矩形/箱体币圈三浪结构居多,股市五浪结构居多,上下边线水平在一个箱体中震荡 矩形整理时逐渐缩量,突破时放量,有时在突破后会有回踩确认,同时也是一个入场点 4. 旗形、楔形币圈三浪结构居多,股市五浪结构居多,边线沿逆势方向 整理时逐渐缩量,突破时放量,有时在突破后会有回踩确认,同时也是一个入场点 5. 末端楔形币圈三浪结构居多,股市五浪结构居多,一般出现在极速上涨或极速下跌之后,边线上下收敛沿顺势方向 整理时逐渐缩量,呈现量价背离 反转的形态极易出现反转
2023年03月24日
7 阅读
0 评论
0 点赞
2023-03-24
虚拟币背后的区块链技术能给金融行业带来哪些变革
区块链起源于比特币,是在创建比特币时设计的一套分布式数据库技术。区块链具有去中心化、信息高度透明、不易被恶意篡改、数据可追溯等特点。而这些方面恰恰是金融领域多年来容易出问题、或者需要高成本投入解决的问题。区块链技术是互联网金融领域内的重大技术创新,他对现有金融基础设施产生颠覆性破坏的同时又有神奇的创造。信任是金融业的基础,为维护信任,传统的金融业的发展催生了大量的高成本、低效率、单点故障的中介机构,包括托管机构、第三方支付平台、公证人、银行、交易所等。 区块链技术使用全新的加密认证技术和去中心化共识机制去维护一个完整的、分布式的、不可篡改的账本,让参与者在无需相互认知和建立信任关系的前提下,通过一个统一的账本系统确保资金和信息安全。区块链接的分布式记账、P2P网络架构、基于机器算法的协商一致的自治协议、安全的数据储存传输使用规则、可持续运行的激励机制、开放式的系统来最大程度的去中心化,确保这个系统对任何用户都是“中性”和“可信”的, 从而为交易各方的经济活动建立信任环境,这对金融机构来说具有重大的意义。区块链技术的嵌入则可能会将互联网金融的意义深化,其中一个重要方面是,可通过程序化记录、储存、传递、核实、分析信息数据,从而形成信用。相较于传统的信用形成方式,区块链可省去大量人力成本、中介成本,所记录的信用信息更为完整、难以造假。除了上述提到的特性外,区块链能够被称为颠覆性技术的主要原因是智能合约。智能合约意味着区块链交易远不止买卖货币这些交易,将会有更广泛的指令嵌入到区块链中。传统合约是指双方或者多方协议做或不做某事来换取某些东西,每一方必须信任彼此会履行义务。而智能合约具备三个特点:自治、自足、去中心化,智能合约无须彼此信任,因为智能合约不仅是由代码进行定义的,也是由代码强制执行的,完全自动且无法干预。在区块链2.0中,重要特性是的是智能合约和智能资产,这些是可编程金融经济的技术基础,会给金融服务业带来最具颠覆性的改变。目前已有多家金融机构通过各种方式布局区块链领域,区块链技术在金融的应用越来越广泛和深入,下面列举一些比较主流区块链的金融应用场景。1.证券登记发行与交易利用区块链技术的安全透明可靠性,可以大大减少交易所操作成本,提高操作速度。通过区块链来发行的数字股票证券,将证券的登记、交易、结算和信息完全记录在去中心化账本中。其中,纳斯达克已经推出其基于区块链技术而建立的新平台 Linq ,该平台将促进其私人证券市场的股份以一种全新的方式进行转让和出售。Linq的客户们将会有一个让人容易看懂的历史发行记录,并且能转让他们的证券,让他们的记录更容易的进行审核,在发行治理和所有权转让方面赋予他们更多的权限。2.投票系统代理投票就是由一家上市交易所使用一项重要而又费时的操作,在整个股票市场里,股东投票不仅非常频繁,也是很重要的程序。如果能通过区块链的方式,可以以非常低成本进行使用区块链技术管理代理投票系统可以让股东们不必出席公司周年大会就能参与在大会上的投票。基于区块链的投票,节省成本的同时,也避免舞弊或其他无效投票,将更侧重于透明性、安全性和可跟踪性,另外配合智能合约,更可以推动投票后的相关合约和流程的自动执行。交易清算 传统的金融交易清算周期长和成本高昂,引入区块链技术,能够加快传统金融交易中心化的交易缓慢和低效的后端运作,并且重塑交易和结算流程。区块链的分布式账本和智能合约技术特性,能够为金融市场带来庞大的低成本计算能力和实时清算能力,它能够让数字资产在交易的对手方之间进行高效移动,而不需要任何中央机构来负责记录交易。一个共享的数字公开账本能够持续被维护,确认所有参与链上的交易,防止欺诈,对全球金融交易、清算和结算带来了一个重大的变革机会。澳大利亚股票交易所正在选择使用区块链技术,作为其清算和结算系统的替代品,他同一家名为Digital Asset的美国公司合作,来为自己搭建新的交易系统,因为区块链能够降低清算和结算交易的成本和复杂性,并能节省时间。4.权益证明与股权众筹区块链每个参与维护节点都能获得一份完整的数据记录,利用区块链可靠和集体维护的特点,可对权益的所有者确权。对于存储永久性记录的需求,区块链是理想解决方案,适用于土地所有权、股权交易等场景。区块链股权登记,将充分利用区块链账本的安全透明、不可篡改、易于跟踪等特点,记录公司股权及其变更历史。股权所有者凭借私钥,可证明对该股权的所有权,股权转让时通过区块链系统转让给下家,产权明晰,记录明确。整个过程无需第三方的参与。股权众筹基于这个体系,可以进一步促进股权流通和资源共享,股权转让和登记更安全便捷,众筹平台之间投资人和项目可共享。而区块链的智能合约可以跟踪募资过程,设定达到众筹目标自动从投资者账户划款到创业者账户,创业者以后的预算、开销可以被跟踪和审计,增加透明度,更好的保障投资者权益。征信 金融经营的核心价值在于信用,可以说没有信用就没有金融。区块链技术天然适合征信系统,区块链的特性如:数据不可逆、无法篡改,数据由全体参与者共同维护等特性,如果大量的信用和交易数据存在区块链里面,基于这个数据的分析和挖掘会大量再次进一步降低我们征信成本。传统的征信主要采用的模式是中心记录,中心查询模式,存在信息不完整、维护成本高、数据滞后等问题。而征信数据的查询也存在不完整、数据不准确、使用效率低、使用成本高等问题。在征信这一领域,区块链的优势在于依靠程序算法自动记录海量信息,并存储在区块链网络的每一台计算机上,并存储在每个节点上,信息透明,防止篡改,使用和维护成本低。6.数字票据数字票据是结合区块链技术和票据属性、法规、市场,开发出的一种全新的票据展现形式,与现有的电子票据体系的技术架构完全不同。数字票据既具备电子票据的所有功能和优点,又融合了区块链技术的优势,成为了一种更安全、更智能、更便捷、更具前景的票据形态。应用了区块链技术的票据交易,所能彻底解决许多违法违规的问题。一张票据从申请、发行、交易、承兑,这整个流程的关键信息,都会记录在区块链上,无法篡改数据。数字票据一旦交易,将不会存在赖账现象,同时也便于监管部门审计和查询,实现监管政策全覆盖和硬控制。另一方面,数字票据里面的数字货币转移路径明确,也是无法被第三方经手的。外汇转账和结汇 高昂的手续费和漫长的转账周期一直是跨境支付和结汇的痛点。而基于区块链或分布式网络技术的跨境汇款和结汇可以在去中心化的机制下使用户以更低的费用和更快的速度完成跨境转账和结汇。基于区块链的全球转账和结汇系统一方面通过引入网关系统来解决非熟人之间转账汇款的信任问题,用户与网关之间的关系在整个系统中反映为一种债权债务关系,这种债权债务关系会通过分布式网络储存在若干个服务器上,服务器之间以P2P的方式进行通信以避免单一、集中式服务器所带来的各种风险,系统通过一定的加密技术确保数据安全。;另一方面根据共识,设置多个可选择结算加密数字货币来在每个交易过程中起到一个类似保证金和交易费的作用,由此来提高恶意攻击者的攻击成本以保证运行安全。8.支付当前的支付模式,不论是银行体系的支付,还是第三方支付公司的支付,都是中心维护模式。交易记录,账户余额,账户安全管理都是以中心支付系统为核心来构建的,现行的支付存储体系由很多机构以及庞大的基础设施系统组成,在互联网化的今天,这一体系实际上牺牲了技术性的效率,使用成本非常高。这样的支付体系存在着安全风险和单点故障、基础设施上投入太多、维护成本高、垄断和集体欺诈等诸多问题。区块链技术改变移动支付的几种方式:更安全:以区块链技术为支持的交易是基于一个防篡改的账本,想要闯入用户账户会非常的困难。即时支付:通过使用区块链的分布技术,支付就能够真正地达到即时。P2P借贷:通过使用区块链技术,借款人可以直接获得贷款而不需要传统银行或金融机构的介入。跨境支付:区块链可以允许移动用户向世界上任何人进行转账而不需要支付高额的服务和交易费用。可追溯支付:所有的交易都记录在一个公开的账本上,所有商家可以监视支付交易,可以衍生配合更多的联合营销手段。物联网支付:物联网和区块链技术集合,简化你所有的设备之间的连接,随时随地通过智能物联设备进行消费和支付而不用担心诈骗。数字货币 从2009年比特币诞生以来,在全世界掀起了很大浪潮,当然也有引起了不小的争议和对比特币的抵制。但是从最近一两年开始,国家和金融机构都开始关注比特币背后的区块技术,他能够在现在的金融体系里面起到什么作用,是不是可以提升效率降低成本。各国央行探索电子货币领域(现在简称为区块链金融或互联网金融),不再是探索禁止其进入市场,而是希望开发出完全替代现金的数字货币。央行们目前正积极和开发数字货币,未来数字货币不仅前景明朗甚至已经上升到国家战略层面,数字货币的发行不仅仅会重塑存款人的行为方式,也会重构整个经济的运行模式。基于区块链等技术的数字货币,将可以有效降低传统纸币发行、流通的高昂成本,提升经济交易活动的便利性和透明度,同时有助于建设全新的金融基础设施,进一步完善支付体系,提升支付清算效率,推动经济提质增效升级。除了这些,区块链正在更广泛的金融领域在做出更大范围的探索,如公共养老金登记注册、债券、联合贷款、互惠信贷、回购交易、抵押品管理、期货和期权等等应用。区块链技术,正为金融走向全面数字化、去中心化、智能化等方面提供了全新的思路,他将重新定义现代金融和创造更多新的商业和经济模式。
2023年03月24日
9 阅读
0 评论
0 点赞
2023-03-24
Showtime 网站正利用浏览者的 CPU 挖门罗币
原文链接:www.solidot.org
2023年03月24日
7 阅读
0 评论
0 点赞
2023-03-24
两张趣图理解http状态码的含义
原文链接:mp.weixin.qq.com
2023年03月24日
8 阅读
0 评论
0 点赞
2023-03-24
[英] Facebook, Libra, and the Long Game
原文链接:stratechery.com
2023年03月24日
11 阅读
0 评论
0 点赞
2023-03-24
一文读懂Facebook加密货币项目Libra白皮书要点(文末附白皮书中文版)
原文链接:mp.weixin.qq.com
2023年03月24日
6 阅读
0 评论
0 点赞
2023-03-24
a16z 总结的一份区块链及数字货币知识图谱
原文链接:a16z.com
2023年03月24日
7 阅读
0 评论
0 点赞
2023-03-24
360发现区块链史诗级漏洞,可以接控制和接管EOS上运行的所有节点
原文链接:mp.weixin.qq.com
2023年03月24日
7 阅读
0 评论
0 点赞
2023-03-24
三分钟了解数字人民币
前言近期,京东和政府合作,开展了一场数字人民币的试点大战。正是这一战,正式拉开了数字化货币的帷幕,传统的流通货币,以一种崭新的面貌出现在我们面前。什么是数字人民币先摘取维基百科中的一段话:数字人民币(E-CNY),又称数字货币电子支付(英语:Digital Currency Electronic Payment,缩写:DCEP),是中华人民共和国法定货币人民币尚未正式发行的数字货币形式,目前由中国人民银行小规模试点发行,将主要应用于流通中现金(M0),由指定运营机构参与运营并向公众兑换,与人民币的纸钞和硬币等价。是不是看得一脸疑惑?其实简单来说,数字人民币就是人民币,数字只不过是它的修饰词,意为数字化。所以数字人民币的本质是人民币,等同于我们的现金,它在你的手机里和在你的钱包里的效果是一样的。它的汇率也是和人民币是一比一的,并且已经有着等同于现金的法律意义。2020年10月23日,中国人民银行就《中华人民共和国中国人民银行法(修订草案征求意见稿)》公开征求意见。根据征求意见稿第十九条,加入了“人民币包括实物形式和数字形式”这一条文,这亦代表数字人民币将赋予法律地位。那这个时候有人会问了,数字人民币和支付宝支付,微信支付有什么区别呢?首先我们要明确一个概念,数字人民币是货币,移动支付是支付方式。前者是实打实的钱,后者是付钱的一种方式。支付宝,微信等应用其实是叫做支付宝钱包,微信钱包。他们做的事情是将我们线下的钱包变成了线上,然后我们钱包里的钱,以数据的形式展示,但是它们依旧是在银行中的。我们的每一次移动支付,都好比是去银行进行汇款,把一笔笔钱汇到老板,商贩,朋友的银行卡中。只是第三方软件帮我们减少了这些繁琐的流程。在我们看来就是我们和商户的直接交易。而数字人民币的交易是是通过数字人民币 APP 这个专门的钱包为载体的一种货币之间的交易。我们从自己的数字人民币 APP 从中取出一笔钱,放到了对方的数字人民币 APP 里。这个行为和以前从你的钱包里拿出现金来结账是一模一样的。同时,这笔钱只保存在这个 APP 中,与个人账号绑定,并不会存储到银行,也不会获得银行的利息,与躺在钱包中的现金是一模一样的。移动支付和数字人民币有着类似的使用体验,但是却是完全不同的意义。为什么要做数字人民币既然现在移动支付如此便捷,为何还要做数字人民币呢?其中的原因非常复杂,并非一个程序员三言两语就能说清楚的。这里只能谈谈作者的简单理解。首先是数字货币的大战,人民币需要入场。数字货币发源于比特币。具体什么是比特币就不多做介绍了,相信大家多多少少有一定的了解。而在一切内容数字化的互联网时代,货币的无纸化也是一个大趋势。目前比特币的出世,已经逐渐入侵了全球原本稳定的货币体系。但是比特币由于其特殊性,没有国家背书,价值是非常不稳定的,目前还无法融入货币体系。但是比特币所采用的区块链技术却是可以借鉴的。数字人民币借此机会,提升货币无纸化进程,转入数字货币的战场,提前布局,建立自己在数字货币领域以及对应技术领域的话语权,从而摆脱美元霸权的固有体系。其次就是无纸化以及区块链技术所带来的好处:降低了纸质货币的成本,其中包括印钞成本,流通中的损坏; 数字技术更大程度上可以防伪,降低假钞带来的危害; 拥有匿名可追踪的特点,即保护了隐私,又能够很大程度上打击洗黑钱,偷税漏税,非法集资等违法犯罪行为; 在离线情况下依旧可以交易,摆脱了移动支付对于网络的依赖。 最后还有一点即是,可以摆脱移动钱包,银行等第三方交易所带来的手续费,回归到现金时代简简单单的交易。这或许也是大家没有意识到的。总结作为一个程序员,对于货币体系的认知还是非常片面的。这篇文章只是从个人角度去理解数字人民币,更加清晰我们所做的业务的意义。业务本身不仅仅是一个任务,程序员也并非是完成任务的工具人。通过一次业务,我们能够更加清晰的把握部门的方向,了解社会的方向。
2023年03月24日
9 阅读
0 评论
0 点赞
1
...
78
79
80
...
109