分类
外匯保證金交易

了解最先端交易方法

临塘而渔 ​

了解最先端交易方法

朋友说:“今年缺电是因为电动车多了!”

当然她是开玩笑的。
不过确实有人认为或者说是担心,电动车多了后电会不够用。
所以我们来粗算算。
假如全国所有车全部变成电动车。(长途运输的大卡车和大客车也是电动的全部用快充和换电,家用车就更不用说了。.

$沃森生物(SZ300142)$ 15年同两个同学聊沃森,一个医科大学教授博导+临床博士后+管理博士,一个军医大学博士后+国务院津贴专家+生物科技上市公司高管。前者说李黄两个疯子敢想敢干,后者说PCV13和HPV随便成功一个就不得了。
今晚再聊沃森的研发,他们说李云疯黄老邪牛B,真能折腾

做交易员得最先学什么?

临塘而渔 ​

拿篮球作个比方,下单就是技术动作,就像如何投篮,如何运球等等。你会说下单这有技术含量么,其实还真有,市场在不同情况下用什么样的订单,是排在order book里等待成交,还是直接cross the spread,都是满满的经验。而且现在交易技术发达了,订单种类越来越多,不光是传统的market,limit,stop,还有oco啊,contingent啊,bracket啊。现在下单速度越来越快,一般订单本地触发是跟不上的,即使不需要colocation那么快,也至少需要放在交易所附近的服务器里。这些东西就像投篮,简单的大家都会,要有竞争优势就得再开发诸如转身跳投,后撤步,后仰之类的技能了;面对不同防守球员使用不同策略,别说不是一个经验的活。

了解最先端交易方法

全局 txpool 的概念有点抽象,因为它不是为所有待处理交易定义一个单独的池。 相反,以太坊主网上的每个节点都有自己的交易池,它们共同构成了全局池。

在这里可以做很多事情——很多人都可以做,并使这个 txpool 业务成为一个竞争激烈的市场。

  • 收益农场 —— 你可以观察 DeFi 应用程序之间的交易动态,成为最先检测到收益农场盈利能力变化的应用程序之一。
  • 流动性提供 —— 你检测进出 DeFi 应用程序的潜在流动性变动并根据这些变化采取行动。
  • 套利 —— 你可以检测会影响不同 DEX 代币价格的交易动向,并以此为基础进行套利交易。
  • 抢跑 —— 你可以自动抓取现有的待处理交易,模拟它们以识别交易执行后的潜在利润,复制交易并将现有地址替换为自己的地址,并以更高的矿工费提交,以便你的交易得到在被你复制的交易之前在链上执行。
  • 做 MEV —— MEV 代表矿工可提取价值,它基于矿工理论上可以自由地将任何交易包含在区块中和/或重新排序它们。这是抢跑的一种变体,你无需以更高的费用将交易提交到你从中选择的同一个池中,而是通过矿工将其直接放入一个区块并绕过交易池。

要运行任何以上描述的场景,你需要访问以太坊交易池,并且你需要从交易池中检索交易的方法。 虽然 Chainstack 为你介绍了前者的快速专用节点,但本文重点介绍了你可以查看 txpool 的所有方式。

使用 Geth 检索待处理的交易

由于待处理的交易是你在 txpool 空间中的目标,我们现在将使其成为结构化的工作,并专注于回答以下问题,同时附上实际示例的答案:

  • 如何检索待处理的交易?
  • 为什么要查看全局或本地待处理交易?
  • 我可以在没有 txpool 命名空间的情况下查看全局待处理交易吗?
  • 全局待处理交易是指全局发生的待处理交易,包括你新创建的本地待处理交易。
  • 本地待处理交易严格指你在本地节点上创建的交易。 请注意,你需要为 Geth 启用“personal”命名空间才能发送本地交易。
  • 待处理交易是指由于各种原因而待处理的交易,例如极低的gas、乱序nonce等。
  • Chainstack 当前使用 Geth (Go Ethereum) 客户端。

当我们在 Geth 上创建过滤器时,Geth 将返回一个唯一的 filter_id 。 请注意,从对该特定过滤器的最后一次查询开始,这个 filter_id 只会存在 5 分钟。 如果你在 5 分钟后查询此过滤器,则该过滤器将不再存在。

创建待处理交易过滤器并从中检索数据

创建过滤器

访问过滤器

Web3.js
Web3.py

创建过滤器

访问过滤器

过滤器混淆的常见问题

Web3.py 和pending参数

为什么 web3.py 的输入参数是 pending 而不是包含常用过滤器参数,例如 fromBlock 、 toBlock 、 address 、 topics 。

这是因为 Web3 在内部进行映射。 如果我们查看 web3.py 源代码,当 web3.py 收到一个待处理的字符串时,它 会映射到 eth_newPendingTransactionFilter ,当 web3.py 收到字典参数时,会映射到 eth_newFilter 。

除此之外,web3.py 有 get_new_entries 和 get_all_entries 用于过滤器,但 get_all_entries 在我们的例子中不起作用。 这是因为 eth_newPendingTransactionFilter 没有可用的 get_all_entries 。

从最新块到待处理块的过滤器

过滤器仅在状态更改时返回 new_entries() 。 仅当有新的最新块或待处理块时,此特定过滤器状态才会更改。 因此,只有在有新的最新块或待处理块时,你才会收到更改,即 (eth.getBlock('latest') 了解最先端交易方法 / pending) 。

getPendingTransactions 过滤器

此函数映射到 eth.pendingTransactions ,这是一个检查本地待处理交易的函数,不会为你提供全局交易。

基于 Geth 源代码,只有 pendingTransactions 的 from 字段匹配 将显示你的个人帐户。

订阅是通过 WebSocket 从服务器到客户端的实时数据流。 你将需要一个持续活跃的连接来流式传输此类事件。 你不能为此使用 curl,如果你想通过命令行访问它,则必须使用像 websocat 这样的 WebSocket 客户端。 执行后,待处理的交易 ID 流将开始流入。

对于其他可支持的订阅内容,请查看 Geth 文档:支持的订阅。

Websocat

连接节点

创建订阅

传入流

使用订阅易混淆的常见问题

Web3.js 'pendingTransactions' 和 Geth 'newPendingTransactions'

Web3.js 将 pendingTransactions WebSocket 调用直接映射到 Geth JSON-RPC API 中的 newPendingTransactions 。

要使用 web3.js 订阅待处理交易,你必须使用 pendingTransactions 。

要使用 Geth JSON-RPC API 订阅待处理交易,你必须使用 newPendingTransactions 。

Txpool API

Txpool 是一个特定于 Geth 的 API 命名空间,它在本地内存池中保存待处理和排队的交易。 Geth 的默认值为 4096 个待处理交易和 1024 个排队交易。 但是,Etherscan 报告 待处理的交易数量要大得多。 如果我们查看 Geth 的 了解最先端交易方法 txpool,我们将无法获得所有交易。 一旦 4096 池已满,Geth 就会用新的待处理交易替换旧的待处理值。

如果你需要在节点上存储更大的池,可以在 Geth CLI 选项 上将标志 --txpool.globalslots 调整为更高的值 命令行选项)。 请注意,数字越大,有效载荷越大。

薄饼交易所怎么看K线?Pancakeswap看K线基础教程

薄饼交易所怎么看K线?Pancakeswap看K线基础教程

在Syrup Pools中用户可以通过质押代币CAKE来赚取其他代币。Syrup Pool类似于币安的Launchpool。PancakeSwap会寻找 BSC 上好的项目方合作,在平台上提供代币进行挖矿。只要抵押 CAKE 用户就可以获得这些不错项目的代币,比如 BNB,UNFI,BLK,HARD,VAI,TWT 等。在 SYRUP 池子挖矿比农场挖矿更容易一些,因为只要拥有 CAKE 就可以抵押挖矿。

薄饼交易所怎么看K线?Pancakeswap看K线基础教程

用户通过 CAKE 代币购买彩票,每张售价 10 CAKE,购买彩票花费的 CAKE 将放入彩票奖池。每张彩票上有4 个随机数字(每个数字在 1-14 之间)。开奖时,只要有大于等于2 个数字与开奖数字相同,就能获得奖励。

薄饼交易所怎么看K线?Pancakeswap看K线基础教程

币安智能链中的其他项目方,可以通过 Pancakeswap 的 IFO 来募集资金,用户在参与 IFO时 需要支付的是CAKE/BNB 交易对的 LP Token。