什么是 Gekko?
Gekko 是一款完全开源的 加密货币自动交易机器人,基于 Node.js 与 JavaScript 打造。它最大亮点是「三合一」能力:回测 / 纸盘 / 实盘 任意切换,既可以零风险验证策略,也能全天候直连交易所下单。加密货币、量化交易、自动交易、高频策略这四个关键词贯穿整篇文章,后续内容将与之深度绑定。
一、核心功能概述
| 功能 | 作用场景 | 关键词密度建议 |
|---|---|---|
| 回测器 (Backtest) | 利用历史数据评估策略盈亏 | 回测、策略、量化验证 |
| 纸盘交易 (Paper Trader) | 实时行情+虚拟资金,验证策略最新表现 | 纸盘、模拟盘 |
| 实盘机器人 (Tradebot) | 直接真金白银挂机交易 | 自动化、API 对接 |
👉 一次性跑通回测+纸盘+实盘,用 Gekko 亲身经历诠释零成本试错的价值!
二、安装方案三选一
2.1 Windows & macOS 本地
- 安装 Node.js(≥ v6)
打开终端,执行
git clone git://github.com/askmike/gekko.git -b stable cd gekko npm install --only=production cd exchange && npm install --only=production && cd ..运行
node gekko --ui浏览器访问
http://localhost:3000即可。
如出现 -bash: git: command not found,先去官网装 Git,再重试。
2.2 Linux 服务器(推荐 24×7 运行)
- 重复 2.1 步骤。
编辑
gekko/web/vue/UIconfig.js,改为服务器 IP,实现远程访问:const CONFIG = { headless: true, api: { host: '0.0.0.0', port: 3000 }, ui: { host: 'YOUR_IP', port: 3000, ssl: false } };之后通过
http://YOUR_IP:3000打开界面。
2.3 Docker 一键运行
docker-compose build
docker-compose up -d本地访问 http://localhost:3000;如部署在云端,请把端口 3000 放开公网即可。
三、三步上手流程
3.1 导入历史数据
在「Local Data → Go to the importer!」选择交易所 + 交易对(如 Bitfinex BTC/USD),填入起止日期,点「Import」。
小技巧:即便下载未完成,Gekko 也允许提前回测。
3.2 回测验证收益
- 选取刚才导入的数据集,加载内置策略(MACD、RSI、DEMA 等)。
- 设置参数 → Start Backtest。
- 通过收益曲线、回撤、盈亏比等指标,判断策略是否值得转向纸盘。
3.3 纸盘到实盘
- 纸盘:在「Live Gekkos」里勾选 Paper Trader,填好 API key(仅只读权限即可),观察策略实时表现。
- 实盘:同页面关闭 Paper Trader,改为 Tradebot,需提供 可下单的 API key;建议小额先试单,确保连接无误后再加大仓位。
四、自定义策略秘籍
Gekko 的策略纯 JavaScript 编写,存放于 gekko/strategies/ 目录。新手可从官方示例改起,比如 DEMA、PPO、CCI。
核心思路:
- 多指标组合。RSI + 布林带 + 成交量,能降低假信号。
- 参数优化。使用 GekkoGA 遗传算法,自动枚举上百组参数组合。
- 行情过滤。牛市趋势显眼时可加入简单均线判断,熊市强制空仓。
👉 想把半手动策略写进 Gekko?点这里掌握 30 分钟改造模版
五、交易细节提醒
- 无边际延迟:Gekko 默认使用 限价单(limit),避免瞬间价格滑点导致市价单无法成交。
- 1 分钟 K 线慎开:日内波动剧烈,可能频繁触发止损。
- 费用核算:别忘了把 0.1%–0.2% 手续费写入回测参数,结果更贴近真实。
六、FAQ:常见疑难一次解决
Q1:回测盈利、实盘亏损,原因何在?
A:历史数据无法反映流动性枯竭、交易所 API 卡顿,或过拟合参数。请务必用纸盘至少跑一周。
Q2:我想同时挂多个交易对需要多少内存?
A:单个 Gekko 进程大约 80–120MB。2GB VPS 可跑 8–12 交易对;内存再小,Docker 会自动被系统 kill。
Q3:是否支持币安永续合约?
A:原生 Gekko 仅支持现货。对 U 本位合约可改用第三方 fork,但自行评估风险。
Q4:忘记保存策略代码怎么办?
A:脚本直接存在 strategies/ 文件夹,下次更新版本时用 git stash 保留本地修改即可。
Q5:如何让 Gekko 单向止盈不反向做空?
A:在策略里加布尔变量 long_only,卖出后不再发出买入信号,非常简单三个 if 搞定。
七、实战案例
Z 先生跑一次 DEMA 交叉 策略:
- 交易对 ETH/USDT
- 周期 30 分钟
- 纸盘 7 天盈利 4.6%
- 实盘 1000 USDT,3 周收益 6.1%,最大回撤 1.7%,警觉 API 限速问题后把心跳间隔从 30 秒提高到 90 秒。
数据证明,调整后的参数能显著减少 429 错误出现,直接提升成交率 5% 以上。
八、小结
Gekko 免费、开源、可深度订制,适合想在加密货币量化之路上先刷经验、后小仓位试错的新手,也满足开发者对自动化规律的探索激情。本文多次提到的 回测、策略、API、实盘、纸盘、优化 六个高频关键词,全部围绕零成本验证展开——先确保胜率,再让利润奔跑,才是加密交易的理性姿势。