> For the complete documentation index, see [llms.txt](https://guide.moontrader.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://guide.moontrader.com/torgovlya/algoritmicheskii-treiding/algoritm-signal.md).

# Алгоритм Signal

Алгоритм размещает ордера на бирже на основе торговых сигналов из Telegram-каналов. Встроенный Telegram-бот MoonTrader отслеживает указанные каналы и при появлении сигнала автоматически выставляет ордер с параметрами из этого сигнала: ценой входа, Take Profit и Stop Loss.

Алгоритм не анализирует рынок самостоятельно — он полностью зависит от внешних сигналов. Вы определяете, каким каналам доверять и по каким правилам их разбирать, а алгоритм берёт на себя исполнение.

***

### Как работает алгоритм

#### Принцип работы

1. **Получение сигнала**

   BotClient подключается к вашему аккаунту в Telegram и отслеживает выбранные каналы. Как только в канале появляется новое сообщение — бот разбирает его по заданным правилам парсинга и передаёт сигнал алгоритму.
2. **Проверка задержки**

   Алгоритм проверяет, насколько свежий сигнал. Если с момента публикации прошло больше, чем задано в параметре «Максимальная задержка сигнала» — ордер не выставляется. Аналогичная проверка выполняется для задержки биржевых данных.
3. **Размещение ордера**

   При прохождении всех проверок алгоритм выставляет ордер с направлением, типом, размером и ценой, полученными из сигнала и настроек алгоритма.
4. **Управление позицией**

   После исполнения ордера активируются Take Profit и Stop Loss. Логика приоритетов:

   | В сигнале  | В алгоритме | Результат                       |
   | ---------- | ----------- | ------------------------------- |
   | Есть TP/SL | Нет TP/SL   | TP/SL не выставляются           |
   | Нет TP/SL  | Есть TP/SL  | Выставляются TP/SL из алгоритма |
   | Есть TP/SL | Есть TP/SL  | Выставляются TP/SL из сигнала   |

***

### Подготовка: настройка BotClient

Прежде чем запустить алгоритм, необходимо подключить Telegram-аккаунт в BotClient и выбрать каналы для отслеживания.

#### Шаг 1. Подключите Telegram-аккаунт

1. Откройте BotClient и перейдите в меню **«Profile» → «Telegram Profile»**.
2. Нажмите **«Login»**.
3. Введите номер телефона.
4. Введите код из Telegram.
5. Введите пароль, если включена двухфакторная аутентификация.

После успешной авторизации в разделе **Profile → Telegram Profile** отобразится статус `AUTHENTICATED`, имя аккаунта и номер телефона.

#### Шаг 2. Выберите каналы для отслеживания

1. Перейдите в меню **«Algorithms» → «Signals» → «Channels»**.
2. Отметьте каналы, сигналы из которых нужно обрабатывать.
3. Нажмите **«Execute»**.

#### Шаг 3. Настройте правила парсинга (опционально)

Для каждого канала можно задать индивидуальные правила разбора сообщений: **«Algorithms» → «Signals» → «Channel Settings»**.

| Поле                   | Описание                                          | Пример             |
| ---------------------- | ------------------------------------------------- | ------------------ |
| Words to ignore        | Слова, при наличии которых сообщение игнорируется | `SCAM, CALLED`     |
| Words to buy           | Слова, означающие сигнал на покупку               | `BUY, LONG`        |
| Words to sell          | Слова, означающие сигнал на продажу               | `SELL, SHORT`      |
| Words to spot market   | Слова для определения спот-рынка                  | `SPOT`             |
| Words to USDT-M market | Слова для фьючерсного рынка                       | `FUTURES, USDT-M`  |
| Words to COIN-M market | Слова для COIN-M рынка                            | `DELIVERY, COIN-M` |

После настройки BotClient начнёт отслеживать выбранные каналы и автоматически передавать сигналы на все подключённые ядра.

#### Формат сигнала

По умолчанию BotClient распознаёт сигналы следующего формата:

```
Binance
USDT-M
sell galausdt
tp 3%
sl 4%
```

Строки с биржей и типом рынка определяют, куда будет выставлен ордер. Направление, пара, Take Profit и Stop Loss берутся из текста сигнала напрямую.

> ⚠️ Другие форматы сигналов в настоящее время не поддерживаются.

> Подробнее об установке и полных возможностях BotClient — в разделе [BotClient](/sovety-i-rekomendacii/bot-client-upravlenie-moontrader-cherez-telegram.md).

***

### Настройка алгоритма

#### Параметры алгоритма

#### Каналы

Укажите названия Telegram-каналов, из которых алгоритм будет получать сигналы.

Один алгоритм Signal может слушать несколько каналов одновременно. Для разных стратегий удобно создавать отдельные алгоритмы с разными наборами каналов.

> ⚠️ Канал должен быть добавлен и активирован в BotClient — иначе сигналы из него не поступят.

#### Максимальное значение задержки сигнала

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

#### Ждать отмены ордеров

Если включено — алгоритм не обрабатывает новый сигнал, пока по текущему стоит активный ордер. Следующий сигнал будет принят только после отмены предыдущего ордера.

***

> Если в алгоритме задано направление Buy, но сигнал пришёл на Sell — ордер выставлен не будет.

***

### Контакты и поддержка

Если у вас возникли вопросы по настройке алгоритма или вы хотите предложить улучшения, обратитесь в [службу поддержки](https://t.me/moontrader_support_ru).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://guide.moontrader.com/torgovlya/algoritmicheskii-treiding/algoritm-signal.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
