V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 支持 Solana 登录

你可以在 V2EX 设置中绑定 Solana 地址,然后就可以用 Phantom / Glow 登录 V2EX。

Get V2EX Coin

9raUVuzeWUk53co63M4WXLWPWE4Xc6Lpn7RS9dnkpump

timqian
V2EX  ›  Solana

做了一个 0 手续费交易 $V2EX 的工具: puzi.io

  •  
  •   timqian · 2 天前 · 2641 次点击

    🔗 直达链接:puzi.io/trade/v2ex

    为什么做这个?

    看到目前交易 $V2EX 即使是最优方案也要收 0.3% 手续费,于是我开发了这个完全免费 (仅需 gas) 的交易工具。

    怎么用?

    1. 连接钱包
    2. 设定数量和价格
    3. 上架代币

    核心特性

    • 0 手续费:合约层面不收取任何费用,只需支付链上 Gas
    • 完全开源:前端和智能合约代码全部开源,欢迎审计
    • 去中心化:基于挂单撮合机制,无中心化控制
    • 支持多币种:除了 V2EX ,还支持交易任意 SPL 代币

    相关链接

    其他功能

    除了交易 V2EX ,你还可以:

    • 交易其他代币(如 WSol
    • 在自己的铺子上架任意 SPL 代币供他人购买

    ⚠️ 免责声明

    这是一个实验性的开源项目。虽然代码经过多轮审查( GPT 和 Claude 各审了两遍),但仍可能存在未知风险:

    • 建议先用小额测试
    • 欢迎大家 review 代码
    • 使用前请了解相关风险,损失自负

    发现 bug 或有改进建议? 欢迎在 GitHub Issues 提出,一起让这个工具变得更好!

    44 条回复    2025-08-29 11:30:24 +08:00
    JoeJoeJoe
        1
    JoeJoeJoe  
    PRO
       2 天前
    op 的智能合约是交了两年租金么?
    betteron
        2
    betteron  
       2 天前
    @JoeJoeJoe 问下,sol 上部署合约需要多少 sol ?两年租金是啥意思
    channg01
        3
    channg01  
       2 天前
    @betteron #2 部署智能合约花 sol 的,如果够了多少就永久免租了,关了程序能退回。大概两三个 sol ,我估计都是直接用 anchor deploy 的。
    JoeJoeJoe
        4
    JoeJoeJoe  
    PRO
       2 天前
    @betteron 之所以问两年租金是因为 solana 有一个两年押金免租金的规则

    部署合约需要多少 sol 取决于你的程序大小, 详细可以参考这篇 blog: https://blog.csdn.net/qq_33842966/article/details/137547561
    timqian
        5
    timqian  
    OP
       2 天前
    @JoeJoeJoe 我这个是交了两年租金所以永久免租的,而且只要合约上有其他用户的挂单,任何人包括我自己无法收回这个租金。所以我理解这个合约一旦有人用起来就 "和 solana 共存亡了"
    channg01
        6
    channg01  
       2 天前


    总计支付好像不对吧
    JoeJoeJoe
        7
    JoeJoeJoe  
    PRO
       2 天前
    @channg01 #6 这个地方的购买数量不对好像, 实际是按 1 个 v 币算的

    JoeJoeJoe
        8
    JoeJoeJoe  
    PRO
       2 天前




    好像是这个数量的格式问题, 带着","计算是按照 1 来算的
    timqian
        9
    timqian  
    OP
       2 天前
    @channg01 @JoeJoeJoe 感谢反馈,这个前端显示有点问题,目前需要选中数量重新填写一下,否则就是购买一个币,我来修复一下
    timqian
        10
    timqian  
    OP
       2 天前
    @channg01 @JoeJoeJoe 已修复!
    zenfsharp
        11
    zenfsharp  
       2 天前
    厉害了,参与一下
    ooTwToo
        12
    ooTwToo  
       2 天前
    这是 C2C 撮合,交易靠转账?思路不错。
    zenfsharp
        13
    zenfsharp  
       2 天前
    哎?怎么使用 SOL/V2EX 交易对?
    timqian
        14
    timqian  
    OP
       2 天前
    #12 @ooTwToo 大概是这个意思,用户 A 可以把任意代币放在托管账户,用户 B 使用用户 A 指定的另一种代币来交换用户 A 的代币。合约在此: https://github.com/timqian/puzi.io/blob/main/program/programs/puzi/src/lib.rs

    #13 目前 V2EX -> SOL 只能在自己铺子上架,还没有一个像 puzi.io/trade/v2ex 这样的界面,如果需要的人多,也可以加一下
    mazyi
        15
    mazyi  
    PRO
       2 天前
    这种在币价波动剧烈的时候,可以来套利哈哈哈
    zenfsharp
        16
    zenfsharp  
       2 天前
    可不可以理解为像股市一样挂单有?

    但是我的理解是这样的:

    - 如果池子里的便宜,我就直接在池子里买;
    - 如果挂单的便宜,挂单的人就撤单放在池子里卖了
    - 因此能在这里挂着的,只跟池子里的即时交易只差一丢丢手续费而已
    - 而我挂上来的单子,比池子里即时交易的价格高了就卖不出去,低了我就亏
    - 所以感觉是一个纯赔钱的买卖

    是这样吗?
    ooTwToo
        17
    ooTwToo  
       2 天前
    我用 Calude4 审计了一下合约,存在重入攻击漏洞:
    这是一个基于 Solana 的去中心化交易所(DEX)智能合约,实现了代币交易的基本功能:创建订单、购买代币和取消订单。

    ### 🔴 发现的安全问题 1. 重入攻击风险 (高危)
    - 问题 : purchase 函数中先转账给卖家,再从托管转账给买家,存在重入攻击可能
    - 影响 : 恶意卖家可能通过重入攻击多次提取资金
    - 建议 : 使用检查-效果-交互模式,先更新状态再进行外部调用 2. 价格计算精度损失 (中危)
    - 问题 : 第 58-65 行的价格计算使用整数除法,可能导致精度损失
    - 影响 : 买家可能支付不准确的价格,特别是小额交易
    - 建议 : 使用更精确的定点数计算或四舍五入机制 3. 订单 ID 冲突风险 (中危)
    - 问题 : listing_id 由用户提供,可能导致同一卖家的订单 ID 冲突
    - 影响 : 新订单可能覆盖现有订单,导致资金损失
    - 建议 : 使用自增计数器或时间戳生成唯一 ID 4. 缺少滑点保护 (中危)
    - 问题 : 购买时没有最大价格保护机制
    - 影响 : 用户可能在价格变动时支付超出预期的费用
    - 建议 : 添加 max_price 参数进行滑点保护
    timqian
        18
    timqian  
    OP
       2 天前
    #16 @zenfsharp 是挂单。

    股票买卖,币安/okx ,或者链上也有很多挂单机制的交易所。这个项目和他们不同的点是

    - 无手续费
    - 去中心化
    - 开源

    至于赔钱还是赚钱,是由你的操作决定的。这个工具就是在某些情况下可以给你节省一些手续费。
    zenfsharp
        19
    zenfsharp  
       2 天前   ❤️ 1
    @timqian 👌多谢释疑

    给 OP 创意点个赞👍
    timqian
        20
    timqian  
    OP
       2 天前
    #17 @ooTwToo 应该不会有重入攻击,Solana 的交易是原子性的,要么全部成功,要么全部失败,不允许中途再调用其他合约
    timqian
        21
    timqian  
    OP
       2 天前
    @ooTwToo 你把我的回复告诉他让他再确认下哈哈
    FireFrog
        22
    FireFrog  
       2 天前   ❤️ 1
    类似 cow 的前期思路。

    现在市面上的 dex 基本要交正滑点、池子费用、平台手续费。meme 币的平台手续费基本都高,平台手续费为 0 的也有,jupiter 的 manual 模式。不走池子的 cow 也是要收正滑点的,而且不支持 Solana 。

    如果 op 要做大做强的话👍,可以参考 cow 的思路。客户提交需求单(不转账,仅签名需求,无 gas 费)->进行匹配,需求互补->匹配失败则打包一段时间内的需求单,面向 solver 拍卖竞价。
    yuhuazhu
        23
    yuhuazhu  
       2 天前   ❤️ 1
    很棒,能挂单成交就很 nice
    timqian
        24
    timqian  
    OP
       1 天前   ❤️ 2
    @FireFrog 感谢建议和这些信息!我暂时应该不会做这么复杂,这个工具之所以取名叫“铺子”,是因为我之后还会增加创建 token 来售卖的功能,比如用来售卖自己产品的会员,服务等等。目前这个模式比较合适和简单一些
    yuhuazhu
        25
    yuhuazhu  
       1 天前   ❤️ 2
    报告,0.11 的 V2EX 被我买光了
    Livid
        26
    Livid  
    MOD
    PRO
       1 天前   ❤️ 1
    太酷了。

    这其实就是一个 onchain OTC 。
    bcbcddd888
        27
    bcbcddd888  
       1 天前
    主要是这个买卖只能在铺子上进行吗?还是自动发到代币流动池?哥 你这个可以更新一下 更新成支持现价销售的 不用输入价格的 输入价格可以是挂单 并且支持 一定比例的销售 例如一次卖百分之 10 20 30 这样 希望能被看到
    bcbcddd888
        28
    bcbcddd888  
       1 天前
    你应该为这个铺子创建一个代币 代币收入可以用来运行网站
    Livid
        29
    Livid  
    MOD
    PRO
       1 天前
    cc @chaojijun

    这种感觉很神奇,我之前设想的可能的工具非常接近这个。没想到这么快就有了。
    timqian
        30
    timqian  
    OP
       1 天前
    @bcbcddd888 感谢建议,目前买卖只支持在铺子上进行,暂时没有接入其他流动性池子和更复杂功能的打算
    timqian
        31
    timqian  
    OP
       1 天前   ❤️ 1
    @Livid 确实,之前站长的 OTC 操作,也是启发我做这个工具的灵感之一,当时在想,两个如果不是非常熟悉的人,进行这种交易的时候如果有这么一个工具就好了
    bcbcddd888
        32
    bcbcddd888  
       1 天前
    @timqian 哥 但是如果我想卖其中一个 MEME 币 必须上架咱们铺子 也必须咱们铺子上有用户来买才能完成闭环?应该要考虑接入池子 这样才能更快买卖。PS:麻烦您看一下您推特私信
    timqian
        33
    timqian  
    OP
       1 天前
    @bcbcddd888 对的,目前如果你要卖某个 meme ,需要自己已经找好意向买家了。接入池子这种可能还是用 jup 那种交易聚合器好点
    JoeJoeJoe
        34
    JoeJoeJoe  
    PRO
       1 天前
    @timqian #24 我一直想做一个类似的功能, 一直在学合约开发, op 的这个项目给我很大的帮助. 再次感谢
    Sunyin
        35
    Sunyin  
       1 天前
    有点以前玩 DNF 拍卖行那味儿,给 OP 点个赞
    channg
        36
    channg  
       1 天前
    是需要用户支付 pda 的费用吗?订单结束返还吗?
    timqian
        37
    timqian  
    OP
       1 天前
    @channg 对的
    timqian
        38
    timqian  
    OP
       1 天前
    @channg 普通代币挂单大概要 0.003 sol 租金,取消订单或者卖完时回收。如果是挂单卖 sol, 因为要创建一个 wsol 的 account ,还有 0.002 左右的租金,会在 unwrap wsol 的时候自动返还
    wwppp
        39
    wwppp  
       1 天前
    现 金能买吗?
    HomeZane
        40
    HomeZane  
       1 天前
    一直在加载交易数据中
    mangoDB
        41
    mangoDB  
       1 天前
    看起来很酷,不知道交易安全性是否可靠?#17 的担忧也是我好奇的点。
    timqian
        42
    timqian  
    OP
       1 天前
    @HomeZane 好像被公共 RPC 节点好像限制了,我挂上了自己的节点,现在应该好了
    Usaki
        43
    Usaki  
       1 天前
    在这里交易的话,价格会不会时时刻刻影响链上的价格呢,打比方我抛售了 1000w 的 V2EX 币,市场上是不是也会大幅度跌落?
    betteron
        44
    betteron  
       1 天前   ❤️ 1
    @Usaki 我尝试使用大白话的角度,给你解释你的疑问❓

    1. 东边集市 M 和西边铺子 P, 苹果 A, 银子 S

    2. 集市里的商户拥有 A, 群众拥有 S ,他们每日在上面买卖

    3. 集市里的所有 A 因为冬日的来临,被大伙儿纷纷抢购,这个时候 A 的价格会被抬高,当然也会因为隔壁村今年 A 产品很高而被贬值,这就是价格的波动,而这个集市你可以理解为 pump 池子

    4. 但是这个时候 P 家里有 1000 个苹果,他只是参考一个大概 M 的价格,然后定个价,我就这么多,任何时候你给我对应价格的钱,苹果拿走

    综上,我认为铺子 P 的苹果不多,价格不会波动, 铺子 P 的苹果很多? 铺子老板不傻,不会挂低于市场价格,如果有人收购了这么大量的苹果,进而流入市场,那么市场价格会受波动

    ps:op 的合约,更多的是价值 token 交换的中间商,拓展开来,我有如下思路: 我有一个产品(虚拟或者实物)需要用户购买,那么是不是我可以将我的虚拟产品转为 token ?然后挂到铺子,可以任意 token 购买,貌似和以往的充值相比,更加易用? 总之,这个 op 的这个思路太棒了,我觉得应该有很多实际的应用场景在。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2755 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 03:54 · PVG 11:54 · LAX 20:54 · JFK 23:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.