# Алгоритм 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](https://guide.moontrader.com/sovety-i-rekomendacii/bot-client-upravlenie-moontrader-cherez-telegram).

***

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

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

#### Каналы

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

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

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

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

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

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

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

***

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

***

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

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