The MoonCMD remote-control protocol

Мунбот может принимать команды удаленного управления на UDP порт, высылать ответы, и высылать регулярные обновления.

команды принимаются в формате:

hash команда

где hash = HMAC-SHA256(команда, пароль); порт и пароль задаются в “Настройки - Специальные - Remote”:


Поля: UDP Commands Port\pass

Впишите порт, на котором Мунбот будет слушать команды, и пароль, который будет использоваться для подписи команд.

Общий формат ответов:

ответы шлются в виде json, с gzip:

{"cmd":"<string command type>","bot":"string Bot Name","N": int,"data":"string"}

Команды (кроме стандартных, описанных в “hi” в телеге)

buy ... - применяются стандартные правила для сигналов на покупку

short ... - применяются стандартные правила для сигналов на шорт (фьючерсы)

sell token - Включить Паник Селл на монете. Пример: sell NEO

SellALL - Включить Паник Селл НА ВСЕХ активных ордерах и остановить бота

list ("lst" для короткого формата) - Список активных ордеров на продажу

silent - Отключить уведомления бота в чат о закрытых сделках

talk - Включить уведомления бота в чат о закрытых сделках

STOP - Нажать Стоп в боте (Не покупать новые сигналы)

CancelBuy - Отменить все неисполненные BUY ордера

START - Нажать Старт в боте, запустить стратегии

BL - Показать черный список монет

BL + coin - Добавить монету coin в ЧС

BL - coin - Убрать монету coin из ЧС

TempBL +N coin1 coin2 - Временный ЧС на N часов

SetParam Strategy Param Value - Поменять параметр в стратегии ("empty" для пустой строки)

SetBL+ Strategy coin - Добавить монету в ЧС стратегии или папки

SetBL- Strategy coin - Убрать монету из ЧС стратегии или папки

SetWL+, SetWL- Strategy coin - аналогично для БС

sgStart Strategy, sgStop Strategy <время, минуты>) - запустить или остановить стратегии на заданное время

ResetSession coin | ALL - сбросить сессии на монете (coin) или на всех рынках (all)

ResetLoss - сбросить счетчик профита

Leverage X [coin,coin] - поменять плечо на монетах на X

Margin [coin,coin \ ALL] ISO\Cross - поменять маржу на маркетах

ConvertBNB - пыль в BNB

report [N days \ weeks] [coin] [hide] - выслать отчет. По умолчанию за сегодня

SellPiece [coin\ALL] - продать по кусочку от каждого ордера (если параметр в стратегии SellPiece не 0)

DoUpdate - обновить версию

GetStrategiesFull выслать все стратегии

GetStrategiesActive выслать только активные стратегии

Формат выдачи:

{"cmd":"strats","bot":"BotName","N":number,"data":"string"}

N: номер пакета (все страты могут не влезть, тогда дробятся на N пакетов)

Data: список стратегий (формат обычный как при копировании страты в буфер):

##Begin_Strategy

##End_Strategy

В одном пакете может быть подряд несколько страт

Регулярные апдейты от бота на порт, с которого пришла команда:

Ордера

{"cmd":"order","bot":"BotName","oid":number,"sql":"string"}


Oid: ID ордера в БД Мунбота. Нужно использовать для корректного обновления записей в БД, когда прилетают новые sql после изменения цен, частичного или полного исполнения ордера

Балансы: (шлет раз в 5 сек)


{"cmd":"acc","bot":"BotName", "data":{ "A":”double”,"T":"double", "S":bool,"V":int}}

A: Available доступный баланс

T: Total - всего баланс

S: запущен ли бот 

V: номер версии (без точки, в формате 756)