/Введение
/intro - Описание и Установка
Введение:
Торговый бот Тибот — это робот-помощник, который выполняет рутинную работу трейдера. Бот не может сделать Вас в одночасье богатым, это инструмент, а как пользоваться этим инструментом —решать Вам.
Внимание: разработчик не несет ответственности за ошибки в работе алгоритмов бота или в работе биржи и брокера.
- Активация.
- Для активации подключитесь к телеграмм-боту @tibotbot, далее активируйте, командой /token подключив Ваш токен.
- Для получения токена перейдите на сайт «Тинькофф», в раздел «Настройки».
- Токен для песочницы более не принимается ботом, т.к. разработка демо-бота временно приостановлена.
- Внимание: каждый раз обращаясь к «Тинькофф» за токеном Вы получаете новый токен, и старый прекращает свое действие, таким образом всегда можно отозвать старый токен.
Также хотим сообщить, что токен не позволяет распоряжаться Вашими активами, токен только позволяет осуществлять операции купли-продажи без доступа к части фондов и инструментов для квалифицированных инвесторов и доступа к ИИС (индивидуальный инвестиционный счет), выводов и переводов средств куда-либо.
Бот готов к работе.
Личный кабинет.
Личный кабинет позволяет просматривать список задач, предоставлять статистику, останавливать действие бота. Активация личного кабинета не является обязательным условием работы.
Для активации личного кабинета на сайте tibot.ru в форме регистрации укажите свой почтовый ящик, на который придет ответ с паролем. После отправьте телеграмм-боту @tibotbot команду /reg ваш@ящик.ру пароль из письма.
Поздравляем! Личный кабинет активирован.
/help
/help - Вывод краткой справочной информации в телеграмм боте.
Пример:
- /help - Список доступных команд
- /order - $tiker qLots pPrice операция: [BUY или SELL]
- /cancel - Формат: /cancel OrderID - Отменить ордер
- /orders - Получение списка активных заявок
- /ob - $tiker - стакан по тикеру
- /portfolio - Получение портфеля клиента
- /task - $tiсker qLots pPrice Buy/Sell t10:00 d240620 cnt5 min1.01 max10.9
- q - количество лотов
- p - цена
- d - дата
- t - время
- cnt - количество попыток
- min или max - минимальная/максимальная цена покупки/продажи
- ql - ограничение на максимальное количество лотов
- enddate endtime - дата после которой ордер уже не ставиться
- ts - Trailing Stop - фиксатор прибыли, можно задавать в процентах или в пунктах ts0.35 или ts1.5%
- cycl - Повторять данную позицию (если параметр установлен cycl8 - 8 раз, если не установлен, тогда 10000000)
- m - Период повторения m5 m30 в минутах
- oc - Only Close ордер будет выполнен только для закрытия
- first - Установка ордера на первое место впереди всех
- forward (или forth) - Установка ордера на первое место вместе со всеми
- /tasks - Список задач
- /taskcancel - 12345 отмена задачи
- /taskedit - номер задачи NewParameters
- /ChatID - Получить свой собственный Chat ID
- /token - Установить TOKEN для торговли
- /calc - калькулятор
- /sub portfolio
- $tiсker all
-
- enddate endtime - дата после которой подписка уже не действует
- m - Период повторения m5 m30 в минутах (по умолчанию m1)
- /subs - Список подисок
- /subcancel - s12345 отмена подписки
- /stop - all - убрать всё, drop - в том числе снять все установленные ордера
- /operation - Получение информации по операциям. Параметры: $ticker, all (выводит весь список без суммирования)
/order
/order -
Данная команда отправляет заявку на покупку или продажу аналогично нажатием кнопки Купить или Продать в приложении или терминале.
Пример:
- /order buy q1 $aapl
- Купить одну акцию $aapl по рынку
- /order sell q1 $aapl
- продать одну акцию $aapl по рынку
- /order buy q1 $aapl p134
- Поставить ордер на покупку одной акцию $aapl за 134$
- /order sell q1 $aapl p148
- Поставить ордер на продажу одной акцию $aapl за 148$
/cancel
/cancel
- Удалание отложенного ордера
Для удаления созданного ранее ордера необходимо знать его id. Приложение и терминал не сообщает его, поэтому для удаления ордера нужно получить его id командой /orders.
Пример:
- /cancel 311305460240
- Ордер успешно отменен: Ok
/orders
/orders - Получение списка активных заявок
Пример:
- /orders
- 311305460240 PBF[PBF Energy Inc] Buy New 13.3
- 311305411401 NRG[NRG Energy Inc] Sell New 41.3
/ob
/ob $tiker -
Команда осуществляет вывод информации о текущих заявках(стакан), информация аналогична представленной в приложении или терминале.
Расшифровка:-
- последняя цена(цена последней сделки)
- bid - продажа
- ask - покупка
- цена - количество предложений.
*Важно отметить, что бот пока ещё не выделяет ваши заявки по стакану.
Пример:
- /ob $aapl
- Последняя цена: 141.97
- ask 142.17 16
- ask 142.14 1
- ask 142.1 1
- ask 142.09 101
- ask 142.04 17
- ask 142.03 120
- ask 142.01 312
- ask 142 99
- ask 141.98 3
- ask 141.97 46
- bid 141.95 6
- bid 141.93 38
- bid 141.92 1
- bid 141.9 5
- bid 141.89 100
- bid 141.87 312
- bid 141.8 103
- bid 141.79 5
- bid 141.78 93
- bid 141.77 7
/portfolio
/portfolio - Получение портфеля клиента
— это вывод актуальных данных о портфеле.
Пример:
- /portfolio
- 💼ПОРТФЕЛЬ:
- 📈Всего: 644.77$ [3528.19$] (Баланс: 0.56€ -280439.07₽ 12487.35$)
- -------------------
- 🔺621.82(9%) [59.49 - 64.85] $ 116 шт. YY JOYY Inc
- -------------------
- 🔻-0.08(0.9%) [9.27 - 9.19] $ 1 шт. PCG PG&E
- -------------------
- 🔺16.79(0.5%) [27.07 - 27.2] $ 129 шт. JWN Nordstrom
- -------------------
- 🔺0.34(3.4%) [4.93 - 5.1] $ 2 шт. TAL TAL Education Group
- -------------------
- 🔻-5896.54(0.6%) [73.185 - 72.7125] ₽ 12 шт. Доллар США
/task - $tiсker
/task
— это основная команда по настройке автоматизированной торговли.
Для установки задачи отправьте команду боту.
/task необходимые параметры
/task - $tiсker qLots pPrice Buy/Sell t10:00 d240620 cnt5 min1.01 max10.9
- q - количество лотов
- p - цена
- d - дата
- t - время
- cnt - количество попыток
- min или max - минимальная/максимальная цена покупки/продажи
- ql - ограничение на максимальное количество лотов
- enddate endtime - дата после которой ордер уже не ставиться
- ts - Trailing Stop - фиксатор прибыли, можно задавать в процентах или в пунктах ts0.35 или ts1.5%
- cycl - Повторять данную позицию (если параметр установлен cycl8 - 8 раз, если не установлен, тогда 10000000)
- m - Период повторения m5 m30 в минутах
- oc - Only Close ордер будет выполнен только для закрытия
- first - Установка ордера на первое место впереди всех
- forward (или forth) - Установка ордера на первое место вместе со всеми
Пример:
- /task buy q10 $amd
- Купить 10 акций AMD по рынку
- /task buy q10 $amd p88
- Купить 10 акций AMD по 88$
- /task buy q10 $amd cnt5
Купить 10 акций AMD по рынку 5 попыток.
- /task buy q10 $amd cnt5 p88
Купить 10 акций AMD по 88$ 5 попыток.
- /task buy q10 ql30 max77 cycl $amd
Купить 10 акций если цена на акцию упадет ниже 77$, с максимальным лимитом 30 акций в портфеле, проверять и покупать каждую минуту до тех пор пока в портфеле не булет 30 лотов.
- /task buy q10 ql10 max77 cycl $amd
Купить 10 акций если цена на акцию упадет ниже 77$, либо довести количество в портфеле до 10 штук.
- /task buy q10 ql50 max77 cycl $amd m5
Купить 10 акций если цена на акцию упадет ниже 77$, с максимальным лимитом 50 акций в портфеле, проверять и покупать каждые 5 минут, до тех пор пока в портфеле не булет 50 лотов.
- /task buy q10 ql50 max77 cycl $amd first
Перебить нашим отложенным ордером все заявки и поставить на первое место в стакане и держать нашу заявк выше всех, если наша ставка будет перебита снять заявку и поставить выше на 0.01$ на 10 акций если цена на акцию упадет ниже 77$, с максимальным лимитом 50 акций в портфеле, проверять и покупать каждые 1 минуту, до тех пор пока в портфеле не булет 50 лотов.
- /task buy q10 ql50 max77 cycl $amd m5 forward
Поставить отложенный ордер на первое место к имеющимся заявкам в стакане на 10 акций если цена на акцию упадет ниже 77$, с максимальным лимитом 50 акций в портфеле, проверять и покупать каждые 5 минут, до тех пор пока в портфеле не булет 50 лотов.
- /task buy q10 ql30 max77 cycl $amd oc
В случае если в портфеле нет откытых позицийй Short, купить 10 акций если цена на акцию упадет ниже 77$, с максимальным лимитом 30 акций в портфеле, проверять и покупать каждую минуту до тех пор пока в портфеле не булет 30 лотов, если позиция в Short имеется ничего не делать, ждать пока не будет закрыта в ручную либо другой задачей.
- /task buy q10 t10:00 d24062021 $amd
Купить 10 акций в указанную дату и время по рынку
- /task buy q10 endtime22:59 enddate24062021 $amd
- Купить 10 акций в указанную дату и время по рынку
- /task buy q10 endtime22:59 enddate24062021 $amd op
- Закрыть шорт только с профитом на 10 акций в указанную дату и время по рынку, если профита нет не исполнять
- /task sell q10 $amd
- Продать 10 акций AMD по рынку
- /task sell q10 $amd p90
- Продать 10 акций AMD по 90$
- /task sell q10 $amd cnt5
- Продать 10 акций AMD по рынку 5 попыток.
- /task sell q10 $amd cnt5 p90
- Продать 10 акций AMD по 90$ 5 попыток.
- /task sell q10 $amd min90
- Продать 10 акций AMD от 90$ и выше 5 попыток.
- /task buy q10 q10 $amd cycl max75
- /task sell q10 q10 $amd cycl oc min77
- Данная связка /task будет открывать позиции в лонг и закрывать их, не открывая шорт.
- /task buy q10 q10 $amd cycl max75 oc
- /task sell q10 q10 $amd cycl min77
- Данная связка будет торговать только в шорт, не открывая лонг.
- first — установка ордера на первое место, впереди всех в стакане (например: /task buy $qdel first max200 q1 ql2 cycl)
- При цене ниже 200$ бот будет ставить заявку в стакан на самое первое место. В случае если наша заявка стала второй, бот снимет нашу заявку и перебьет ставку, выставив
- нашу заявку снова на первое место, увеличив цену.
- /task sell $qdel first min201 q1 ql2 cycl
- аналогичный пример, но теперь бот будет следить, чтобы наша заявка была самой дорогой в стакане.
- forward — выставляет заявку в стакан, не перебивая ставку по лучшей цене.
- В случае если наша заявка стала второй — снять и поставить заново.
- /task buy $amd forward max79 q1 ql2 cycl
- /task sell $amd forward min78 q1 ql2 cycl
/tasks
/tasks -
Просмотр списка задач для бота.
Расшифровка:
- Номер задачи - для последующего удаления или редактирования.
- Ticker - инструмента
- Buy/Sell - покупка/продажа
- q - количество
- p:C - по рынку если не стоит min/max
- p:22 - Задача с фиксированной ценой в 22$.
- дата:время - задачи
- max/min - максимальная/минимальная цена покупки/продажи
- ql - максимальное допустимое количество в портфеле по инструменту
- cycle - повтор
- qls - минимальное(максимальное для short) количество в портфеле ниже(выше для short) которого бот не будет выставлять заявки
- forth(forward) - устанавливать вашу заявку по текущей лучшей цене, в случае если ваша заявка перебита вернуть на первое место к другим завкам.
- first - устанавливать заявку выше текущей лучшей цены (перебить), в случае если ваша заявка перебита вернуть на первое место поставить вашу заявку выше других.
- m10 - временной интервал повтора cycl
- oc - только закрывать текущую сделку по инструменту, не открывать новую противоположную позицию.
- log:
- [2021-10-15 23:53:13] - дата время последней записи в логах.
- lastPrice: - последняя цена (выводится если проходит),
- NotAvailableForTrading - в данное время по инструменту нет торгов.
- 500:Недостаточно активов для маржинальной сделки - нет средств для выполнение задачи, включая маржинальную торговлю если включена.
- Аварийный выход 429 - Ошибка на стороне биржи\брокера
Пример:
- /tasks
- Список задач:
- ---------------
- #t8529 $NOK Buy
- > q:500 p:C 2021-10-12 23:13:59 max:4.02 ql:500 cycle forth(forward)
- log:[2021-10-15 23:53:13]lastPrice:5.89
- ---------------
- #t8538 $NOK Sell
- > q:200 p:C 2021-10-12 23:13:59 min:4.06 ql:500 qls:1000 cycle forth(forward)
- log:[2021-10-12 20:08:59]Аварийный выход 429
- ---------------
- #t6744 $AFLT Buy
- > q:10 p:C 2021-10-12 23:13:59 max:55 ql:100 cycle
- log:[2021-10-15 23:50:08]tradeStatus: NotAvailableForTrading
- ---------------
- #t8643 $DISCA Buy
- > q:5 p:C 2021-10-12 23:13:59 max:37.2 ql:50 cycle forth(forward)
- log:[2021-10-15 23:59:14]500:Недостаточно активов для маржинальной сделки
- ---------------
- #t1478 $IRM Buy
- > q:1 p:C 2021-10-12 23:13:59 max:26.5 ql:2 cycle first
- log:[2021-10-15 23:48:07]lastPrice:27.73
- /tasks $nrg
- Список задач: NRG
- ---------------
- #t8642 $NRG Buy
- > q:1 p:C 2021-10-12 23:13:59 max:37.5 ql:400 cycle first
- log:[2021-10-15 23:46:15]lastPrice:41.35
- ---------------
- #t8521 $NRG Buy
- > q:10 p:C 2021-10-12 23:13:59 max:36.5 ql:50 cycle forth(forward)
- log:[2021-10-15 23:46:13]lastPrice:41.35
- ---------------
- #t8743 $NRG Sell
- > q:1 p:C 2021-10-12 23:13:59 min:41.5 ql:200 cycle first
- log:[2021-10-15 23:59:15]500:Недостаточно активов для маржинальной сделки
/taskcancel
/taskcancel -
/taskcancel — 12345 отмена задачи.
/taskcancel — удалить задачу по номеру задачи, полученной командой /tasks.
12345 отмена задачи
/taskedit
/taskedit
/taskedit — редактирование задачи.
Для отключения ненужного параметра добавьте 0 в конце параметра.
Пример:
/taskedit 123 min77 oc0
изменить в задаче 123 минимальную цену на 77, отключить oc
/taskedit cycl0 q5
отключить cycl, изменить количество на 5
- ID NewParameters
/ChatID
/ChatID -/ChatID — узнать свой собственный Chat для обращения в support.
/token
/token - /token ваш токен —
для торговли
для активации бота
/token новый токен —
для замены токена
/token любой набор символов —
для замены и удаления токена
/p>
/calc
/calc - калькулятор
средней цены по инструменту в портфеле и расчета профита после продажи.
- Расшифровка:
- /calc sell q103 $pbf p14.91 - расчитать среднюю после добавлении в short еще 103 акций $pfb по цене 14.91
- /calc buy q135 $t p25.65 - расчитать среднюю после добавлении в long еще 135 акций $t по цене 25.65
- /calc sell q65 $t p25.65 profit - расчитать профит после закрытия текущей позиции по цене 25.65
- /calc buy q135 $pbf p14.91 profit - расчитать профит после закрытия текущей позиции по цене 14.91
Пример:
- /portfolio
- -------------------
- 16.16(1.1%) [25.35 - 25.63] $ 65 шт. T AT&T
- -------------------
- -25.63(0.9%) [14.78 - 14.91] $ -197 шт. PBF PBF Energy Inc
- -------------------
- /calc sell q103 $pbf p14.91
- в портфеле:
- $PBF -197шт. средняя ~ 14.78
- продажи 103 акций по 14.91(1535.73)
- = Средняя ~ составит 14.82 общая стоимость всех -4447.39
- Общее количество акций составит:-300
- /calc buy q135 $t p25.65
- в портфеле:
- $T 65шт. средняя ~ 25.35
- покупки 135 акций по 25.65(3462.75)
- = Средняя ~ составит 25.55 общая стоимость всех 5110.5
- Общее количество акций составит:200
- /calc sell q65 $t p25.65 profit *
- в портфеле:
- $T 65шт. средняя ~ 25.35
- после продажи 65 акций по 25.65(3462.75)
- = профит от сделки ~ составит 43$ общий профит по инструменту 511.5
/sub
/sub portfolio
— подписка на изменения стоимости акций в портфеле; бот будет информировать об изменении по инструменту:
Если цена выросла, упала, либо доходность по инструменту выросла в рамках заданого лимита.
Для удобства и эффективности работы вы можете для создавать множество информеров как по всему портфелю так и по разным инстрментам, с разными параметрами, и в разное время работы данного параметра.
Параметры:
- all - все
- $ticker - тикер
- wtime - время ежедневной работы
- m - Период проверки от 1 в минутах
Пример:
- /sub portfolio all +0.2% -0.1% profit50
- Проверять каждую минуту акции из портфеля и сообщать если цена выросла на 0.20% или упала на 0.10% либо профит по инструмену увеличился на 50$
- /sub portfolio all +0.2% -0.1% profit50 m10
- Проверять каждые 10 минут акции из портфеля и сообщать если цена выросла на 0.20% или упала на 0.10% либо профит по инструмену увеличился на 50$
- /sub portfolio all +0.2% -0.1% profit50 m5 wtime07:00-10:00
- Проверять каждые 5 минут ежедневно с 07:00 до 10:00 акции из портфеля и сообщать если цена выросла на 0.20% или упала на 0.10% либо профит по инструмену увеличился на 50$
- /sub portfolio $aapl +0.1% -0.1% profit20
- Проверять каждую минуту акцию $aapl из портфеля и сообщать если цена выросла на 0.10% или упала на 0.10% либо профит по инструмену увеличился на 20$
- /sub portfolio $tsla +0.1% -0.1% profit200 m10
- Проверять каждые 10 минут акцию $tsla из портфеля и сообщать если цена выросла на 0.10% или упала на 0.10% либо профит по инструмену увеличился на 200$
- /sub portfolio $aapl +0.2% -0.2% profit30 m3 wtime23:00-01:45
- Проверять каждые 3 минуты акцию из портфеля в вечерную сессию с 23:00 по 01:45 $aapl ежедневно и сообщать если цена выросла на 0.20% или упала на 0.20% либо профит по инструмену увеличился на 30$
/subs
/subs -
список подписок.
просмотр списка подписок с выводом номера для удаления.
Пример:
- /subs
- Список подписок:
- s83 +0.5% -0.5% profit50
- s86 $MOMO +0.1% -0.1% profit20
- s87 $PBF +0.1% -0.1% profit20
- s88 +0.2% -0.2% profit100 wtime07:00-10:00
/subcancel
/subcancel -
Удаление подписки на уведомление.
Пример:
- /subcancel sномерподписки
- Удаление подписки по номеру
/stop
/stop
- Временная остановка выполнения ботом задач, а также возможность массового удаления задач, и снятие всех ордеров в том числе установленных не через бота.
- all - убрать всё, drop - в том числе снять все установленные ордера
Пример:
- /stop
- Остановка выполнения всех задач на 5 минут
- /stop -all
- Удаление всех задач
- /stop -all -drop
- Удаление всех задач и ордеров
- /stop -drop
- Отмена всех установленных ордеров
/operation
/operation
- Вывод и калькуляция по всем вашим сделкам, а также просмотр истории сделок.
Пример:
- /operation
- Вывод отчета по сделкам за последние 7 дней по всем инструментам
- /operation 10112021-13112021
- Вывод отчета по сделкам за определенный диапозон дат по всем инструментам
- /operation $aapl
- Вывод отчета по сделкам за последние 7 дней по инструменту $aapl
- /operation $aapl 10112021-13112021
- Вывод отчета по сделкам за определенный диапозон дат по инструменту $aapl
- /operation all
- Вывод списка сделок за последние 7 дней по всем инструментам
- /operation all 12102021-13102021
- Вывод списка сделок за определенный диапозон дат по всем инструментам
/reg
/reg
— первичная регистрация пользователя.
Данная команда разрешит боту передавать информацию в личный кабинет на сайт tibot.
В личном кабинете возможен просмотр списка задач и отчетов по инструментам, кнопка стоп и другие функции.
Если Вам не нужен личный кабинет, тогда просто игнорируете команду /reg.
Для активации личного кабинета необходимо пройти регистрации на сайте tibot.ru, на ваш почтовый ящик придет пароль далее в телеграмм боте необхожимо связать бота и личный кабинет.
Необходимо указать ваш Email указанный при регистрации и пароль в формате /reg Email Password1
Пример:
- /reg ваш@email.ru вашпароль
- Теперь ваш телеграмм аккаунт связан с личным кабинетом на сайте tibot.ru