﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Как мы с помощью ИИ пишем коннекторы к криптобиржам</title>
  <id>~/topic/26158/kak-my-s-pomoshshyu-ii-pishem-konnektory-k-kriptobirzham/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-09T06:01:37Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=26158" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/83155/</id>
    <title type="text">Или как ИИ может сэкономить вам часы работы, но не спасёт от необходимости проверять каждый шаг. cla...</title>
    <published>2024-09-04T21:35:45Z</published>
    <updated>2024-09-05T05:54:45Z</updated>
    <author>
      <name>StockSharp</name>
      <uri>https://stocksharp.com/users/1/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;em&gt;Или как ИИ может сэкономить вам часы работы, но не спасёт от необходимости проверять каждый шаг.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154508/claudeai-vs-chatgpt.jpg' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154508/claudeai-vs-chatgpt.jpg?size=800x800" alt="claudeai-vs-chatgpt.jpg" title="claudeai-vs-chatgpt.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Сентябрь 2024 года. Мы, команда &lt;b&gt;StockSharp&lt;/b&gt;, активно используем ИИ для написания коннекторов к криптобиржам. Но спешу вас предупредить — если вы читаете эту статью в 2025 году или позже, всё это может уже устареть. Если вы из будущего, добро пожаловать в прошлое! И не забудьте проверить, актуальны ли наши методы.&lt;br /&gt;&lt;br /&gt;Наш путь с ИИ начался с &lt;b&gt;ChatGPT 3.5&lt;/b&gt;, который, откровенно говоря, не мог бы написать не то что коннектор для криптобиржи, а даже простую торговую стратегию. Однако с приходом &lt;b&gt;ChatGPT 4.0&lt;/b&gt; и &lt;b&gt;Claude Sonnet 3.5&lt;/b&gt; ситуация резко изменилась. Теперь ИИ может писать сложные модули кода, хотя и с оговорками: приходится вмешиваться, уточнять и исправлять ошибки, что, впрочем, стало уже нормой в нашем процессе.&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Шаг 1. Запуск проекта в Claude.ai&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Прежде чем начать писать новый коннектор, первым делом мы создаём &lt;b&gt;проект в Claude.ai&lt;/b&gt;. Это не просто чат, который забудет всё, как только вы его закроете. Проект позволяет сохранять всё, что вы туда загружаете: коды, документы, комментарии. Это аналог настроек &lt;b&gt;Custom GPT&lt;/b&gt;, где ИИ &amp;#171;учится&amp;#187; на ваших примерах и указаниях, а не просто отвечает на вопросы.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154507/claude-project.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154507/claude-project.png?size=800x800" alt="project.png" title="project.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Интерфейс создания проекта в Claude.ai. Здесь сохраняются все данные и примеры, что позволяет поддерживать контекст работы.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Claude.ai — это как ваш личный программист, который что-то понимает, но без вашего надзора может написать что-то, от чего волосы на голове зашевелятся. Так что держите рядом документацию и свою бдительность.&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Шаг 2. Копируем существующий код&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Чтобы не изобретать велосипед каждый раз, мы берем за основу уже существующий коннектор, например, для &lt;b&gt;Coinbase&lt;/b&gt;. Мы копируем структуру проекта и адаптируем все ключевые классы и методы под новую биржу. Это только начало пути — дальше начинается самое интересное.&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Шаг 3. Адаптация WebSocket клиента&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Теперь пора настраивать WebSocket клиента для новой биржи. Для примера возьмем &lt;b&gt;GateIO Spot WebSocket v4&lt;/b&gt;. Claude.ai помогает с генерацией кода, но тут начинается наша постоянная борьба с неточностями. ИИ частенько генерирует код, который в теории кажется правильным, но на практике нужно дополнять и исправлять.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154495/1.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154495/1.png?size=800x800" alt="1.png" title="1.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Исходный код WebSocket клиента для одной из бирж, сгенерированный Claude.ai. ИИ предлагает расширить типы данных и события.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Когда доходит до аутентификации, ИИ часто ошибается, и приходится вручную добавлять недостающие элементы. Claude может забыть даже такие базовые вещи, как авторизация перед подпиской на каналы WebSocket.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154486/2.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154486/2.png?size=800x800" alt="2.png" title="2.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Claude.ai допустил ошибку при реализации авторизации WebSocket. Мы исправили код и добавили корректную авторизацию перед подключением.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Мы также переделываем код так, чтобы сделать его более гибким и передавать адрес WebSocket через параметр. Это позволяет нам легко адаптироваться к различным биржам и их API.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154499/3.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154499/3.png?size=800x800" alt="3.png" title="3.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Пример кода, где веб-сокет передается как параметр, что делает архитектуру более гибкой.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Шаг 4. Настройка REST клиента и адаптера&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;После настройки WebSocket клиента мы приступаем к REST клиенту. Claude.ai генерирует базовые запросы, но нам приходится вручную уточнять, корректны ли они. API бирж отличаются, и нужно быть внимательным, чтобы не пропустить важные детали в документации.&lt;br /&gt;&lt;br /&gt;Когда клиент готов, мы переходим к адаптеру для &lt;b&gt;StockSharp&lt;/b&gt;, где происходит основная магия — обработка данных и их приведение к единому формату. Тут ИИ помогает с генерацией классов, но всегда стоит сверять каждый шаг. Особенно это важно при работе с JSON данными, передаваемыми через API биржи.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154488/5.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154488/5.png?size=800x800" alt="5.png" title="5.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Сгенерированные классы для доменной модели. Мы вручную дополнили их атрибутами и исправили типы данных.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Claude может предложить интересные решения, но нужно добавлять атрибуты, такие как &lt;b&gt;JsonProperty&lt;/b&gt;, чтобы корректно обрабатывать данные биржи. Если вы этого не сделаете — готовьтесь к сюрпризам в виде неверных данных в отчётах.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154493/6.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154493/6.png?size=800x800" alt="6.png" title="6.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Мы добавили атрибуты JsonProperty для правильной работы с JSON данными.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Обработка торговых данных — ещё один важный этап, где ИИ не всегда справляется самостоятельно. Например, данные сделок и их обработка могут вызывать ошибки.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154497/7.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154497/7.png?size=800x800" alt="7.png" title="7.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Claude исправляет код для обработки данных торгов, передаваемых через WebSocket и REST API.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Шаг 5. Оптимизация и новые методы&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Claude.ai неплохо справляется с написанием базовых методов, таких как работа со свечами и торговыми данными. Однако его предложения требуют оптимизации. Мы часто выносим логику в отдельные классы для лучшей структуры.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154489/8.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154489/8.png?size=800x800" alt="8.png" title="8.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Оптимизация методов для работы со свечами и данными торговли через WebSocket, вынесенные в отдельные классы.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Также приходится дорабатывать методы для работы с торговыми операциями через WebSocket. И хотя ИИ помогает автоматизировать такие процессы, код всё равно требует финальной доводки.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154494/9.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154494/9.png?size=800x800" alt="9.png" title="9.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Claude.ai добавил методы для торговых операций в SocketClient, но их пришлось оптимизировать и исправить ошибки.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Шаг 6. Тестирование — код работает не всегда с первой попытки&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Когда код готов, самое время его протестировать. Здесь ИИ снова приходит на помощь, но все его предложения нужно тщательно проверять, потому что часто с первого раза всё работает некорректно. Например, при тестировании работы с API биржи мы сталкиваемся с ошибками при запросах инструментов и позиций.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154490/10.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154490/10.png?size=800x800" alt="10.png" title="10.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Claude.ai предложил код для работы с REST API Gate.io, но его нужно было тестировать и дорабатывать.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Шаг 7. Конвертация данных для спота и деривативов&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Claude.ai помогает с генерацией классов для работы со спотом и деривативами, но опять же — будьте готовы к тому, что нужно будет корректировать методы и типы данных вручную. Например, работа с деривативами на Gate.io требует дополнительных проверок и доработок.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154492/11.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154492/11.png?size=800x800" alt="11.png" title="11.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Claude.ai предложил класс Extensions для поддержки конвертации данных между спотом и деривативами на Gate.io.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Мы также адаптируем &lt;b&gt;SpotAdapter&lt;/b&gt; для корректной обработки данных биржи, используя методы конвертации, предложенные Claude.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154498/12.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154498/12.png?size=800x800" alt="12.png" title="12.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;SpotAdapter был переписан с учетом изменений в HttpClient и SocketClient, используя методы из Extensions.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Шаг 8. Адаптер для фьючерсов и исправления ошибок&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Claude.ai помогает с написанием методов для работы с фьючерсами, но, как и прежде, требуется тщательная проверка логики и исправление ошибок. Например, при сборке стакана данных мы столкнулись с проблемой обработки исключений.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154496/13.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154496/13.png?size=800x800" alt="13.png" title="13.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Сгенерированный HttpClient для работы с фьючерсами через REST API Gate.io.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Claude также иногда ошибается с обработкой данных в адаптере фьючерсов. Приходится вручную настраивать методы для правильной работы со стаканом.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154491/14.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154491/14.png?size=800x800" alt="14.png" title="14.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Исправленный адаптер для фьючерсов с правильной логикой работы со стаканом.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;В результате после исправлений ИИ предложил оптимизированный метод для работы с ордербуками и восстановления данных.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154501/15.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154501/15.png?size=800x800" alt="15.png" title="15.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;Оптимизация методов для восстановления и работы со стаканом данных на основе предложений Claude.ai.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;GitHub Copilot — разрекламированная игрушка или настоящий помощник?&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;GitHub Copilot, который Microsoft и GitHub активно продвигают как инструмент будущего, на самом деле в своём текущем виде является скорее интересной игрушкой, нежели полноценным помощником программиста. Copilot помогает писать нужные участки кода, но по-настоящему выдающихся результатов от него ждать не стоит — его сила в доработке и предложениях по улучшению кода. Однако его главный плюс — это тесная интеграция со средой разработки, что делает его удобным для быстрых правок и завершения шаблонного кода, с чем он справляется гораздо лучше, чем написание сложных логических модулей.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href='https://stocksharp.com/file/154506/copilot.gif' class='lightview' style='max-width: 800px;' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.com/file/154506/copilot.gif" alt="copilot.gif" title="copilot.gif" style='max-width: 800px;'/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;ИИ: усилитель возможностей для профессионалов и преграда для новичков&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Если вы начинающий разработчик и только погружаетесь в мир программирования, то вам, мягко говоря, не повезло. На текущий момент ИИ никак не повысит вашу эффективность. Более того, доверяя ИИ в сложных задачах, вы можете ещё больше запутаться в коде и проблемах, которые он генерирует. Совсем другое дело — опытные программисты. &lt;br /&gt;&lt;br /&gt;Для профессионалов ИИ действительно становится мощным инструментом, который преумножает их возможности: увеличивает скорость разработки, предлагает решения, обогащает знания о различных технологиях и библиотеках. В таком тандеме ИИ помогает фокусироваться на ключевых аспектах проекта, оставляя рутину на его плечах.&lt;br /&gt;&lt;br /&gt;Однако, как мы уже упоминали, ИИ бьёт по самому слабому месту — начинающим разработчикам, делая разрыв между ними и профессионалами ещё большим. Опытные программисты могут быстро выявить ошибки ИИ, исправить их и продолжить работу, тогда как новичок просто утонет в этих проблемах. Иронично, что в то время, когда ИИ задумывался как помощь для всех, он пока лишь увеличивает этот разрыв.&lt;br /&gt;&lt;br /&gt;Но стоит надеяться, что в будущем ИИ станет более самостоятельным в программировании, и тогда этот разрыв может не только перестать расти, но и вовсе исчезнуть, выравнивая шансы для всех, независимо от их уровня подготовки.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>