[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-ctubio--Krypto-trading-bot":3,"tool-ctubio--Krypto-trading-bot":64},[4,23,32,40,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":22},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,2,"2026-04-05T10:45:23",[13,14,15,16,17,18,19,20,21],"图像","数据工具","视频","插件","Agent","其他","语言模型","开发框架","音频","ready",{"id":24,"name":25,"github_repo":26,"description_zh":27,"stars":28,"difficulty_score":29,"last_commit_at":30,"category_tags":31,"status":22},2234,"scikit-learn","scikit-learn\u002Fscikit-learn","scikit-learn 是一个基于 Python 构建的开源机器学习库，依托于 SciPy、NumPy 等科学计算生态，旨在让机器学习变得简单高效。它提供了一套统一且简洁的接口，涵盖了从数据预处理、特征工程到模型训练、评估及选择的全流程工具，内置了包括线性回归、支持向量机、随机森林、聚类等在内的丰富经典算法。\n\n对于希望快速验证想法或构建原型的数据科学家、研究人员以及 Python 开发者而言，scikit-learn 是不可或缺的基础设施。它有效解决了机器学习入门门槛高、算法实现复杂以及不同模型间调用方式不统一的痛点，让用户无需重复造轮子，只需几行代码即可调用成熟的算法解决分类、回归、聚类等实际问题。\n\n其核心技术亮点在于高度一致的 API 设计风格，所有估算器（Estimator）均遵循相同的调用逻辑，极大地降低了学习成本并提升了代码的可读性与可维护性。此外，它还提供了强大的模型选择与评估工具，如交叉验证和网格搜索，帮助用户系统地优化模型性能。作为一个由全球志愿者共同维护的成熟项目，scikit-learn 以其稳定性、详尽的文档和活跃的社区支持，成为连接理论学习与工业级应用的最",65628,1,"2026-04-05T10:10:46",[20,18,14],{"id":33,"name":34,"github_repo":35,"description_zh":36,"stars":37,"difficulty_score":10,"last_commit_at":38,"category_tags":39,"status":22},3364,"keras","keras-team\u002Fkeras","Keras 是一个专为人类设计的深度学习框架，旨在让构建和训练神经网络变得简单直观。它解决了开发者在不同深度学习后端之间切换困难、模型开发效率低以及难以兼顾调试便捷性与运行性能的痛点。\n\n无论是刚入门的学生、专注算法的研究人员，还是需要快速落地产品的工程师，都能通过 Keras 轻松上手。它支持计算机视觉、自然语言处理、音频分析及时间序列预测等多种任务。\n\nKeras 3 的核心亮点在于其独特的“多后端”架构。用户只需编写一套代码，即可灵活选择 TensorFlow、JAX、PyTorch 或 OpenVINO 作为底层运行引擎。这一特性不仅保留了 Keras 一贯的高层易用性，还允许开发者根据需求自由选择：利用 JAX 或 PyTorch 的即时执行模式进行高效调试，或切换至速度最快的后端以获得最高 350% 的性能提升。此外，Keras 具备强大的扩展能力，能无缝从本地笔记本电脑扩展至大规模 GPU 或 TPU 集群，是连接原型开发与生产部署的理想桥梁。",63927,"2026-04-04T15:24:37",[20,14,18],{"id":41,"name":42,"github_repo":43,"description_zh":44,"stars":45,"difficulty_score":10,"last_commit_at":46,"category_tags":47,"status":22},2403,"crawl4ai","unclecode\u002Fcrawl4ai","Crawl4AI 是一款专为大语言模型（LLM）设计的开源网络爬虫与数据提取工具。它的核心使命是将纷繁复杂的网页内容转化为干净、结构化的 Markdown 格式，直接服务于检索增强生成（RAG）、智能体构建及各类数据管道，让 AI 能更轻松地“读懂”互联网。\n\n传统爬虫往往面临反爬机制拦截、动态内容加载困难以及输出格式杂乱等痛点，导致后续数据处理成本高昂。Crawl4AI 通过内置自动化的三级反机器人检测、代理升级策略以及对 Shadow DOM 的深度支持，有效突破了这些障碍。它能智能移除同意弹窗，处理深层链接，并具备长任务崩溃恢复能力，确保数据采集的稳定与高效。\n\n这款工具特别适合开发者、AI 研究人员及数据工程师使用。无论是需要为本地模型构建知识库，还是搭建大规模自动化信息采集流程，Crawl4AI 都提供了极高的可控性与灵活性。作为 GitHub 上备受瞩目的开源项目，它完全免费开放，无需繁琐的注册或昂贵的 API 费用，让用户能够专注于数据价值本身而非采集难题。",63242,"2026-04-02T22:29:19",[14,17],{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":10,"last_commit_at":54,"category_tags":55,"status":22},193,"meilisearch","meilisearch\u002Fmeilisearch","Meilisearch 是一个开源的极速搜索服务，专为现代应用和网站打造，开箱即用。它能帮助开发者快速集成高质量的搜索功能，无需复杂的配置或额外的数据预处理。传统搜索方案往往需要大量调优才能实现准确结果，而 Meilisearch 内置了拼写容错、同义词识别、即时响应等实用特性，并支持 AI 驱动的混合搜索（结合关键词与语义理解），显著提升用户查找信息的体验。\n\nMeilisearch 特别适合 Web 开发者、产品团队或初创公司使用，尤其适用于需要快速上线搜索功能的场景，如电商网站、内容平台或 SaaS 应用。它提供简洁的 RESTful API 和多种语言 SDK，部署简单，资源占用低，本地开发或生产环境均可轻松运行。对于希望在不依赖大型云服务的前提下，为用户提供流畅、智能搜索体验的团队来说，Meilisearch 是一个高效且友好的选择。",56964,"2026-04-05T08:19:14",[13,17,14,20,16,18],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":10,"last_commit_at":62,"category_tags":63,"status":22},223,"Made-With-ML","GokuMohandas\u002FMade-With-ML","Made-With-ML 是一个面向实战的开源项目，旨在帮助开发者系统掌握从设计、开发到部署和迭代生产级机器学习应用的完整流程。它解决了许多人在学习机器学习时“会训练模型但不会上线”的痛点，强调将软件工程最佳实践与 ML 技术结合，构建可靠、可维护的端到端系统。\n\n该项目特别适合三类人群：一是希望将模型真正落地的开发者（包括软件工程师、数据科学家）；二是刚毕业、想补齐工业界所需技能的学生；三是需要理解技术边界以更好推动产品的技术管理者或产品经理。\n\nMade-With-ML 的亮点在于注重第一性原理讲解，避免盲目调包；同时覆盖 MLOps 关键环节（如实验跟踪、模型测试、服务部署、CI\u002FCD 等），并支持在 Python 生态内平滑扩展训练与推理任务，无需切换语言或复杂基础设施。课程内容结构清晰，配有详细代码示例和视频导览，兼顾理论深度与工程实用性。",47108,"2026-04-05T10:42:55",[19,18,14,16,20],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":69,"readme_en":70,"readme_zh":71,"quickstart_zh":72,"use_case_zh":73,"hero_image_url":74,"owner_login":75,"owner_name":76,"owner_avatar_url":77,"owner_bio":78,"owner_company":79,"owner_location":80,"owner_email":81,"owner_twitter":81,"owner_website":82,"owner_url":83,"languages":84,"stars":116,"forks":117,"last_commit_at":118,"license":119,"difficulty_score":120,"env_os":121,"env_gpu":122,"env_ram":122,"env_deps":123,"category_tags":133,"github_topics":134,"view_count":10,"oss_zip_url":81,"oss_zip_packed_at":81,"status":22,"created_at":155,"updated_at":156,"faqs":157,"releases":187},2966,"ctubio\u002FKrypto-trading-bot","Krypto-trading-bot","Self-hosted crypto trading bot (automated high frequency market making) written in C++","Krypto-trading-bot 是一款专为加密货币市场设计的开源高频做市交易机器人。它核心解决了手动交易难以捕捉微小价差、响应速度慢以及情绪化决策等痛点，通过自动化策略在毫秒级时间内完成订单的挂出与撤销，帮助用户在波动剧烈的市场中高效提供流动性并获取收益。\n\n这款工具特别适合具备一定技术背景的开发者、量化交易研究员以及希望自建交易系统的进阶投资者使用。由于需要自行部署和配置策略，它并不适合完全不懂技术的普通小白用户，但对于追求极致低延迟和高度定制化的专业人士而言，它是理想的利器。\n\n其独特的技术亮点在于采用 C++ 编写，确保了极低的系统延迟，在普通硬件上也能实现毫秒级的订单处理速度。Krypto-trading-bot 支持多种主流交易所，内置功能完善的 Web 管理界面，让用户能实时监控交易状态。此外，它基于类 Unix 系统运行，利用内置的 SQLite 数据库实现数据持久化，无需依赖外部服务器，既保障了数据安全又降低了架构复杂度。作为一个高度可定制的工具，它允许用户根据市场变化灵活调整做市策略，是构建专业级自动化交易体系的强大基石。","\u003Cimg align=\"left\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_1194533111e5.jpg\" \u002F>\u003Cp align=\"right\">self reminder:\u003Cbr>\u003Cb>patience is the mother of science\u003C\u002Fb>\u003C\u002Fp>\u003Cbr>\u003Ca href=\"http:\u002F\u002Fciutatrefugi.barcelona\u002Fen\u002Fwelcome-barcelona\">\\*\\*\\* REFUGEES WELCOME! \\*\\*\\*\u003C\u002Fa>\u003Cbr\u002F>&thinsp;&nbsp;&nbsp;&nbsp;&nbsp;\u003Ca href=\"http:\u002F\u002Fmissingmigrants.iom.int\u002F\">\\*\\*\\* FATAL ROUTES? \\*\\*\\*\u003C\u002Fa>\n\u003Cbr clear=\"left\">\n\n[![Release](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Frelease\u002Fctubio\u002FKrypto-trading-bot.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Freleases)\n[![Platform](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplatform-unix--like-111111.svg)](https:\u002F\u002Fwww.gnu.org\u002F)\n[![g0t0 Counter](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_bdbb8645a2f7.png)](https:\u002F\u002Ftinyurl.com\u002Fg0t0docs)\n[![Code Size](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flanguages\u002Fcode-size\u002Fctubio\u002FKrypto-trading-bot.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot)\n[![Software License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-ISC-551a8b.svg)](https:\u002F\u002Fraw.githubusercontent.com\u002Fctubio\u002FKrypto-trading-bot\u002Fmaster\u002FLICENSE)\n[![Software License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-551a8b.svg)](https:\u002F\u002Fraw.githubusercontent.com\u002Fctubio\u002FKrypto-trading-bot\u002Fmaster\u002FCOPYING)\n\n[`K`](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot) is a family of (very customizable) very low latency [market making](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fdoc\u002FMANUAL.md#what-is-market-making) trading bots with a fully featured [web interface](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot#web-ui).\u003Cbr \u002F>It can place or cancel orders on [compatible exchanges](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot#compatible-exchanges) in less than a few milliseconds per order on a decent machine.\n\nIf you don't want to configure or hardcode your own trading strategies in your own machine,\u003Cbr \u002F>\nyou can fund liquidity pools of automated market makers at [tinyman.org](https:\u002F\u002Ftinyman.org\u002F) (or at any other defi out there),\u003Cbr \u002F>just remember:\n- \u003Cb>\u003Cins>never write on any defi website your private keys\u003C\u002Fins>\u003C\u002Fb> (you have to sign transactions, not to share your wallet keys)\n- \u003Cb>\u003Cins>never tell anyone on any chat your private keys\u003C\u002Fins>\u003C\u002Fb> (if you have questions, use a public forum and reject impostors)\n\n### \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_0f4e00b096ee.png\" height=\"64\" width=\"64\"  align=\"middle\" \u002F> Latest version at https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_fc64eea8fcb5.png\" height=\"64\" width=\"64\" align=\"middle\" \u002F> \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_9ae6023b83dc.png\" height=\"64\" width=\"64\" align=\"middle\" \u002F>\n\n[![Build Status](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fworkflows\u002Ftest\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Factions)\n[![Coverage Status](https:\u002F\u002Fimg.shields.io\u002Fcoveralls\u002Fctubio\u002FKrypto-trading-bot\u002Fmaster.svg)](https:\u002F\u002Fcoveralls.io\u002Fr\u002Fctubio\u002FKrypto-trading-bot?branch=master)\n[![Quality Status](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Freview-clang--tidy%20+%20pvs-4cc61e.svg)](https:\u002F\u002Fwww.codacy.com\u002Fgh\u002Fctubio\u002FKrypto-trading-bot\u002Fdashboard)\n[![Open Issues](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fissues\u002Fctubio\u002FKrypto-trading-bot.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues)\n[![Last Commit](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flast-commit\u002Fctubio\u002FKrypto-trading-bot.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot)\n[![Downloads Last Releases](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fdownloads\u002Fctubio\u002FKrypto-trading-bot\u002Ftotal.svg?label=downloads%20last%20releases)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot)\n\nOur bots run on unix-like systems. Persistence is achieved through a built-in server-less SQLite C++ interface.\u003Cbr>Data transfers are directly done from your machine to the exchange using the latest CURL and OpenSSL versions.\u003Cbr>Installation in a dedicated [Debian](https:\u002F\u002Fcdimage.debian.org\u002Fcdimage\u002Frelease\u002Fcurrent\u002F), [Raspberry](https:\u002F\u002Fwww.raspberrypi.com\u002Fsoftware\u002F), [Red Hat](https:\u002F\u002Fdevelopers.redhat.com\u002Fproducts\u002Frhel\u002Fdownload), [CentOS](https:\u002F\u002Fwww.centos.org\u002Fdownload\u002F) or macOS instance without Docker is recommended.\n\nThe web UI is compatible with most web browsers\u002Fresolutions, but Brave or Firefox at 1600px are recommended.\u003Cbr \u002F>Doesn't require configuration of any web server (unless installed behind your own reverse proxy).\n\n\u003Cdetails>\u003Csummary>\u003Cb>K-trading-bot\u003C\u002Fb> \u003Csup>(web UI + CLI)\u003C\u002Fsup>\u003C\u002Fsummary>\nto control a fully configurable high frequency trading engine, with all features suggested by the community:\u003Cbr \u002F>\n\n![trading-bot UI Preview](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_267fec30522f.png)\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>K-+portfolios\u003C\u002Fb> \u003Csup>(web UI + CLI)\u003C\u002Fsup>\u003C\u002Fsummary>\nto show all balances from one exchange, with buttons to create, edit or cancel orders and links to go to markets:\u003Cbr \u002F>\n\n![+portfolios UI Preview](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_36fecb17faf0.png)\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>K-hello-world\u003C\u002Fb> \u003Csup>(CLI)\u003C\u002Fsup>\u003C\u002Fsummary>\nto print the current value of a given currency to stdout:\u003Cbr \u002F>\n\n\u003Cpre>\n _________________________________________\n\u002F Hello, WORLD!                           \\\n|                                         |\n\\ pssst.. 1.00000000 BTC = 56683.49 EUR.  \u002F\n -----------------------------------------\n        \\   ^__^\n         \\  (oo)\\_______\n            (__)\\       )\\\u002F\\\n                ||----w |\n                ||     ||\n\u003C\u002Fpre>\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>K-scaling-bot, K-stable--bot\u003C\u002Fb> \u003Csup>(CLI)\u003C\u002Fsup>\u003C\u002Fsummary>\nto easy mod and start developing a new custom bot.\n\u003C\u002Fdetails>\n\n### Compatible Exchanges\n\nAll currency pairs are supported (use `--list` argument to see all currently tradable pairs on a given exchange).\n\n\u003Ctable>\u003Ctbody>\u003Ctr>\u003Ctd>\u003C\u002Ftd>\u003Ctd align=\"center\">\u003Cb>under maintenance\u003C\u002Fb>\u003C\u002Ftd>\u003Ctd colspan=\"2\" align=\"center\" nowrap>\u003Cb>under development or abandoned\u003C\u002Fb>\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd align=\"center\">\u003Cb>Spot Trading\u003C\u002Fb>\u003C\u002Ftd>\u003Ctd nowrap>\u003Ca href=\"https:\u002F\u002Fwww.coinbase.com\u002Fen-es\u002Fadvanced-trade\">Coinbase\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fhelp.coinbase.com\u002Fen\u002Fcoinbase\u002Ftrading-and-funding\u002Fadvanced-trade\u002Fadvanced-trade-fees\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 2 WebSockets\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.binance.com\u002F\">Binance\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.binance.com\u002Fen\u002Ffee\u002Fschedule\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.binance.us\u002F\">Binance.US\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.binance.us\u002Ffees\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.bitmex.com\u002F\">BitMEX\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.bitmex.com\u002Fwallet\u002Ffees\u002Fderivatives\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 WebSocket\u003C\u002Fi>\u003C\u002Ftd>\u003Ctd nowrap>\u003Ca href=\"https:\u002F\u002Fwww.kraken.com\u002F\">Kraken\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.kraken.com\u002Ffeatures\u002Ffee-schedule\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 2 WebSockets\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.kucoin.com\u002F\">KuCoin\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.kucoin.com\u002Fvip\u002Flevel\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.bitfinex.com\u002F\">Bitfinex\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.bitfinex.com\u002Ffees\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.ethfinex.com\u002F\">Ethfinex\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.ethfinex.com\u002Ffees\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 WebSocket\u003C\u002Fi>\u003C\u002Ftd>\u003Ctd nowrap>\u003Ca href=\"https:\u002F\u002Fwww.gate.io\u002F\">Gate.io\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.gate.io\u002Ffee\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fhitbtc.com\u002F\">HitBTC\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fhitbtc.com\u002Ffee-tier\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fbequant.io\u002F\">Bequant\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fbequant.io\u002Ffees-and-limits\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 2 WebSockets\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.poloniex.com\u002F\">Poloniex\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fpoloniex.com\u002Ffees\u002F\">fees\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 WebSocket\u003C\u002Fi>\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd align=\"center\">\u003Cb>Margin Trading\u003C\u002Fb>\u003C\u002Ftd>\u003Ctd nowrap>\u003Ci>none\u003C\u002Fi>\u003C\u002Ftd>\u003Ctd colspan=\"2\" nowrap>\u003Ci>none\u003C\u002Fi>\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\n\nIf you ask me, [\u003Cimg height=\"20px\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_5dc189ed8659.png\">](https:\u002F\u002Fadvanced.coinbase.com\u002Fjoin\u002FKAME9XG) is the best and most secure by far, so here is my [referral link](https:\u002F\u002Fadvanced.coinbase.com\u002Fjoin\u002FKAME9XG) for both of us to enjoy.\n\nIn case you are looking for referral links to other exchanges, feel free to post a [new issue](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002Fnew?title=Referral%20link%20for%20%5Bexchange%5D) asking to other active users.\n\n## README\n- Documentation\n  - [README](#readme)\n  - [MANUAL](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fdoc\u002FMANUAL.md)\n- Installation\n  - [Docker Installation](#docker-installation)\n  - [Windows Installation](#windows-installation)\n  - [Manual GIT Installation](#manual-git-installation)\n  - [Manual ZIP Installation](#manual-zip-installation)\n  - [Configuration After Manual Installation](#configuration-after-manual-installation)\n  - [Upgrade to the latest commit](#upgrade-to-the-latest-commit)\n  - [Multiple instances party time](#multiple-instances-party-time)\n- Information\n  - [Compatible Exchanges](#compatible-exchanges)\n  - [Application Usage](#application-usage)\n  - [Web UI](#web-ui)\n  - [Databases](#databases)\n  - [Charts](#charts)\n  - [Cloud Hosting](#cloud-hosting)\n- Development\n  - [Build notes](#build-notes)\n  - [Changelogs](#changelog)\n- Humans and Milk Mammals\n  - [Unlock](#unlock)\n  - [Donations](#donations)\n  - [General Discussion](#general-discussion)\n  - [Very Special Thanks](#very-special-thanks-to)\n  - [Help](#help)\n  - [Issues](#issues)\n\n### Docker Installation\n\nSee [etc\u002FDockerfile](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Ftree\u002Fmaster\u002Fetc#dockerfile) file.\n\n### Windows Installation\n\nBefore starting with a manual installation, ensure your target machine has Windows 7 or greater and [MSYS2](https:\u002F\u002Fwww.msys2.org\u002F) installed.\n\nUse MSYS2 Terminal to install `make` (with command `pacman -S make`), then proceed as usual with the installation.\n\n### Manual GIT Installation\n\n0. Ensure you agree to install collaborative non-free software (see [Unlock](#unlock) section).\n\n1. Ensure your target machine has `git` and `make` installed.\n\n2. Download it wherever you want (feel free to customize the suggested folder name K) and execute the installer:\n```\n $ git clone ssh:\u002F\u002Fgit@github.com\u002Fctubio\u002FKrypto-trading-bot K\n $ cd K\n $ make install\n```\n\n3. Open and edit the config file `K.sh` in your favorite text editor:\n```\n $ vim K.sh\n```\n\nTo upgrade anytime see [Upgrade to the latest commit](#upgrade-to-the-latest-commit) section.\n\n### Manual ZIP Installation\n\n0. Ensure you agree to install collaborative non-free software (see [Unlock](#unlock) section).\n\n1. Ensure your target machine has `curl` and `make` installed.\n\n2. Download it wherever you want (feel free to customize the suggested folder name K) and execute the installer:\n```\n $ mkdir K\n $ cd K\n $ curl -O krypto.ninja\u002FMakefile\n $ make install\n```\n\n3. Open and edit the config file `K.sh` in your favorite text editor:\n```\n $ vim K.sh\n```\n\nTo upgrade anytime to the latest release just run `make reinstall`.\n\n### Configuration After Manual Installation\n\nSee [etc\u002FK.sh.dist](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fetc\u002FK.sh.dist) file or better your own copy of `K.sh` file located in the top level path.\n\nIt just contains a few variables with examples. The very end of the file contains the code that starts the bot.\n\nOnce your config file is ready, you can execute it to start the bot:\n```\n $ .\u002FK.sh\n```\n\nAlternatively use `make start` to run `K.sh` in the background using [screen](https:\u002F\u002Fkb.iu.edu\u002Fd\u002Facuy) (to see the output, attach the screen with `make screen` [or run all at once with `make start screen`]).\n\nFeel free to run `make stop` or `make restart` anytime, and don't forget to [read the fucking manual](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fdoc\u002FMANUAL.md).\n\nTroubleshooting:\n\n * If there is no wallet data on a given exchange, double-check the currency symbols with `--list` argument.\n\n Optional:\n\n * See at least once `.\u002FK.sh --help` to trade or `make help` to develop.\n\n * Use your own HTTP Basic Authentication credentials with `--user` and `--pass` arguments.\n\n * Use your own SSL certificate with `--ssl-crt` and `--ssl-key` arguments.\u003Cbr>Otherwise, the insecure built-in certificate is fully featured, but you may need to authorise it in your browser.\u003Cbr>If you want to generate your own certificate see [SSL for internal usage](https:\u002F\u002Fwww.akadia.com\u002Fservices\u002Fssh_test_certificate.html).\u003Cbr>In case you really want to use plain HTTP, use `--without-ssl` argument.\n\n### Upgrade to the latest commit\n\nIf you upgrade while having any instance running in the background, you will need to manually restart it using `make restart` or `make restartall` to start using the latest version.\n\n#### Upgrade under Manual ZIP Installation:\n\nPlease run `make reinstall` to download the upgraded source and executable files.\n\n#### Upgrade under Manual GIT Installation:\n\nFeel free anytime to check if there are new upgrades with `make diff`.\n\nOnce you decide that it is time to upgrade, execute `make upgrade` (or directly `make reinstall` to skip the validation of new commits).\n\nIf you only use `git` to pull the latest source files from the remote branch, you will still need to upgrade or recompile your executable files.\n\nTo not upgrade but instead recompile your own modified source files, use `make lib K` or just `make` (see [Build notes](#build-notes)).\n\n### Multiple instances party time\n\nPlease note, an \"instance\" is in fact a `*.sh` config file; using a single machine with a single installation, you can run as many instances as `*.sh` files you have (limited by the available free RAM).\n\nYou can list the current running instances with `make list`.\n\nIf you haven't defined a config file, `make start`, `make screen`, `make stop` and `make restart` will use the default config file `K.sh`.\n\nTo run multiple instances using a collection of config files:\n\n1. Create a new config file with `cp etc\u002FK.sh.dist X.sh && chmod +x X.sh` (use `X.sh` or any name but keep `.sh` extension).\n\n2. Edit the new config file `vim X.sh`\n\n3. Run the new instance with `.\u002FX.sh` or to run in the background, use `K=X.sh make start`. To attach to the new instance's screen, use `K=X.sh make screen`. To stop the new instance, use `K=X.sh make stop` and to restart it, use `K=X.sh make restart`. The environment variable `K` specifies the filename of the config file that you want to use.\n\n4. Open in the web browser the different pages of the ports of the different running instances, or display the UI of all instances together in a single page using the MATRYOSHKA link in the footer (that can be predefined using the optional argument `--matryoshka=URL`).\n\nAfter multiple config files are setup, to control them all together instead of one by one, the commands `make startall`, `make stopall` and `make restartall` are also available, just remember that config files with a filename starting with underscore symbol \"_\" will be skipped.\n\n### Application Usage\n\n1. Open your web browser to connect to port `3000` (or your configured port number) of the machine running K. Using `localhost` or one of the public or private IPs of your machine (if you're running on Docker, use the IP address returned by `boot2docker ip`).\n\n2. Read up on how to use K and market making in the [manual](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fdoc\u002FMANUAL.md).\n\n3. Use the web UI to change the quoting parameters. Click the big \"BTC\u002FUSD\" button to start making markets. Click it again to stop. When the button is green, the bot is actively placing orders.\n\n### Web UI\n\nOnce `K` is up and running, visit port `3000` (or your configured port number) to access the UI (i.e. [https:\u002F\u002Flocalhost:3000](https:\u002F\u002Flocalhost:3000)). There are inputs for quoting parameters, grids to display market orders, market trades, your trades, your order history, your positions, and a big button with the currency pair you are trading. When you're ready, click that button green to begin sending out quotes. The UI uses angularjs hydrated with websockets observed with reactivexjs.\n\n### Databases\n\nEach currency pair of each exchange will use a different sqlite database file with [WAL mode](https:\u002F\u002Fwww.sqlite.org\u002Fwal.html) enabled.\n\nAll database files are located at `\u002Fvar\u002Flib\u002FK\u002Fdb\u002FK-*.db*`, outside the download folder to survive wild `rm -rf path\u002Fto\u002FK` or reinstalls.\n\nYou can copy any group of `*.db*` files to another machine when migrating or as a backup.\n\nIf a database does not exist, the application will create it on boot; otherwise, it will use the existing one.\n\nTo explore each database you can use https:\u002F\u002Fgithub.com\u002Fsqlitebrowser\u002Fsqlitebrowser or a similar tool.\n\nTo set a different database filename or to set an [in-memory database](https:\u002F\u002Fsqlite.org\u002Finmemorydb.html), use `--database=FILE` argument (see `--help`).\n\nEven if using an in-memory database, the quoting parameters are always loaded from and saved into the file database.\n\n### Charts\n\nThe metrics are not saved anywhere, it is just UI data collected with a visibility retention of `n` hours (where `n` is the value of `profit` quoting parameter), to display over time:\n\n * Market Fair Value with High and Low Prices\n * Trades Complete\n * Target Position for BTC currency (TBP)\n * Target Position for Fiat currency\n * STDEV and EWMA values for Quote Protection and APR\n * Amount available in wallet for buy\n * Amount held in open trades for buy\n * Amount available in wallet for sell\n * Amount held in open trades for sell\n * Total amount available and held at both sides in BTC currency\n * Total amount available and held at both sides in Fiat currency\n\n### Cloud Hosting\n\nIf you ask me, [\u003Cimg height=\"20px\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_0d10f13731bb.png\">](https:\u002F\u002Fwww.dreamhost.com\u002Fr.cgi?475987\u002Fcloud\u002F) is a very nice web hosting company (awesome support team, awesome servers). Feel free to use this referral link to get a discount subtracted from my referral earnings (i'm a user since 2008).\n\n### Build notes\n\nMake sure your build machine has [node](https:\u002F\u002Fnodejs.org\u002Fen\u002Fdownload\u002Fpackage-manager\u002F) installed, also ensure `make lib` provides all dependencies without errors.\n\nTo rebuild the application, see `make help` and choose a target (just `make` may be what you are looking for).\n\nTest units are executed before the application exits, only if the application was compiled with `KUNITS=1 make`.\n\nOtherwise, just `make` without the environment var `KUNITS` produces an application that simply exits on exit.\n\nA quick test runner therefore is `.\u002FK.sh --version` or the alias `make test` or all at once with `KUNITS=1 make K test`.\n\nTo pipe the output to stdout, execute the application in the foreground with `--naked` argument.\n\nFor more information consider to follow the *white rabbit*, but its dangerous to go alone, take this:\n\nc sandbox: [wandbox.org](https:\u002F\u002Fwandbox.org)\n\njs sandbox: [jsfiddle.net](https:\u002F\u002Fjsfiddle.net)\n\nws sandbox: [app.gosandy.io](https:\u002F\u002Fapp.gosandy.io\u002F)\n\n\u003Cdetails>\u003Csummary>\u003Ca id=\"changelog\">\u003Cb>Release v0.7.x Changelog\u003C\u002Fb>\u003C\u002Fa>\u003C\u002Fsummary>\n\nUpdated Coinbase integration to Advanced Trade API.\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>Release v0.6.x Changelog\u003C\u002Fb>\u003C\u002Fsummary>\n\nAdded Hello World bot, Portfolios bot, Scaling bot and Stable bot.\n\nAdded Binance, Kraken, KuCoin, Gate.io and BitMEX API.\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>Release v0.5.x Changelog\u003C\u002Fb>\u003C\u002Fsummary>\n\nUpdated exchange integrations as simple libcurl wrappers.\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>Release v0.4.x Changelog\u003C\u002Fb>\u003C\u002Fsummary>\n\nAdded main KryptoNinja class derived from all other classes and ready to be extended.\n\nAdded C++ OOP everywhere.\n\nAdded test units.\n\nAdded --interface=IP argument to bind outgoing traffic to a specific network interface.\n\nAdded Ethfinex ~~and FCoin~~ API.\n\nAdded build-in document root to stop reading files from disk.\n\nAdded build chain for win32.\n\n~~Updated OKEx websocket to binary data.~~\n\nAdded build chain for OSX v10.13.\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>Release v0.3.x Changelog\u003C\u002Fb>\u003C\u002Fsummary>\n\nUpdated HitBTC API v2.\n\nAdded ZIP installation steps for non-git-lovers.\n\nAdded HamelinRat quoting mode and Trend safety thanks to b-seite and serzhiio contributions.\n\nAdded command-line arguments.\n\nUpdated quoting engine and gateways without nodejs.\n\nAdded Makefile to replace npm scripts.\n\n~~Added PNG files as configuration files.~~\n\nAdded built-in C++ WWW Server to replace expressjs and socketio.\n\nAdded built-in SQLite C++ interface to replace external mongodb server.\n\nAdded Poloniex API.\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>Release v0.2.x Changelog\u003C\u002Fb>\u003C\u002Fsummary>\n\nUpdated application name to K because of Kira.\n\nAdded nodejs7, typescript2, angular4 and reactivexjs.\n\nAdded cleanup of bandwidth, source code, dependencies and installation steps.\n\nAdded many quoting parameters thanks to Camille92 genius suggestions.\n\nAdded support for multiple instances\u002Fconfig files with nested matryoshka UI.\n\nAdded npm scripts, david-dm, travis-ci, coveralls and codacy.\n\nAdded historical charts to replace grafana.\n\nAdded C++ math functions.\n\nUpdated OKCoin API (since https:\u002F\u002Fwww.okcoin.com\u002Ft-354.html).\n\nUpdated Bitfinex API v2.\n\nAdded Coinbase FIX API.\n\n~~Added Korbit API.~~\n\nAdded new quoting styles PingPong, Boomerang, AK-47.\n\nAdded cleanup of database records, memory usage and log recording.\n\nAdded audio notices, realtime wallet display, and grafana integration.\n\nAdded https, dark theme and new UI elements.\n\nAdded a bit of love to Kira.\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>Release v0.1.0 Changelog\u003C\u002Fb>\u003C\u002Fsummary>\n\nsee the upstream project [michaelgrosner\u002Ftribeca](https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca).\n\u003C\u002Fdetails>\n\n### Unlock\n\nThe bot is unlocked for collaborators and contributors (feel free to make acceptable Pull Requests for already opened issues or for anything you consider useful, and let me know the BTC Payment Address for the bot that you wish to unlock in the description of the PR, and I will credit it for you).\n\nWhile locked, the orderbook will be in realtime 121 seconds, and later it will be updated only once every 121 seconds.\n\nAnonymous users can also unlock any API Key by paying 0.00121000 BTC to the address displayed on exit.\n\nOnce unlocked you may use different bots or currency pairs or reinstall on a different machine with the same unlocked API Key. However, if you want to use more than one exchange, you will need to pay again to unlock the API Key for each exchange.\n\nOtherwise if you choose to not support further development by ctubio, just keep running some old commit and do not upgrade (any commit prior to v0.3.0 was completely unlocked).\n\nPlease don't open issues asking how much % less the bot generates with `--free-version`; it is relative to your trading strategy, the market conditions, and the bot's performance.\n\n### Donations\n\nnope, this project doesn't have maintenance costs. but you can donate to your favorite developer today!\u003Cbr>(or tomorrow!)\n\nor see the upstream project [michaelgrosner\u002Ftribeca](https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca).\n\nor donate your time with programming or financial suggestions in the IRC channel [#krypto.ninja](https:\u002F\u002Fkiwiirc.com\u002Fclient\u002Firc.libera.chat:6697\u002F?theme=cli#krypto.ninja) at irc.libera.chat on port 6697 (SSL), or 6667 (plain); or feel free to make any question, but questions technically are not donations.\n\n### General Discussion\n\n[IRC](https:\u002F\u002Fkiwiirc.com\u002Fclient\u002Firc.libera.chat:6697\u002F?theme=cli#krypto.ninja) is awesome!\n\nBut if you dislike it.. consider to join the [discord server](https:\u002F\u002Fdiscord.gg\u002FjAX7GEzcWD). Or you can DM [ctubio on reddit](https:\u002F\u002Fwww.reddit.com\u002Fuser\u002Fctubio) privately.\n\nOtherwise, here on GitHub, just create a [new discussion](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fdiscussions) permanently readable by everybody.\n\n### Very Special Thanks to:\n\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- https:\u002F\u002Fcurl.haxx.se (https:\u002F\u002Fgithub.com\u002Fbagder)\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- https:\u002F\u002Fgithub.com\u002FuNetworking (https:\u002F\u002Fgithub.com\u002Falexhultman)\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- https:\u002F\u002Fnlohmann.github.io\u002Fjson (https:\u002F\u002Fgithub.com\u002Fnlohmann)\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- http:\u002F\u002Finvisible-island.net\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- https:\u002F\u002Fwww.sqlite.org\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- but Most Special Thanks goes to [your mother](https:\u002F\u002Fyoutu.be\u002FYDafHsyyTNk).\n\n### Help\n\nIf you need installation or usage support, please create a [new discussion](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fdiscussions\u002Fnew).\n\n### Issues\n\nTo request new features open a [new issue](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002Fnew?title=Feature%20request) and explain your improvement as you consider.\n\nTo report errors open a [new issue](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002Fnew?title=Error%20report) only after collecting all possible relevant log messages.\n\nPull Requests are welcome, but adhere to the Contributor License Agreement:\n- Your biological and technological distinctiveness will be added to our own. Resistance is futile.\n\n### like yesterday, since 0day and ∞\n\n![bcn](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_de8ace1679fa.jpg)\n\n#### every new day we sing:\n\n\u003Cp>If love is so nice, tell me why are you so sad?\u003Cbr>If love is so nice, tell me, oh tell me why are you hurt so bad?\u003Cbr>One Love! get ready!\u003C\u002Fp>\n\u003Cp>Now feel this drumbeat as it beats within,\u003Cbr>playin' a riddim, resisting against the system:\u003C\u002Fp>\n\n - https:\u002F\u002Fyoutu.be\u002Fg--fsK6aLf8\n - https:\u002F\u002Fyoutu.be\u002FBncXzyjdREc\n - https:\u002F\u002Fyoutu.be\u002FuEqxj58g6To\n - https:\u002F\u002Fyoutu.be\u002FSS9DJX8gTKk\n - https:\u002F\u002Fyoutu.be\u002Fvu6WXLQT5r8\n - https:\u002F\u002Fyoutu.be\u002Fe8ULyjcSukM\n - https:\u002F\u002Fyoutu.be\u002FRom4qWtEkMA\n - https:\u002F\u002Fyoutu.be\u002FInNk4Z-BGc8\n - https:\u002F\u002Fyoutu.be\u002FxPg_e_3cK-E\n - https:\u002F\u002Fyoutu.be\u002FKKpcQIfIAi8\n - https:\u002F\u002Fyoutu.be\u002FpZAmer0EmMQ\n - https:\u002F\u002Fyoutu.be\u002F50aXt1ctmUU\n - https:\u002F\u002Fyoutu.be\u002Fvofff0Ei3kk\n - https:\u002F\u002Fyoutu.be\u002F4Ois3zB7SJ4\n - https:\u002F\u002Fyoutu.be\u002F_wGDcWD1E1A\n - https:\u002F\u002Fyoutu.be\u002FVOgFZfRVaww\n - https:\u002F\u002Fyoutu.be\u002F1iZdJNH3Z1o\n - https:\u002F\u002Fyoutu.be\u002F_e5hvHL2WTg\n - https:\u002F\u002Fyoutu.be\u002FjQhtEYfax5c\n - add your song here (please open a [new issue](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002Fnew?title=Today,%20I%20sing) to share your link)\n\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_db91046f2039.jpg\" \u002F>\n\u003Cbr \u002F>\u003Cbr \u002F>\nWe have already enough policemen,\u003Cbr \u002F>if you like adventures choose to be a \u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FpT_GM35fM7I\">brave firefighter\u003C\u002Fa>.\n\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_29c2f5625b1b.jpg\" \u002F>\n\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>Violence \u003Ca href=\"https:\u002F\u002Fwww.cnvc.org\u002Fabout\u002Fpurpose-of-nvc\">should not\u003C\u002Fa> be the answer to those who\u003Cbr \u002F>are \u003Ca href=\"https:\u002F\u002Fnovact.org\u002Fen\u002F\">asking for\u003C\u002Fa> freedom.\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_9e757f8f574b.jpg\" \u002F>\n\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fhits.seeyoufarm.com\">\u003Cimg src=\"https:\u002F\u002Fhits.seeyoufarm.com\u002Fapi\u002Fcount\u002Fincr\u002Fbadge.svg?url=https%3A%2F%2Fgithub.com%2Fctubio%2FKrypto-trading-bot%2FREADME.md&count_bg=%2379C83D&title_bg=%23555555&icon=known.svg&icon_color=%2306FF18&title=page+views&edge_flat=false\"\u002F>\u003C\u002Fa>\u003C\u002Fp>\n","\u003Cimg align=\"left\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_1194533111e5.jpg\" \u002F>\u003Cp align=\"right\">自我提醒：\u003Cbr>\u003Cb>耐心是科学之母\u003C\u002Fb>\u003C\u002Fp>\u003Cbr>\u003Ca href=\"http:\u002F\u002Fciutatrefugi.barcelona\u002Fen\u002Fwelcome-barcelona\">\\*\\*\\* 欢迎难民！ \\*\\*\\*\u003C\u002Fa>\u003Cbr\u002F>&thinsp;&nbsp;&nbsp;&nbsp;&nbsp;\u003Ca href=\"http:\u002F\u002Fmissingmigrants.iom.int\u002F\">\\*\\*\\* 致命路线？ \\*\\*\\*\u003C\u002Fa>\n\u003Cbr clear=\"left\">\n\n[![发布](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Frelease\u002Fctubio\u002FKrypto-trading-bot.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Freleases)\n[![平台](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplatform-unix--like-111111.svg)](https:\u002F\u002Fwww.gnu.org\u002F)\n[![g0t0计数器](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_bdbb8645a2f7.png)](https:\u002F\u002Ftinyurl.com\u002Fg0t0docs)\n[![代码量](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flanguages\u002Fcode-size\u002Fctubio\u002FKrypto-trading-bot.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot)\n[![软件许可](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-ISC-551a8b.svg)](https:\u002F\u002Fraw.githubusercontent.com\u002Fctubio\u002FKrypto-trading-bot\u002Fmaster\u002FLICENSE)\n[![软件许可](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-551a8b.svg)](https:\u002F\u002Fraw.githubusercontent.com\u002Fctubio\u002FKrypto-trading-bot\u002Fmaster\u002FCOPYING)\n\n[`K`](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot) 是一个家族化的（高度可定制）超低延迟 [做市](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fdoc\u002FMANUAL.md#what-is-market-making) 交易机器人，配备功能齐全的 [Web 界面](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot#web-ui)。\u003Cbr \u002F>在性能不错的机器上，它可以在不到几毫秒内完成对 [兼容交易所](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot#compatible-exchanges) 的下单或撤单操作。\n\n如果你不想在自己的设备上配置或硬编码交易策略，\u003Cbr \u002F>\n你可以向 [tinyman.org](https:\u002F\u002Ftinyman.org\u002F)（或其他 DeFi 平台）上的自动化做市商流动性池注资，\u003Cbr \u002F>但请务必记住：\n- \u003Cb>\u003Cins>切勿在任何 DeFi 网站上输入你的私钥\u003C\u002Fins>\u003C\u002Fb>（你需要签署交易，而不是分享钱包私钥）\n- \u003Cb>\u003Cins>切勿在任何聊天中告知他人你的私钥\u003C\u002Fins>\u003C\u002Fb>（如有疑问，请使用公开论坛，并警惕冒充者）\n\n### \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_0f4e00b096ee.png\" height=\"64\" width=\"64\"  align=\"middle\" \u002F> 最新版本位于 https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_fc64eea8fcb5.png\" height=\"64\" width=\"64\" align=\"middle\" \u002F> \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_9ae6023b83dc.png\" height=\"64\" width=\"64\" align=\"middle\" \u002F>\n\n[![构建状态](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fworkflows\u002Ftest\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Factions)\n[![覆盖率](https:\u002F\u002Fimg.shields.io\u002Fcoveralls\u002Fctubio\u002FKrypto-trading-bot\u002Fmaster.svg)](https:\u002F\u002Fcoveralls.io\u002Fr\u002Fctubio\u002FKrypto-trading-bot?branch=master)\n[![质量状态](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Freview-clang--tidy%20+%20pvs-4cc61e.svg)](https:\u002F\u002Fwww.codacy.com\u002Fgh\u002Fctubio\u002FKrypto-trading-bot\u002Fdashboard)\n[![未解决问题](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fissues\u002Fctubio\u002FKrypto-trading-bot.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues)\n[![最近一次提交](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flast-commit\u002Fctubio\u002FKrypto-trading-bot.svg)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot)\n[![最近发布下载量](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fdownloads\u002Fctubio\u002FKrypto-trading-bot\u002Ftotal.svg?label=downloads%20last%20releases)](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot)\n\n我们的机器人运行在类 Unix 系统上。持久化存储通过内置的无服务器 SQLite C++ 接口实现。\u003Cbr \u002F>数据传输直接从你的机器使用最新版本的 CURL 和 OpenSSL 与交易所进行交互。\u003Cbr \u002F>建议在专用的 [Debian](https:\u002F\u002Fcdimage.debian.org\u002Fcdimage\u002Frelease\u002Fcurrent\u002F)、[Raspberry](https:\u002F\u002Fwww.raspberrypi.com\u002Fsoftware\u002F)、[Red Hat](https:\u002F\u002Fdevelopers.redhat.com\u002Fproducts\u002Frhel\u002Fdownload)、[CentOS](https:\u002F\u002Fwww.centos.org\u002Fdownload\u002F) 或 macOS 系统上安装，无需 Docker。\n\nWeb UI 兼容大多数浏览器和分辨率，但推荐使用 Brave 或 Firefox 浏览器，分辨率为 1600px。\u003Cbr \u002F>无需配置任何 Web 服务器（除非你将其部署在自己的反向代理之后）。\n\n\u003Cdetails>\u003Csummary>\u003Cb>K-trading-bot\u003C\u002Fb> \u003Csup>(Web UI + CLI)\u003C\u002Fsup>\u003C\u002Fsummary>\n用于控制一个完全可配置的高频交易引擎，具备社区提出的所有功能：\u003Cbr \u002F>\n\n![trading-bot UI 预览](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_267fec30522f.png)\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>K-+portfolios\u003C\u002Fb> \u003Csup>(Web UI + CLI)\u003C\u002Fsup>\u003C\u002Fsummary>\n用于展示来自单一交易所的所有余额，并提供创建、编辑或取消订单的按钮以及跳转至市场的链接：\u003Cbr \u002F>\n\n![+portfolios UI 预览](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_36fecb17faf0.png)\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>K-hello-world\u003C\u002Fb> \u003Csup>(CLI)\u003C\u002Fsup>\u003C\u002Fsummary>\n用于将给定货币的当前价值打印到标准输出：\u003Cbr \u002F>\n\n\u003Cpre>\n _________________________________________\n\u002F Hello, WORLD!                           \\\n|                                         |\n\\ pssst.. 1.00000000 BTC = 56683.49 EUR.  \u002F\n -----------------------------------------\n        \\   ^__^\n         \\  (oo)\\_______\n            (__)\\       )\\\u002F\\\n                ||----w |\n                ||     ||\n\u003C\u002Fpre>\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>K-scaling-bot, K-stable--bot\u003C\u002Fb> \u003Csup>(CLI)\u003C\u002Fsup>\u003C\u002Fsummary>\n便于修改并开始开发新的自定义机器人。\n\u003C\u002Fdetails>\n\n### 兼容的交易所\n\n支持所有货币对（使用 `--list` 参数可查看特定交易所当前可交易的所有币种对）。\n\n\u003Ctable>\u003Ctbody>\u003Ctr>\u003Ctd>\u003C\u002Ftd>\u003Ctd align=\"center\">\u003Cb>维护中\u003C\u002Fb>\u003C\u002Ftd>\u003Ctd colspan=\"2\" align=\"center\" nowrap>\u003Cb>开发中或已废弃\u003C\u002Fb>\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd align=\"center\">\u003Cb>现货交易\u003C\u002Fb>\u003C\u002Ftd>\u003Ctd nowrap>\u003Ca href=\"https:\u002F\u002Fwww.coinbase.com\u002Fen-es\u002Fadvanced-trade\">Coinbase\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fhelp.coinbase.com\u002Fen\u002Fcoinbase\u002Ftrading-and-funding\u002Fadvanced-trade\u002Fadvanced-trade-fees\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 2 个 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.binance.com\u002F\">Binance\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.binance.com\u002Fen\u002Ffee\u002Fschedule\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.binance.us\u002F\">Binance.US\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.binance.us\u002Ffees\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 个 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.bitmex.com\u002F\">BitMEX\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.bitmex.com\u002Fwallet\u002Ffees\u002Fderivatives\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 个 WebSocket\u003C\u002Fi>\u003C\u002Ftd>\u003Ctd nowrap>\u003Ca href=\"https:\u002F\u002Fwww.kraken.com\u002F\">Kraken\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.kraken.com\u002Ffeatures\u002Ffee-schedule\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 2 个 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.kucoin.com\u002F\">KuCoin\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.kucoin.com\u002Fvip\u002Flevel\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 个 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.bitfinex.com\u002F\">Bitfinex\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.bitfinex.com\u002Ffees\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.ethfinex.com\u002F\">Ethfinex\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.ethfinex.com\u002Ffees\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 个 WebSocket\u003C\u002Fi>\u003C\u002Ftd>\u003Ctd nowrap>\u003Ca href=\"https:\u002F\u002Fwww.gate.io\u002F\">Gate.io\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fwww.gate.io\u002Ffee\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 个 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fhitbtc.com\u002F\">HitBTC\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fhitbtc.com\u002Ffee-tier\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fbequant.io\u002F\">Bequant\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fbequant.io\u002Ffees-and-limits\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 2 个 WebSocket\u003C\u002Fi>\u003Cbr>\u003Cbr>\u003Ca href=\"https:\u002F\u002Fwww.poloniex.com\u002F\">Poloniex\u003C\u002Fa> \u003Csub>(\u003Ca href=\"https:\u002F\u002Fpoloniex.com\u002Ffees\u002F\">费用\u003C\u002Fa>)\u003C\u002Fsub>\u003Cbr> &#10239; \u003Ci>REST + 1 个 WebSocket\u003C\u002Fi>\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd align=\"center\">\u003Cb>保证金交易\u003C\u002Fb>\u003C\u002Ftd>\u003Ctd nowrap>\u003Ci>无\u003C\u002Fi>\u003C\u002Ftd>\u003Ctd colspan=\"2\" nowrap>\u003Ci>无\u003C\u002Fi>\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\n\n如果要问我，[\u003Cimg height=\"20px\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_5dc189ed8659.png\">](https:\u002F\u002Fadvanced.coinbase.com\u002Fjoin\u002FKAME9XG) 绝对是目前最好、最安全的选择，所以这里是我的 [推荐链接](https:\u002F\u002Fadvanced.coinbase.com\u002Fjoin\u002FKAME9XG)，让我们都能从中受益。\n\n如果你正在寻找其他交易所的推荐链接，欢迎在 [新议题](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002Fnew?title=Referral%20link%20for%20%5Bexchange%5D) 中向活跃用户求助。\n\n## README\n- 文档\n  - [README](#readme)\n  - [手册](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fdoc\u002FMANUAL.md)\n- 安装\n  - [Docker 安装](#docker-installation)\n  - [Windows 安装](#windows-installation)\n  - [手动 GIT 安装](#manual-git-installation)\n  - [手动 ZIP 安装](#manual-zip-installation)\n  - [手动安装后的配置](#configuration-after-manual-installation)\n  - [升级到最新提交](#upgrade-to-the-latest-commit)\n  - [多实例运行](#multiple-instances-party-time)\n- 信息\n  - [兼容的交易所](#compatible-exchanges)\n  - [应用程序使用](#application-usage)\n  - [Web UI](#web-ui)\n  - [数据库](#databases)\n  - [图表](#charts)\n  - [云托管](#cloud-hosting)\n- 开发\n  - [构建说明](#build-notes)\n  - [变更日志](#changelog)\n- 人类与哺乳动物\n  - [解锁](#unlock)\n  - [捐赠](#donations)\n  - [一般讨论](#general-discussion)\n  - [特别感谢](#very-special-thanks-to)\n  - [帮助](#help)\n  - [问题](#issues)\n\n### Docker 安装\n\n请参阅 [etc\u002FDockerfile](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Ftree\u002Fmaster\u002Fetc#dockerfile) 文件。\n\n### Windows 安装\n\n在开始手动安装之前，请确保目标机器已安装 Windows 7 或更高版本，并且已安装 [MSYS2](https:\u002F\u002Fwww.msys2.org\u002F)。\n\n使用 MSYS2 终端安装 `make`（命令为 `pacman -S make`），然后按照常规步骤继续安装。\n\n### 手动 GIT 安装\n\n0. 请确认您同意安装协作式的非自由软件（参见 [解锁](#unlock) 部分）。\n\n1. 确保目标机器已安装 `git` 和 `make`。\n\n2. 将代码下载到您希望的位置（您可以自定义建议的文件夹名称 K），然后执行安装：\n```\n $ git clone ssh:\u002F\u002Fgit@github.com\u002Fctubio\u002FKrypto-trading-bot K\n $ cd K\n $ make install\n```\n\n3. 使用您喜欢的文本编辑器打开并编辑配置文件 `K.sh`：\n```\n $ vim K.sh\n```\n\n如需随时升级，请参阅 [升级到最新提交](#upgrade-to-the-latest-commit) 部分。\n\n### 手动 ZIP 安装\n\n0. 请确认您同意安装协作式的非自由软件（参见 [解锁](#unlock) 部分）。\n\n1. 确保目标机器已安装 `curl` 和 `make`。\n\n2. 将代码下载到您希望的位置（您可以自定义建议的文件夹名称 K），然后执行安装：\n```\n $ mkdir K\n $ cd K\n $ curl -O krypto.ninja\u002FMakefile\n $ make install\n```\n\n3. 使用您喜欢的文本编辑器打开并编辑配置文件 `K.sh`：\n```\n $ vim K.sh\n```\n\n如需随时升级到最新版本，只需运行 `make reinstall`。\n\n### 手动安装后的配置\n\n请参阅 [etc\u002FK.sh.dist](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fetc\u002FK.sh.dist) 文件，或者更好的是您位于项目根目录下的 `K.sh` 文件副本。\n\n该文件仅包含一些示例变量。文件末尾是启动机器人程序的代码。\n\n当您的配置文件准备就绪后，即可执行它来启动机器人：\n```\n $ .\u002FK.sh\n```\n\n或者使用 `make start` 命令，通过 [screen](https:\u002F\u002Fkb.iu.edu\u002Fd\u002Facuy) 在后台运行 `K.sh`（要查看输出，可以使用 `make screen` 附加到 screen 会话中 [或直接使用 `make start screen` 一次性完成])。\n\n您可以随时运行 `make stop` 或 `make restart`，别忘了[阅读该死的手册](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fdoc\u002FMANUAL.md)。\n\n故障排除：\n\n * 如果某个交易所没有钱包数据，请使用 `--list` 参数再次核对币种符号。\n\n可选：\n\n * 至少查看一次 `.\u002FK.sh --help` 以进行交易，或查看 `make help` 以进行开发。\n\n * 使用您自己的 HTTP Basic 认证凭据，通过 `--user` 和 `--pass` 参数指定。\n\n * 使用您自己的 SSL 证书，通过 `--ssl-crt` 和 `--ssl-key` 参数指定。\u003Cbr>否则，内置的不安全证书功能齐全，但您可能需要在浏览器中对其进行授权。\u003Cbr>如果您想生成自己的证书，请参阅 [用于内部使用的 SSL](https:\u002F\u002Fwww.akadia.com\u002Fservices\u002Fssh_test_certificate.html)。\u003Cbr>如果您确实希望使用纯 HTTP，请使用 `--without-ssl` 参数。\n\n### 升级到最新提交\n\n如果您在后台运行任何实例时进行升级，需要手动使用 `make restart` 或 `make restartall` 重启实例，才能开始使用最新版本。\n\n#### 手动 ZIP 安装下的升级：\n\n请运行 `make reinstall` 下载升级后的源代码和可执行文件。\n\n#### 手动 GIT 安装下的升级：\n\n您可以随时使用 `make diff` 检查是否有新的更新。\n\n一旦决定升级，执行 `make upgrade`（或直接使用 `make reinstall` 跳过新提交的验证）。\n\n如果您仅使用 `git` 从远程分支拉取最新的源代码文件，仍然需要升级或重新编译您的可执行文件。\n\n若不想升级，而是重新编译您自己修改过的源代码，请使用 `make lib K` 或直接使用 `make`（参见[构建说明](#build-notes)）。\n\n### 多实例同时运行\n\n请注意，“实例”实际上是指一个 `*.sh` 配置文件；在一台机器上进行单次安装的情况下，您可以运行与 `*.sh` 文件数量相同的实例（受限于可用的空闲内存）。\n\n您可以通过 `make list` 列出当前正在运行的实例。\n\n如果您尚未定义配置文件，`make start`、`make screen`、`make stop` 和 `make restart` 将使用默认配置文件 `K.sh`。\n\n要使用多个配置文件运行多个实例：\n\n1. 使用 `cp etc\u002FK.sh.dist X.sh && chmod +x X.sh` 创建一个新的配置文件（使用 `X.sh` 或其他名称，但需保留 `.sh` 扩展名）。\n\n2. 编辑新配置文件 `vim X.sh`。\n\n3. 运行新实例：使用 `.\u002FX.sh` 直接运行，或使用 `K=X.sh make start` 在后台运行。要附加到新实例的 screen 会话，使用 `K=X.sh make screen`。要停止新实例，使用 `K=X.sh make stop`；要重启，使用 `K=X.sh make restart`。环境变量 `K` 用于指定您想要使用的配置文件名。\n\n4. 在网页浏览器中打开不同实例端口的不同页面，或使用页脚中的 MATRYOSHKA 链接将所有实例的 UI 合并显示在同一页面上（可通过可选参数 `--matryoshka=URL` 预先设置）。\n\n设置好多个配置文件后，为了统一控制它们而无需逐一操作，还可以使用 `make startall`、`make stopall` 和 `make restartall` 命令，但请注意，文件名以下划线 `_` 开头的配置文件会被跳过。\n\n### 应用程序使用\n\n1. 打开您的网页浏览器，连接到运行 K 的机器的 `3000` 端口（或您配置的端口号）。可以使用 `localhost` 或您机器的公共\u002F私有 IP 地址（如果您在 Docker 上运行，请使用 `boot2docker ip` 返回的 IP 地址）。\n\n2. 阅读[手册](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fblob\u002Fmaster\u002Fdoc\u002FMANUAL.md)，了解如何使用 K 及其做市功能。\n\n3. 使用网页 UI 更改报价参数。点击大的“BTC\u002FUSD”按钮开始做市。再次点击可停止。当按钮呈绿色时，机器人正在积极下单。\n\n### 网页 UI\n\n当 K 启动并运行后，访问 `3000` 端口（或您配置的端口号）即可进入 UI（即 [https:\u002F\u002Flocalhost:3000](https:\u002F\u002Flocalhost:3000)）。界面提供报价参数输入框、用于显示市场订单、市场成交、您的交易记录、持仓情况等信息的网格，以及一个显示您当前交易币对的大按钮。准备好后，点击该绿色按钮即可开始发送报价。UI 使用 AngularJS 构建，并通过 WebSockets 实时更新数据，由 RxJS 观察。\n\n### 数据库\n\n每个交易所的每种币对都将使用不同的 SQLite 数据库文件，并启用 [WAL 模式](https:\u002F\u002Fwww.sqlite.org\u002Fwal.html)。\n\n所有数据库文件都位于 `\u002Fvar\u002Flib\u002FK\u002Fdb\u002FK-*.db*` 目录下，独立于下载文件夹之外，以便在执行 `rm -rf path\u002Fto\u002FK` 或重新安装时仍能保留数据。\n\n您可以将任意一组 `*.db*` 文件复制到另一台机器上，用于迁移或备份。\n\n如果数据库不存在，应用程序将在启动时创建它；否则将使用现有数据库。\n\n要探索各个数据库，可以使用 https:\u002F\u002Fgithub.com\u002Fsqlitebrowser\u002Fsqlitebrowser 或类似工具。\n\n要指定不同的数据库文件名，或使用 [内存数据库](https:\u002F\u002Fsqlite.org\u002Finmemorydb.html)，请使用 `--database=FILE` 参数（参见 `--help`）。\n\n即使使用内存数据库，报价参数仍会始终从文件数据库加载并保存到其中。\n\n### 图表\n\n指标不会被保存到任何地方，只是 UI 数据，以 `n` 小时的可见性保留期存储（其中 `n` 是 `profit` 报价参数的值），用于随时间展示：\n\n * 市场公允价值及最高价、最低价\n * 成交总数\n * BTC 币种的目标仓位 (TBP)\n * 法币目标仓位\n * 报价保护和 APR 的 STDEV 和 EWMA 值\n * 钱包中可用于买入的金额\n * 未结订单中可用于买入的金额\n * 钱包中可用于卖出的金额\n * 未结订单中可用于卖出的金额\n * BTC 币种双方可用及持有的总金额\n * 法币双方可用及持有的总金额\n\n### 云主机\n\n如果要问我，[\u003Cimg height=\"20px\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_0d10f13731bb.png\">](https:\u002F\u002Fwww.dreamhost.com\u002Fr.cgi?475987\u002Fcloud\u002F) 是一家非常不错的虚拟主机服务商（支持团队超棒，服务器也很给力）。你可以使用这个推荐链接来获得折扣，这笔折扣会从我的推荐收益中扣除（我从2008年就开始使用他们家的服务了）。\n\n### 构建说明\n\n请确保你的构建机器上已安装 [node](https:\u002F\u002Fnodejs.org\u002Fen\u002Fdownload\u002Fpackage-manager\u002F)，并且运行 `make lib` 时能够成功下载所有依赖而不会出现错误。\n\n要重新构建应用程序，请查看 `make help` 并选择一个目标（也许直接运行 `make` 就能满足你的需求）。\n\n单元测试仅在应用程序退出前执行，前提是编译时使用了 `KUNITS=1 make` 参数。否则，直接运行 `make` 而不设置 `KUNITS` 环境变量，生成的应用程序会在启动后立即退出。\n\n快速测试命令可以是 `.\u002FK.sh --version`，或者使用别名 `make test`，也可以同时运行所有测试：`KUNITS=1 make K test`。\n\n若需将输出直接打印到标准输出，可以在前台运行程序并添加 `--naked` 参数。\n\n如需更多信息，不妨跟随“白兔”指引，不过独自前行风险颇高，建议参考以下资源：\n\nC 沙盒：[wandbox.org](https:\u002F\u002Fwandbox.org)\n\nJS 沙盒：[jsfiddle.net](https:\u002F\u002Fjsfiddle.net)\n\nWS 沙盒：[app.gosandy.io](https:\u002F\u002Fapp.gosandy.io\u002F)\n\n\u003Cdetails>\u003Csummary>\u003Ca id=\"changelog\">\u003Cb>版本 v0.7.x 更改日志\u003C\u002Fb>\u003C\u002Fa>\u003C\u002Fsummary>\n\n更新了 Coinbase 集成，切换至 Advanced Trade API。\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>版本 v0.6.x 更改日志\u003C\u002Fb>\u003C\u002Fsummary>\n\n新增了 Hello World 机器人、投资组合机器人、量化交易机器人和稳定币交易机器人。\n\n新增了 Binance、Kraken、KuCoin、Gate.io 和 BitMEX 的 API 支持。\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>版本 v0.5.x 更改日志\u003C\u002Fb>\u003C\u002Fsummary>\n\n将交易所集成更新为简单的 libcurl 封装。\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>版本 v0.4.x 更改日志\u003C\u002Fb>\u003C\u002Fsummary>\n\n新增了 KryptoNinja 主类，该类继承自其他所有类，并可进一步扩展。\n\n全面引入 C++ 面向对象编程。\n\n增加了单元测试。\n\n新增了 `--interface=IP` 参数，用于将出站流量绑定到特定的网络接口。\n\n新增了 Ethfinex ~~以及 FCoin~~ API。\n\n内置了文档根目录，无需再从磁盘读取文件。\n\n为 win32 添加了构建链。\n\n~~将 OKEx WebSocket 更新为二进制数据格式。~~\n\n为 OSX v10.13 添加了构建链。\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>版本 v0.3.x 更改日志\u003C\u002Fb>\u003C\u002Fsummary>\n\n更新了 HitBTC API v2。\n\n为不熟悉 Git 的用户提供了 ZIP 安装步骤。\n\n新增了 HamelinRat 报价模式及由 b-seite 和 serzhiio 贡献带来的趋势保护功能。\n\n新增了命令行参数。\n\n更新了报价引擎和网关，不再依赖 Node.js。\n\n用 Makefile 替代了 npm 脚本。\n\n~~新增了以 PNG 文件作为配置文件的功能。~~\n\n内置了 C++ WWW 服务器，取代了 expressjs 和 socketio。\n\n内置了 SQLite C++ 接口，替代了外部 MongoDB 服务器。\n\n新增了 Poloniex API。\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>版本 v0.2.x 更改日志\u003C\u002Fb>\u003C\u002Fsummary>\n\n将应用名称改为 K，以纪念 Kira。\n\n新增了 nodejs7、typescript2、angular4 和 reactivexjs。\n\n优化了带宽、源代码、依赖项及安装步骤。\n\n在 Camille92 的巧妙建议下，增加了许多报价参数。\n\n支持多实例\u002F多配置文件，并采用嵌套式套娃 UI。\n\n新增了 npm 脚本、david-dm、travis-ci、coveralls 和 codacy。\n\n新增了历史图表，替代了 grafana。\n\n加入了 C++ 数学函数。\n\n更新了 OKCoin API（基于 https:\u002F\u002Fwww.okcoin.com\u002Ft-354.html）。\n\n更新了 Bitfinex API v2。\n\n新增了 Coinbase FIX API。\n\n~~新增了 Korbit API。~~\n\n新增了 PingPong、Boomerang 和 AK-47 等新的报价风格。\n\n优化了数据库记录、内存使用和日志记录。\n\n新增了音频提醒、实时钱包显示以及与 grafana 的集成。\n\n增加了 HTTPS、暗黑主题和新 UI 元素。\n\n倾注了对 Kira 的满满爱意。\n\u003C\u002Fdetails>\n\n\u003Cdetails>\u003Csummary>\u003Cb>版本 v0.1.0 更改日志\u003C\u002Fb>\u003C\u002Fsummary>\n\n请参阅上游项目 [michaelgrosner\u002Ftribeca](https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca)。\n\u003C\u002Fdetails>\n\n### 解锁\n\n该机器人对协作者和贡献者开放（欢迎针对已打开的问题或任何你认为有用的内容提交合理的 Pull Request，并在 PR 描述中告知我你希望解锁的 BTC 支付地址，我会为你完成支付）。\n\n在未解锁状态下，订单簿将以实时方式每 121 秒刷新一次；一旦解锁，则仅每 121 秒更新一次。\n\n匿名用户也可以通过向退出时显示的地址支付 0.00121000 BTC 来解锁任意 API 密钥。\n\n解锁后，你可以使用不同的机器人或交易币对，也可以在同一台设备上使用相同的已解锁 API 密钥重新部署。然而，若需使用多个交易所，则必须分别为每个交易所支付解锁费用。\n\n如果你选择不支持 ctubio 的后续开发，只需继续运行旧版本的提交而不升级即可（所有 v0.3.0 之前的提交都是完全解锁状态）。\n\n请勿提出类似“免费版机器人收益比付费版低多少百分比”的问题；这取决于你的交易策略、市场状况以及机器人的实际表现。\n\n### 捐赠\n\n抱歉，本项目并无维护成本。不过你今天就可以为你喜爱的开发者捐款哦！（或者明天也行）\n\n你也可以参考上游项目 [michaelgrosner\u002Ftribeca](https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca)。\n\n或者在 IRC 频道 [#krypto.ninja](https:\u002F\u002Fkiwiirc.com\u002Fclient\u002Firc.libera.chat:6697\u002F?theme=cli#krypto.ninja) 中，通过编程或财务建议贡献你的时间——该频道位于 irc.libera.chat，端口有 6697（SSL）和 6667（普通）两种。当然，你也可以随时提问，但严格来说，提问并不算捐赠。\n\n### 一般讨论\n\n[IRC](https:\u002F\u002Fkiwiirc.com\u002Fclient\u002Firc.libera.chat:6697\u002F?theme=cli#krypto.ninja) 真是太棒了！\n\n不过如果你不喜欢 IRC，也可以加入 [Discord 服务器](https:\u002F\u002Fdiscord.gg\u002FjAX7GEzcWD)。或者你也可以私信 [ctubio 的 Reddit 账号](https:\u002F\u002Fwww.reddit.com\u002Fuser\u002Fctubio)。\n\n此外，在 GitHub 上，你还可以创建一个 [新讨论](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fdiscussions)，让所有人都能永久阅读。\n\n### 衷心感谢：\n\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- https:\u002F\u002Fcurl.haxx.se (https:\u002F\u002Fgithub.com\u002Fbagder)\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- https:\u002F\u002Fgithub.com\u002FuNetworking (https:\u002F\u002Fgithub.com\u002Falexhultman)\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- https:\u002F\u002Fnlohmann.github.io\u002Fjson (https:\u002F\u002Fgithub.com\u002Fnlohmann)\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- http:\u002F\u002Finvisible-island.net\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- https:\u002F\u002Fwww.sqlite.org\n- https:\u002F\u002Fgithub.com\u002Fmichaelgrosner\u002Ftribeca (https:\u002F\u002Fgithub.com\u002Fmichaelgrosner)\n- 但最特别的感谢要送给[你的妈妈](https:\u002F\u002Fyoutu.be\u002FYDafHsyyTNk)。\n\n### 帮助\n\n如果您需要安装或使用方面的支持，请创建一个[新讨论](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fdiscussions\u002Fnew)。\n\n### 问题\n\n如需请求新功能，请打开一个[新问题](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002Fnew?title=Feature%20request)，并详细说明您认为可以改进的地方。\n\n如需报告错误，请先收集所有可能的相关日志信息，然后再打开一个[新问题](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002Fnew?title=Error%20report)。\n\n欢迎提交 Pull Request，但请遵守贡献者许可协议：\n- 您的独特之处将融入我们的项目中。抗拒是徒劳的。\n\n### 就像昨天一样，从0day开始，直到∞\n\n![bcn](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_de8ace1679fa.jpg)\n\n#### 每一天我们都会唱：\n\n\u003Cp>如果爱如此美好，为何你却如此悲伤？\u003Cbr>如果爱如此美好，告诉我，为什么你伤得这么深？\u003Cbr>一 Love！准备好了吗！\u003C\u002Fp>\n\u003Cp>现在感受这鼓点在你心中跳动，\u003Cbr>演奏着节奏，反抗着体制：\u003C\u002Fp>\n\n - https:\u002F\u002Fyoutu.be\u002Fg--fsK6aLf8\n - https:\u002F\u002Fyoutu.be\u002FBncXzyjdREc\n - https:\u002F\u002Fyoutu.be\u002FuEqxj58g6To\n - https:\u002F\u002Fyoutu.be\u002FSS9DJX8gTKk\n - https:\u002F\u002Fyoutu.be\u002Fvu6WXLQT5r8\n - https:\u002F\u002Fyoutu.be\u002Fe8ULyjcSukM\n - https:\u002F\u002Fyoutu.be\u002FRom4qWtEkMA\n - https:\u002F\u002Fyoutu.be\u002FInNk4Z-BGc8\n - https:\u002F\u002Fyoutu.be\u002FxPg_e_3cK-E\n - https:\u002F\u002Fyoutu.be\u002FKKpcQIfIAi8\n - https:\u002F\u002Fyoutu.be\u002FpZAmer0EmMQ\n - https:\u002F\u002Fyoutu.be\u002F50aXt1ctmUU\n - https:\u002F\u002Fyoutu.be\u002Fvofff0Ei3kk\n - https:\u002F\u002Fyoutu.be\u002F4Ois3zB7SJ4\n - https:\u002F\u002Fyoutu.be\u002F_wGDcWD1E1A\n - https:\u002F\u002Fyoutu.be\u002FVOgFZfRVaww\n - https:\u002F\u002Fyoutu.be\u002F1iZdJNH3Z1o\n - https:\u002F\u002Fyoutu.be\u002F_e5hvHL2WTg\n - https:\u002F\u002Fyoutu.be\u002FjQhtEYfax5c\n - 在此添加您的歌曲（请打开一个[新问题](https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002Fnew?title=Today,%20I%20sing)来分享您的链接）\n\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_db91046f2039.jpg\" \u002F>\n\u003Cbr \u002F>\u003Cbr \u002F>\n我们已经有足够的警察了,\u003Cbr \u002F>如果你喜欢冒险，不妨选择成为一名\u003Ca href=\"https:\u002F\u002Fyoutu.be\u002FpT_GM35fM7I\">勇敢的消防员\u003C\u002Fa>。\n\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_29c2f5625b1b.jpg\" \u002F>\n\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>暴力\u003Ca href=\"https:\u002F\u002Fwww.cnvc.org\u002Fabout\u002Fpurpose-of-nvc\">不应\u003C\u002Fa>成为那些\u003Ca href=\"https:\u002F\u002Fnovact.org\u002Fen\u002F\">呼吁\u003C\u002Fa>自由的人的答案。\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_readme_9e757f8f574b.jpg\" \u002F>\n\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fhits.seeyoufarm.com\">\u003Cimg src=\"https:\u002F\u002Fhits.seeyoufarm.com\u002Fapi\u002Fcount\u002Fincr\u002Fbadge.svg?url=https%3A%2F%2Fgithub.com%2Fctubio%2FKrypto-trading-bot%2FREADME.md&count_bg=%2379C83D&title_bg=%23555555&icon=known.svg&icon_color=%2306FF18&title=page+views&edge_flat=false\"\u002F>\u003C\u002Fa>\u003C\u002Fp>","# Krypto-trading-bot 快速上手指南\n\nKrypto-trading-bot（简称 `K`）是一个高度可定制、超低延迟的加密货币做市交易机器人家族，配备功能完善的 Web 界面。它能在普通机器上以毫秒级速度在支持的交易所执行下单或撤单操作。\n\n## 环境准备\n\n### 系统要求\n本机器人专为 **类 Unix 系统** 设计，推荐在以下环境中运行（无需 Docker）：\n- Debian\n- Raspberry Pi OS (树莓派)\n- Red Hat \u002F CentOS\n- macOS\n\n> **注意**：虽然支持 Windows，但需先安装 [MSYS2](https:\u002F\u002Fwww.msys2.org\u002F) 并配置 `make` 工具，建议优先使用 Linux 环境以获得最佳性能。\n\n### 前置依赖\n确保系统已安装以下基础工具：\n- `git` 和 `make`（用于源码安装）\n- 或 `curl` 和 `make`（用于 ZIP 包安装）\n- 推荐的浏览器：Brave 或 Firefox（分辨率建议 1600px 以获得最佳 Web UI 体验）\n\n## 安装步骤\n\n你可以选择通过 Git 克隆源码或通过 Curl 下载最小化安装包。\n\n### 方式一：Git 源码安装（推荐）\n\n1. 克隆仓库并进入目录：\n   ```bash\n   git clone ssh:\u002F\u002Fgit@github.com\u002Fctubio\u002FKrypto-trading-bot K\n   cd K\n   ```\n\n2. 执行安装命令：\n   ```bash\n   make install\n   ```\n\n3. 编辑配置文件 `K.sh`：\n   ```bash\n   vim K.sh\n   ```\n   *在此文件中配置你的交易所 API 密钥、交易对及策略参数。*\n\n### 方式二：Curl 最小化安装\n\n1. 创建目录并下载安装脚本：\n   ```bash\n   mkdir K\n   cd K\n   curl -O krypto.ninja\u002FMakefile\n   ```\n\n2. 执行安装命令：\n   ```bash\n   make install\n   ```\n\n3. 编辑配置文件 `K.sh`：\n   ```bash\n   vim K.sh\n   ```\n\n> **升级提示**：若需升级到最新版本，Git 方式请拉取最新代码后重新编译；Curl 方式直接运行 `make reinstall`。\n\n## 基本使用\n\n配置完成后，你可以通过以下方式启动机器人：\n\n### 1. 前台启动\n直接在终端运行配置脚本：\n```bash\n.\u002FK.sh\n```\n\n### 2. 后台启动（推荐）\n使用 `screen` 在后台运行，方便断开连接后继续交易：\n```bash\nmake start\n```\n\n- 查看运行日志\u002F附着会话：\n  ```bash\n  make screen\n  ```\n- 一次性启动并附着：\n  ```bash\n  make start screen\n  ```\n\n### 3. 控制命令\n- 停止机器人：\n  ```bash\n  make stop\n  ```\n- 重启机器人：\n  ```bash\n  make restart\n  ```\n\n### 4. 访问 Web 界面\n启动成功后，在浏览器中访问本地默认端口（通常在配置文件中指定，默认为 `http:\u002F\u002Flocalhost:3000` 或类似端口），即可看到可视化的交易仪表盘、订单管理和图表分析界面。\n\n> **安全警告**：切勿在任何网站或聊天中泄露你的私钥或 API Secret。本工具仅在本地存储数据，通过 SQLite 进行持久化，数据传输直接使用 CURL 和 OpenSSL 与交易所通信。","一位拥有少量比特币和稳定币的个人交易者，希望在波动剧烈的加密货币市场中通过提供流动性来赚取买卖价差，却受限于手动操作的低效与延迟。\n\n### 没有 Krypto-trading-bot 时\n- **反应速度滞后**：人工盯盘无法在毫秒级内响应价格微小波动，导致挂单常被其他高频机器人“抢跑”，难以成交。\n- **情绪干扰决策**：在市场剧烈震荡时，恐惧或贪婪容易导致非理性撤单或追涨杀跌，破坏既定的做市策略。\n- **无法全天候运行**：人类需要休息，无法做到 7x24 小时不间断监控多个交易对，错失夜间或突发行情的套利机会。\n- **策略执行粗糙**：手动调整买卖价差（Spread）和订单大小不仅耗时，且难以根据实时市场深度进行精细化动态调整。\n\n### 使用 Krypto-trading-bot 后\n- **极低延迟执行**：基于 C++ 构建的 Krypto-trading-bot 能在几毫秒内自动完成下单或撤单，确保在高速变化的市场中始终占据有利价位。\n- **严格纪律执行**：程序完全摒弃情绪干扰，严格按照预设算法在指定价差范围内高频挂单，确保持续稳定的做市逻辑。\n- **无人值守自动化**：部署在 Linux 服务器或树莓派上后，Krypto-trading-bot 可全天候自主运行，利用内置 SQLite 持久化记录数据，不错过任何时段的机会。\n- **动态策略优化**：通过其功能丰富的 Web 界面，用户可实时监控并微调参数，让机器人根据市场流动性自动调整订单规模，最大化资金利用率。\n\nKrypto-trading-bot 将个人交易者从繁琐的手工操作中解放出来，使其能够以机构级的速度和纪律，低成本地实现自动化高频做市盈利。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fctubio_Krypto-trading-bot_267fec30.png","ctubio","Carles Tubio","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fctubio_89aea7f8.jpg","         solidarity with the solidary    \r\n              freedom for the revolutionary","Humans (Milk Mammals group)","Catalonia, Sector 001",null,"https:\u002F\u002Fca.rles-tub.io.\u002F","https:\u002F\u002Fgithub.com\u002Fctubio",[85,89,93,97,101,105,109,113],{"name":86,"color":87,"percentage":88},"C++","#f34b7d",59,{"name":90,"color":91,"percentage":92},"TypeScript","#3178c6",27.8,{"name":94,"color":95,"percentage":96},"C","#555555",6.3,{"name":98,"color":99,"percentage":100},"Makefile","#427819",4.9,{"name":102,"color":103,"percentage":104},"Shell","#89e051",1.1,{"name":106,"color":107,"percentage":108},"Assembly","#6E4C13",0.6,{"name":110,"color":111,"percentage":112},"HTML","#e34c26",0.1,{"name":114,"color":115,"percentage":112},"Dockerfile","#384d54",3679,830,"2026-04-03T19:49:20","NOASSERTION",4,"Linux, macOS, Windows (需安装 MSYS2)","未说明",{"notes":124,"python":122,"dependencies":125},"该工具主要基于 C++ 开发，非 Python 项目。推荐在专用的 Debian、Raspberry Pi、Red Hat、CentOS 或 macOS 实例上安装，不建议使用 Docker（尽管提供了 Dockerfile）。Windows 用户需先安装 MSYS2 并配置 make 工具。数据持久化通过内置的无服务器 SQLite C++ 接口实现。Web 界面推荐使用 Brave 或 Firefox 浏览器，分辨率设置为 1600px。无需配置额外的 Web 服务器，除非需要通过反向代理访问。",[126,127,128,129,130,131,132],"git","make","curl","OpenSSL","SQLite (内置 C++ 接口)","CURL","screen (可选，用于后台运行)",[14],[135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154],"bitcoin","cryptocurrency","trading-bot","trading-platform","trading-strategies","bob-marley","trading","trade","bot-platform","market-maker","market-data","coinbase","hitbtc","bitfinex","exchange","bitmex","binance","kraken","skate-or-die","kucoin","2026-03-27T02:49:30.150509","2026-04-06T05:37:53.395821",[158,163,168,173,178,183],{"id":159,"question_zh":160,"answer_zh":161,"source_url":162},13693,"Bitfinex 钱包限额（wallet-limit）显示不正确或变为无限大怎么办？","这是一个已知的计算逻辑问题。维护者建议通过明确设置挂单金额来修复，确保总量按常规计算。具体代码逻辑应调整为：\nbase.held = orders.heldAmount(Side::Ask)\nquote.held = orders.heldAmount(Side::Bid)\n这样可以让机器人正确识别当前交易对的冻结资金，而不会错误地计入其他持仓或导致数值溢出。","https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002F886",{"id":164,"question_zh":165,"answer_zh":166,"source_url":167},13694,"GDAX\u002FCoinbase 连接交易所时一直显示“connecting”且无法启动机器人怎么办？","这通常是由于环境更新或依赖库变化导致的。尝试以下步骤解决：\n1. 运行 `make reinstall` 命令，这将重新下载 `\u002Flocal\u002Flib\u002FK` 下的必要文件。\n2. 随后运行 `make` 重新编译项目。\n如果是在 Windows 或特定 Linux 发行版上突然失效，可能是交易所端接口变更，建议在干净的 Ubuntu 环境中重试或检查 IRC 频道获取最新支持。","https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002F812",{"id":169,"question_zh":170,"answer_zh":171,"source_url":172},13695,"Bitfinex 交易对下单时价格精度超过 6 位小数被拒绝怎么办？","Bitfinex 实际上支持最多 8 位小数（如 0.00000000），但机器人默认可能只处理 6 位。对于像 XRP\u002FBTC 或 DAT\u002FBTC 这样低价位的交易对，这会导致无法下单。该问题已被确认为 Bug，需要等待官方修复以支持更多小数位。临时变通方法是手动调整订单价格至 6 位小数以内，但这会限制交易策略的精确度。","https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002F403",{"id":174,"question_zh":175,"answer_zh":176,"source_url":177},13696,"在 macOS 上运行 GDAX 或 OKCoin 网关时出现 SIGSEGV 或 Abort trap 错误如何解决？","macOS 上的崩溃通常与 `libquickfix` 或 `stunnel` 兼容性有关，也可能是 `uname` 命令参数不兼容（macOS 的 uname 不支持 `-o` 参数）。\n解决方案包括：\n1. 修改 Makefile，使用 clang\u002FLLVM 而不是 gcc\u002Fg++ 进行编译。\n2. 如果遇到 `uWS\u002FNode.h` 中的 bind 函数类型转换错误，需参考相关 StackOverflow 帖子修复网络绑定逻辑。\n3. 确保系统日志中没有“Three-Headed Monkey found”相关的上游信号错误，必要时检查 FIX 协议配置文件中的 Session 设置。","https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002F136",{"id":179,"question_zh":180,"answer_zh":181,"source_url":182},13697,"GDAX 上的山寨币市场（如 LTC\u002FBTC, ETH\u002FEUR）无法下单或状态不更新怎么办？","这通常是由于节点模块缺失导致的。如果在编译或运行时看到类似 `Cannot find module 'node-uuid'` 的错误，请确保安装该依赖。\n解决方法：\n1. 确认 `src\u002Fserver\u002Fgateways\u002Fcoinbase.ts` 中引用的模块已安装。\n2. 运行 `npm install node-uuid`（或对应的包管理器命令）。\n3. 重新编译并重启机器人，确保版本恢复至支持 GDAX 4.2 API 的稳定版。","https:\u002F\u002Fgithub.com\u002Fctubio\u002FKrypto-trading-bot\u002Fissues\u002F15",{"id":184,"question_zh":185,"answer_zh":186,"source_url":177},13698,"如何排查机器人启动时的“Forever detected script was killed by signal”错误？","该错误通常表示进程因段错误（SIGSEGV）或中止信号（SIGABRT）被强制杀死。\n排查步骤：\n1. 检查编译器版本（如 Apple LLVM clang）是否与代码兼容。\n2. 查看日志中是否有具体的 C++ 堆栈跟踪（tracelog），定位崩溃发生的函数（如 `_ZN1K2EV3wtfEi`）。\n3. 如果是 macOS 用户，特别注意 `uname` 命令的使用差异，某些脚本可能调用了 Linux 特有的参数。\n4. 尝试使用 `gdb` 或 `lldb` 附加调试以获取更详细的崩溃现场信息。",[188,193,198,203,208,213],{"id":189,"version":190,"summary_zh":191,"released_at":192},72569,"0.7.x","已将Coinbase集成更新至高级交易API。","2024-09-17T14:54:14",{"id":194,"version":195,"summary_zh":196,"released_at":197},72570,"0.6.x","新增了“Hello World”机器人、投资组合机器人、量化交易机器人和稳定币机器人。  \n新增了币安、Kraken、库币、Gate.io 和 BitMEX 的 API。","2021-01-15T05:27:12",{"id":199,"version":200,"summary_zh":201,"released_at":202},72571,"0.5.x","更新了交易所集成，将其封装为简单的 libcurl 封装器。","2019-05-31T13:42:05",{"id":204,"version":205,"summary_zh":206,"released_at":207},72572,"0.4.x","添加了从所有其他类派生的主 KryptoNinja 类，已准备好进行扩展。\n在各处引入了 C++ 面向对象编程。\n添加了测试单元。\n增加了 --interface=IP 参数，用于将出站流量绑定到特定的网络接口。\n添加了 Ethfinex 和 FCoin 的 API。\n~~更新 OKEx WebSocket 为二进制数据格式。~~\n添加了内置文档根目录，以停止从磁盘读取文件。\n添加了针对 win32 的构建链。\n添加了针对 OSX v10.13 的构建链。","2018-02-23T00:14:31",{"id":209,"version":210,"summary_zh":211,"released_at":212},72573,"3.0","更新了 HitBTC API v2。\n为不喜欢使用 Git 的用户添加了 ZIP 安装步骤。\n在 b-seite 和 serzhiio 的贡献下，新增了 HamelinRat 报价模式和趋势安全机制。\n增加了对 XMR 网络生态系统的可选支持。\n新增了命令行参数。\n更新了无需 Node.js 的报价引擎和网关。\n添加了 Makefile 以替代 npm 脚本。\n~~添加了 PNG 文件作为配置文件。~~\n内置了 C++ WWW 服务器，以取代 expressjs 和 socketio。\n内置了 SQLite C++ 接口，以取代外部 MongoDB 服务器。\n新增了 Poloniex API。","2017-06-14T03:02:39",{"id":214,"version":215,"summary_zh":216,"released_at":217},72574,"2.0","因Kira的缘故，将应用名称更新为K。\n新增了Node.js 7、TypeScript 2、Angular 4和RxJS。\n增加了对带宽、源代码、依赖项及安装步骤的清理工作。\n在Camille92的巧妙建议下，添加了大量引用参数。\n支持多实例\u002F配置文件，并配备了嵌套式套娃风格的UI界面。\n引入了npm脚本、david-dm、Travis CI、Coveralls和Codacy等工具。\n添加了历史图表以替代Grafana。\n实现了C++数学函数。\n更新了OKCoin API（依据https:\u002F\u002Fwww.okcoin.com\u002Ft-354.html）。\n更新了Bitfinex API v2。\n通过stunnel接入GDAX FIX API。\n~~新增了Korbit API。~~\n优化了数据库记录、内存使用及日志记录。\n增加了音频提醒、实时钱包显示功能，并集成了Grafana。\n启用了HTTPS、深色主题，并引入了新的UI元素。\n为Kira注入了一点心意。","2018-02-22T19:12:36"]