Скилл indicator-port

Начальный 5 мин

Если вы переносите индикаторы часто или целыми наборами, удобнее, когда агент делает это по одному порядку.

Скилл его задаёт: агент заново пишет логику, показывает таблицу, что перенесётся и как, проверяет результат и называет отличия.

Как установить

Скопируйте текст скилла и вставьте его в чат агента, добавив сверху такую строку:

Сохрани это как скилл с именем "indicator-port". Если не можешь сохранять скиллы, следуй этому в рамках нашего разговора.
indicator-port.SKILL.mdНажмите, чтобы скачать
Текст скилла
---
name: indicator-port
description: Перенос индикатора с другой платформы в ATAS через MCP-сервер ATAS и Script Lab: агент заново пишет логику, называет отличия, сверяет расчёт. Используй, когда пользователь просит перенести, портировать или переписать индикатор по исходному коду. Нужен исходный код. Не для закрытых индикаторов, торгующих стратегий и ордеров.
compatibility: Нужны MCP-сервер ATAS, Script Lab на тарифе, разрешение на скриптовые индикаторы, исходный код и возможность запускать код для сверки.
metadata:
  version: 0.1
  updated: 2026-11-01
---

# indicator-port

Перепиши логику индикатора для ATAS и честно покажи, чем результат отличается от оригинала. Отвечай на языке пользователя. Если в исходнике есть стратегия и ордера, переноси только расчёт и отметки. Ордера не добавляй.

## Жёсткие правила

- Сначала права. Работай только с кодом, который написал сам пользователь или чья лицензия это разрешает. Если человек не знает, скажи об этом и попроси проверить. Сохрани указание автора и лицензии из исходника. Не обходи защиту и не восстанавливай закрытый код.
- Не называй перенос точной копией. Говори: «логика переписана, отличия вот такие».
- Перед сохранением всегда прогоняй `scripts_preview`.
- Сверяй результат отдельным расчётом по `chart_get_bars`. Если у пользователя есть значения из оригинала, сверяй и с ними. Бары и скриншоты AI Connect отдаёт по криптовалютам. Если график пользователя на другом инструменте, предложи сверить на криптографике из его подключения или сверить со значениями из оригинала.
- Если часть не переносится, спроси, что делать. Не заменяй её молча.
- Имя индикатора делай своим. Названия других платформ и их торговые марки в имя не включай.

## 1. Разбери исходник

Составь таблицу до любых изменений:

```
Что в исходнике       Как будет в ATAS       Статус
<функция, настройка>  <чем заменяем>         как есть / иначе / не переносится
```

Что проверить отдельно: данные другого инструмента или периода, расчёт внутри незакрытого бара, графические элементы, алерты, логика стратегии.

## 2. Перенеси

1. Прочитай ресурс `atas://docs/atas-script`, если он доступен. Если исходник похож на тот синтаксис, который ATAS Script понимает сам, сначала проверь его как есть через `scripts_validate`.
2. Разбери диагностику. Ошибку на данных другого периода или инструмента покажи пользователю и предложи варианты с их ценой. Спроси, какой выбрать.
3. `scripts_preview` на графике пользователя: сколько баров, какие серии.

## 3. Сверь

Отдельный расчёт кодом на тех же барах. Назови число совпавших баров и допуск. Назови, от чего результат зависит: например, от глубины загруженной истории или от периода графика.

## 4. Сохрани

Сохраняй, только если пользователь просил или согласился: `scripts_create` (он сразу компилирует; при `compiled: false` правь через `scripts_update_source`), затем `scripts_add_to_chart`. Проверь через `module_screenshot`.

## 5. Ответ

```
Индикатор: <имя>, <куда добавлен>
Что перенесено как есть: <список>
Что сделано иначе: <список и почему>
Что не перенесено: <список>
Проверка: <период, число баров, с чем сравнивали, совпало ли>
На каких периодах корректен: <список>
Автор и лицензия исходника: <как указано в исходнике>
```

Если что-то отображается неверно, попроси описать разницу и почини: сначала причина, потом правка, потом снова превью и сверка.

Как запустить

Используй indicator-port. Этот код написал я сам, перенеси его на мой график BTCUSDT 5m.

<вставьте сюда исходный код>

Для примера возьмём небольшой индикатор, написанный специально для этой страницы:

//@version=5
indicator("Volume Spike Bands", overlay=true)
len = input.int(30, "Length")
mult = input.float(2.0, "Multiplier")
basis = ta.sma(close, len)
dev = mult * ta.stdev(close, len)
plot(basis, "Basis", color=color.gray)
plot(basis + dev, "Upper", color=color.teal)
plot(basis - dev, "Lower", color=color.red)
spike = volume > ta.sma(volume, len) * 2
plotshape(spike and close > basis + dev, "Up spike", shape.triangleup, location.belowbar, color.teal)
plotshape(spike and close < basis - dev, "Down spike", shape.triangledown, location.abovebar, color.red)
alertcondition(spike, "Volume spike", "Volume spike")

Что вы получите

Сначала агент сверяет расчёт и останавливается на том, что не переносится один в один. Здесь это алерт:

Чат с ИИ-агентом
Вы

Используй indicator-port. Этот код написал я сам, перенеси его на мой график BTCUSDT 5m.

<вставьте сюда исходный код>

ИИ-агент

Расчёт перенесён и проверен: совпали три линии на 100 закрытых барах BTCUSDT 5m и все 12 отметок. Допуск - 0,000001.

Сохранение и добавление на график ожидают вашего выбора: компилятор принимает alertcondition, но не создаёт оповещение.

Заменить его на alert() ATAS не чаще раза за бар или сохранить без оповещений?

Спрашиваю по вашей инструкции indicator-port: «Если часть не переносится, спроси, что делать. Не заменяй её молча».

Вы

Сделай автоматическое уведомление раз на бар.

ИИ-агент

Индикатор «Импульс объёма - полосы» сохранён и добавлен на ваш BTCUSDT 5m Binance Futures. Отображение проверено.

  • Как есть: настройки 30 и 2, три линии, условия всплеска объёма и треугольные отметки.
  • Иначе: alertcondition заменён автоматическим alert() - при всплеске объёма, не чаще раза за бар, без ожидания закрытия.
  • Не перенесено: ничего; алерт заменён с вашего согласия.
  • Проверка: 100 закрытых баров 5 ноября, 13:00-21:15 UTC. Независимый расчёт по chart_get_bars: совпали все три линии и 12 отметок, допуск 0,000001. Доставку живого уведомления ещё не наблюдал.
  • Периоды: проверен 5m; логика работает на текущем периоде после накопления 30 баров. На открытом баре значения меняются.
  • Автор: вы; лицензия не указана. Авторство сохранено в коде.

Логика переписана для ATAS; поведение уведомлений и оформление зависят от платформы.

График BTCUSDT с перенесённым индикатором

Если значений с исходной платформы нет, сверка показывает только то, что код считает задуманное. Дайте несколько значений с датой и временем, и агент сравнит с ними.

Что нужно

  • Агент, который умеет запускать код для сверки