Бот для tinkoff инвестиции

Бот для tinkoff инвестиции

Telegram бот для получения портфеля в «Тинькофф Инвестиции».

Бот разработан под serverless деплой на Google Cloud Functions. Serverless позволяет хостить бота бесплатно (или почти бесплатно) при небольших нагрузках на backend.

  • telegram — пакет с обработчиком обновлений от Telegram бота
  • tinkoff — пакет для работы с Tinkoff OpenAPI
  • function.go — точка входа для Google Functions. Инициализация глобальных переменных и обработка запросов с WebHook-а.

Подготовка к деплою

  1. Создаём Telegram бота и получаем для него токен. Инструкция.
  2. Получаем токен в Tinkoff Open API.
  3. Узнаём свой Telegram ID, например, через @userinfobot.
  4. Получаем токен на CurrencyConvertAPI.

Деплой на Google Functions

  1. Клонируем репозиторий git clone https://github.com/yutkin/tinkoff-invest-telegram-bot.git && cd tinkoff-invest-telegram-bot
  2. Собираем зависимости: go mod vendor
  3. Выставляем переменные среды окружения:
  1. С помощью утилиты gcloud деплоим бота:

Описание флагов для команды gcloud functions deploy .

Настройка Telegram Webhook

При успешном завершении, gcloud functions deploy печатает результат в YAML формате. Поле httpsTrigger.url нужно использовать в качестве адреса WebHook.

Установка WebHook происходит через метод setWebhook. Пример:

После установки WebHook, Telegram будет отправлять все обновления от бота в функцию Google Functions.

About

Telegram бот для получения портфеля в «Тинькофф Инвестиции»

Источник

Бот для tinkoff инвестиции

Простой бот для взаимодействия с Тинькофф Инвестициями с возможностью выполнения заявок на покупку акций с заданными значениями StopLoss и TakeProfit по наступлению которых будет сделана заявка на продажу.

Стек используемых технологий

  • cats
  • doobie
  • postgres
  • http4s
  • circe
  • telegramium
  • tinvest4s для работы с OpenApi Тинькофф.Инвестиций, который переехал в отдельный репозиторий

Как собрать и запустить проект

  • Нужно иметь брокерский счет в Тинькофф.Инвестиции, если есть, то получить в личном кабинете токен для авторизации (для торговли на бирже или в песочнице)
  • Зарегистрировать telegram бота и получить токен для авторизации
  • Подготовить базу данных — создать пользователя и таблицы (TODO: Следует автоматизировать этот этап)
  • В файле конфигурации application.conf задать токены для авторизации telegram-бота и в OpenApi Тинькофф.Инвестиций, и имя/пароль для подключения к базе данных
  • Запустить проект
  • Выполнение мониторинга стоимости заданных пользователем акций
  • Выполнение заявки на покупку акций по значениям StopLoss и TakeProfit
  • Уведомление пользователя через telegram о выполняемых действиях

Взаимодействие с пользователем

На данном этапе реализован способ взаимодействия через telegram(уведомления и команды), поскольку он проще и быстрее для тестирования и проверки.

  • /portfolio — Портфель
  • /etfs — Получение списка ETF
  • /currencies — Получение списка валютных пар
  • /orderbook.figi.depth — Получение стакана по FIGI
  • /cancelOrder.orderId — Отмена заявки по OrderId
  • /limitOrderBuy.figi.lots.price — Лимитная заявка на покупку
  • /limitOrderSell.figi.lots.price — Лимитная заявка на продажу
  • /marketOrderBuy.figi.lots — Рыночная заявка на покупку
  • /marketOrderSell.figi.lots — Рыночная заявка на продажу
  • /marketOrderBuy.figi.lots.stoploss.takeprofit — Рыночная заявка на покупку с указанными значениями stoploss и takeprofit . stoploss и takeprofit имеют тип Double . Например, команда /marketOrderBuy.BBG009S39JX6.10.100,01.200,02 выполнит покупку 10 лотов акций BBG009S39JX6 со значением stoploss=10.100 и takeprofit=200,02 . При этом значение stoploss не должна превышать значение текущей стоимости акции и, соответственно, значение takeprofit должна превышать текущую стоимость акции. Команда вернет информацию о покупке и id операции.
  • /activeOperations — Список активных операций
  • /stopOperations — Отменить все активные операции
  • /completedOperations — Получить список последних завершенных операций
  • /stopOperations.id — Отменить операцию по id

Под операцией подразумевается процесс подписки на отслеживание стоимости акции по figi , которая завершится по достижению значений stoploss и takeprofit или по команде stop .

About

WIP: Простой бот для взаимодействия с Тинькофф Инвестициями

Источник

Роботы для Тинькофф инвестиции

Ну что. Добрались до Тинькофф инвестиций и теперь там можно торговать нашими роботами. В этой статье пройдёмся по тому как именно подключить OsEngine к торгам, как выписывать ключи и что нужно делать в самой платформе. С картинками, шаг за шагом.

Также, выскажу своё личное мнение о том что в итоге получилось и какие хорошие и плохие стороны есть в их API и на сколько оно подходит в итоге вообще для торговли. В общем – самое интересное снизу)

Тинькофф Инвестиции — одна из самых быстрорастущих площадок для торговли в данный момент в России и мы её понятное дело долго обходить стороной не могли.

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

11. Делаем токен для доступа к Тинькофф инвестициям

22. Запускаем торговых роботов для Тинькофф инвестиций

33. Что думаю лично я

1. Делаем токен для доступа к Тинькофф инвестициям

Начинаем с того что нужно залогиниться на сайте тинькофф инвестиций. И далее, в личном кабинете идём в настройки:

После чего скролим страницу вниз до момента где у нас можно выписать себе токен:

Нажимаем на кнопку «Токен для торговли». Вам там придётся ещё раз ввести пароль в личном кабинете. И перед Вами появиться строка с токеном.

Вы её сохраните в файлик, он нам дальше понадобиться.

2. Запуск торговых роботов для Тинькофф инвестиций

Качаем конструктор роботов с нашего сайта: http://o-s-a.net/os-engine.html

Полистайте страницу и посмотрите видео. Попереходите по ссылочкам по папкам. Это проект с полностью открытым кодом который Вы можете использовать как угодно. Написан на языке СиШарп. Это программа полного цикла алготрейдинга. Делаем бота – тестируем – оптимизируем – запускаем в торги. Ну и не будем повторятся… Почитайте.

Читайте также:  Bitcoin service что это

В общем, качаем зипку себе на ПК, распаковываем и дём вот к этому экзешнику:

Запускаем от Админа.

BotStation по стрелочке:

Далее идём в окно настроек подключений:

11) « Control » в правом меню

22) Далее Connection Servers

33) Листаем вниз до нашей биржи. И выбираем Tinkoff . Два раза ЛКМ и увидем окно ввода токена который мы качали:

В графу токен вводим значение которое получали в личнок кабинете у брокера.

И уже после этого можем создавать роботов и всё вот это прочее что есть в нашей платформе:

Единственное. Поскольку из за убогости потокового сервиса мы его подключать не стали, постройку свечек Вам придётся делать из стаканов:

Если Вы вдруг не знаете что делать дальше, милости прошу на наш форум или ютуб канал:

Также, ВАЖНО. Не забывайте перевести время компьютера на Московское! Зачем? Лучше Вам не знать ей богу… Но без этого работать не будет.

3. Тинькофф Инвестиции и роботы – что думаю лично я

Удобные сервисы рулят. Лично у меня открытие брокерского счёта заняло 15 минут, вместе с переводом денег на него – вот что главное. И не даром клиентская база Тинькова растёт огромными темпами. Всё очень удобно. Ну ессно, для тех кто уже у них обслуживается.

Восхищаюсь тем подходом который он несёт в каждую область куда заходит. Везде делает прорывы. Везде его товар и сервисы лучше чем у конкурентов на порядок. Илон Маск российский, не иначе. Вот и здесь так.

Скорость входа в трейдинг быстрее чем на биржах криптовалют. Если у Вас уже есть карта – начать торговать, дело 10 – 15 минут. И это великолепно. Прямо бальзам на душу. Спасибо Олег.

Щас я очень долго, муторно и с матюками буду описывать все те непристойности которые я увидел в Тинькофф Api . Не подумайте что это хейт просто. Понятное дело кредиты под 70 % годовых я тоже не одобряю со стороны Тинькофф банка. Я искренне надеюсь что кто-то из поддержки Тинькофф банка когда-то это всё прочитает и прослезиться. После чего что-то там поменяется. В общем – не обессудьте.

Для алготрейдинга вся эта история пока дно полное. Кроме получасовиков торговать абсолютно и решительно нельзя.

Апи – маразматичное и сделано на от..бись. В натуральном смысле этого слова. Люди его делавшие вообще ни разу в жизни робота для трейдинга не видели. И вероятно даже с понятием трейдинга знакомы очень и очень поверхностно. Ибо не знают вообще какие типы данных есть на бирже и как их нужно рассылать.

Там буквально в некоторых переменные называны «НЁХ», или вроде того. Смешно конечно, но у того что они там слали есть нормальное описание в ядре биржи и в Плазе. Нахрен эту големототу писать.

Из поточных данных вообще идёт полный шлак. Ордеров нет, моих трейдов нет. Ленты сделок с.ка нет. Есть только стаканы, и то их скачивание ограничено 6стью штуками.

Время нигде нет. программисты. Как так у стакана нету таймШтампа. Какого хрена?

Ленты сделок(трейды) нет вообще. Т.е. возможности строить свои уникальные свечи нету. Внезапно! Но именно из этих данных строятся свечи в системах анализа сторонних. Вот вы высылаете свои свечки – они нам нахрен так-то не нужны. У нас 10 видов различных свечек и горизонтальные объёмы. Всё это строится из ЛЕНТЫ ВСЕХ СДЕЛОК. Что ж Вы там матьВашу загуглить не могли какие данные из биржи идут и что может людям понадобиться. Тьфу.

Короче. Потоковые данные мы полностью зарезали. Брать там нечего. И в ближайший год там всё это будет переделываться несколько раз. Тинькофф это так не оставит. Просто видать сказать некому пока. Ну ладно. Поэтому даже и начинать не стоит. Всё на чём основан наш коннектор – это запросы. Отсюда у нас задержки с получением данных и прочее. Кроме того, построение свечек только по центру стакана и только классика, ибо объёмов никто не знает, т.к. они их не дают. Такие дела.

В общем – история с АПИ для Тинькофф инвестиций абсолютно вторична и я когда смотрел на итоговый результат по коннектору плакал без остановки несколько часов. Надеюсь они в течении года это дело как-то подхилят и найдут нормального архитектора для Апи.

11) Отличный сервис для людей. 10 домохозяек из 10 я им ставлю.

22) Для алготрейдеров – ад и садомазохизм.

33) На стаканах соответственно вообще нельзя ничего торговать.

44) Быстрые алгоритмы тоже.

55) Много сделок выставлять нельзя.

66) Сервисы прямого доступа отсутствуют(плаза / ASTS / Fast / Twime ). Или есть, но я не увидел.

77) Готовьтесь к тому что они будут Api переделывать и будут проблемы с нашей уже стороны, т.к. мгновенно мы ничего не правим)

88) Торгуем получасовик

99) Собираем свечи из центра стакана

110) Много инструментов не торгуем одновременно

111) Ждём фиксов со строны Тинькофф Инвестиций, чтобы они озаботились судьбой программистов.

Всем удачных алгоритмов!

Уважаемые товарищи из Тинькофф Инвестиций. Будете читать) Я знаю. Наймите нормального консультанта который в этом понимает. У которого есть понимание того какие данные нужны алготрейдерам. Как их нужно давать. Как нужно устраивать подписку. Какие нужны таблицы данных. И за пару месяцев сделаете лучший сервис для алготрейдеров тоже. На том же высоком уровне как Вы уже сделали для домохозяек.

Вот почта одного великолепного специалиста в этом: alexey @ o — s — a . net Моя. Пишите.

Источник

Блог компании Тинькофф Инвестиции | Мы запустили Open API для создания торговых роботов в Тинькофф Инвестициях

Мы запустили сервис Open API (открытый программный интерфейс) для алготрейдеров, который позволит написать роботов и настроить автоматическую торговлю на биржах.

Через Open API алготрейдеры смогут:
— выставлять и отменять лимитные заявки;

Читайте также:  Полная окупаемость проекта это

— через стриминг (в режиме уведомлений) по стакану, бумагам на бирже и свечам получать информацию о фондовом рынке;

— запрограммировать интерфейс Тинькофф Инвестиций так, чтобы мгновенно реагировать на резкое колебание стоимости акций и автоматически выставлять заявку на их покупку или продажу, причем сразу на то количество лотов, которое нужно.

Как работает?
У алготрейдеров есть единый API и единый брокерский счет для торгов ценными бумагами с крупнейших мировых бирж. Открывать отдельные счета для торговли на каждой из бирж не нужно. На сервисе используется простой и понятный протокол для программирования: лаконичные инструкции, актуальная документация с оптимальным набором опций, удобные библиотеки (Java, Scala).

Как начать?
Сервис доступен всем клиентам бесплатно. Устанавливать отдельный терминал на компьютер не нужно. Для работы с Open API необходимо получить токен через личный кабинет, после чего можно писать код. Свои стратегии трейдеры смогут проверять на специальном демосчете без риска потерять деньги.

Источник

Клиент торговли на Тинькофф инвестициях.

  1. Просмотр графиков торгов и объемов продаж.
  2. Просмотр стакана торгов, так же в стакане отображаются количество выставленных лимитных заявок.
  3. Просмотр информации по счету, портфелю и выставленные заявки.
  4. Выставление заявок возможно: из списка заявок, из стакана, в автоматическом режиме из планирования, из роботов и торговых заданий.
  5. Просмотр данных по инструментам, отбор инструментов в избранное и просмотр % падения/роста по избранным инструментам.
  6. В лимитных заявках можно быстро подать команду отмены заявки, или только изменения цены заявки для уже выставленной заявки. Программа самостоятельно пошлет команду отмены старой заявки и выставит новую идентичную, но с новой ценой.
  7. В роботе лайт, можно настроить торговлю по простым правилам в автоматическом режиме.
  8. В роботе Про, можно настраивать правила торговли, согласно выведенных на форму переменных и простых математических и логических правил. Возможность сохранение и загрузки правил в файл.
  9. В планирование закупок, отображаются инструменты по которым надо отслеживать цену. При заполнении цены покупки и продажи, если цена достигла одной из цен, текст достигнутой цены и текущая подкрашивается в нужный, тем самым сигнализируя пользователю о достижении цены. При наличии в портфеле акций, по указанным в планировании инструментам, рассчитываются от текущей цены и цены закупки, суммы и поле прибыль/убыток. В полу автоматическом режиме , при установленном флаге «А» и достижении цены, происходит создание лимитных заявок на покупку или продажу, после чего флаг снимается.
  10. В оповещениях, можно указать пределы цен, при достижении которых, надо оповестить пользователя при свернутой программе, о достижении цены по инструменту.
  11. В истории операций, можно удобно увидеть операции за период и итоги с учетом комиссии брокера.
  12. Отчеты. 1) Лидеры продаж по росту, падению цены или объему торгов. 2) торговая ведомость — покупки, продажи, комиссии, дивиденды. В зависимости от варианта отчета. 3) Отчет по портфелю на текущий момент, в валютах бумаг и в рублях с итогами.
  13. В торговых заданиях, пользователем создаются задачи, которые не передаются на сервер как лимитные заявки, а выполняются исключительно на клиенте. При достижении цены, выше или ниже , в зависимости от задания, выполняется действие покупки или продажи. После удачного выполнения, задание удаляется из списка. Если торговое задание имеет вид «чередовать», то изменяет тип с продажи на покупку или обратно. Покупка или продажа выполняется в виде покупки по текущей цене как не лимитная заявка, если не установлен флаг для использования лимитных заявок, в связи с этим, покупка может быть ниже установленной цены, но не дороже, продажа соответственно выше установленной цены, но не ниже. Прямые заявки не стоят в очереди как лимитные.
  14. В торговых заданиях реализована возможность отслеживания выставленной лимитной заявки и изменения типа у заявок с видом «чередовать» после завершения лимитной заявки. Флаг устанавливается в настройках.
  15. В настройках, можно отключить не используемые функции и настроить периоды обновления полей (графики, планирование, стакан и т.д)
  16. На форме реализованы переходы на сайты tradingview.com , www.marketwatch.com, новости по инструменту(яндекс), на страницу соц. сети пульс, на сайте тинькофф, с открытием страниц по текущему инструменту.

Платформа разработки 1С:Предприятие 8.3 (8.3.16), без модальных окон , интерфейс управляемый, режим совместимости «Такси».

Для использования , нужно получить Токен и открыть брокерский счет.

  1. Зайдите в свой аккаунт на tinkoff.ru
  2. Перейдите в раздел инвестиций
  3. Перейдите в настройки
  4. Функция «Подтверждение сделок кодом» должна быть отключена
  5. Выпустите токен OpenApi для биржи. Возможно система попросит вас авторизоваться еще раз, не беспокойтесь, это необходимо для подключения робота к торговой платформе.
  6. Скопируйте токен и сохраните, токен отображается только один раз, просмотреть его позже не получится, тем не менее вы можете выпускать неограниченное количество токенов.

Добавлен робот для торговли на бирже.

Кто из нас не мечтал иметь робота, который может ему зарабатывать деньги, при это самому можно попивать в это время пиво.

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

Добавлена закладка «Баланс» с графиками по счету и портфелю в которых удобно отображаются данные по средней цене закупки по рыночной цене, обновляются при открытии и переходе с другой закладки.

Добавление строк в планирование, происходит с помощью переноса из списка инструментов (акции, фонды и т.д.). Навести мышь на нужную строку, нажать один раз левой кнопкой и отпустить. Появится название в поле инструмент. После этого нажать левой кнопкой и удерживая кнопку, переместить курсор указателя мышки на таблицу планирование и отпустить левую кнопку мышки. Строка должна добавиться, если такого инструмента в планировании нет.

История операций. Новости по инструменту. если при переходе к новостям, встать на группу, то откроется главная страница www.rbc.ru. Поиск пока только по www.rbc.ru. График и инструмент поменяны местами. Графики теперь вверху.

оповещения достижения цены, выбор места выбора текущего инструмента.

Доработка «робота» и новый «роборт лайт», для тех кому проще выбирать условиями и не писать формулы

Добавлена колонка «Заявка» в стакан. Отображение заявки в количественном выражении, на против цены указанной в заявке.

Новые кнопки изменения цены и отмены заявки. Изменен журнал истории событий торговли, объеденены строки по заявке и налога, добавлен фильтр показа только выполненных заявок, колонка итог. Новая закладка «Отчеты» , отчет «лидеры роста/падения и объема торгов», отображает 10 лидеров роста и падения в % соотношение на дату отчета. Торговая ведомость за период.

Торговые задания , аналог «тейк-профит» и «стоп-лосс», с возможностью выбора выполнить покупку или продажу при достижении цены покупки или стоп-цены. Выбор инструмента из нескольких мест, портфель — двойное нажатие, список инструментов -двойное нажатие, планирование — позиционирование на строке.

Добавился вид заявки, разовая и чередовать. При втором варианте, заявка не удаляется, а изменяется тип. В карточке такой заявки, надо будет указывать цену покупки и цену продажи.

доработан интерфейс. Робот лайт — добавлена возможность выставлять лимитные заявки.

Обработка в виде конфигурации.

В связи с сложностями правильно создать чистую ДБ для использования обработки, принято решение сделать в виде отдельной конфигурации с обработкой, которая запускается при запуске БД 1С.

Инструменты перенесены на отдельную закладку и увеличено поле. В портфель и заявки добавлены поля ( валюта, сумма).

В место графика и закладки портфель, добавлен отчет по портфелю с расчетом всех валют в рубли по текущему курсу и итоги в рублях на дату построения.

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

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

доработка робота про + новые параметры

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

В планирование добавлен столбец с планируемой ценой закупки, при достижении которой, цены подсвечиваются оранжевым цветом.

Добавлена форма настройки, в которой можно отключить отображение роботов и планирования. Так же установить период обновления графика и планирования. ( в дальнейшем на форму настроек будут вынесены все возможные параметры отображения)

Выбор инструмента в планировании, осуществляется при двойном нажатии, выборе строки.

Доработка планирования. Цены планируемой продажи, подсвечивание цветом цен при достижении цены продажи или покупки, автоматическое создание заявки на покупку или продажу, по флагу. Процент изменения цены от начала торгов. Отображение цены на начало торгов.

Возможность отключения, отображения закладок, торговых заявок и оповещений.

добавление графика объема торгов по периоду свечей, для понимания когда и почему были изменения цены

Доработка настроек отображения и периодов запросов.

tradingview.com , www.marketwatch.com, новости по инструменту, вынесены на верх окна в виде ссылок, открываются в новом окне. Для поиска графиков или новостей используются тикер или имя инструмента.

Расширено поле цены в заявке.

Добавлена в настройки кнопка включения отслеживания выполнения лимитной заявки , созданной торговой заявкой. При установленном флаге «Вкл./Откл. механизм отслеживания выполнения торговой заявки по ид лимитной заявки», если торговая заявка лимитная и тип «чередовать» , то тип она изменит, после того как созданная ей последняя заявка будет выполнена и исчезнет из списка.

Поиска созданной заявки по созданной новой и ключу — вариант экспериментальный, так что пока все дружно тестируем и пишем в личку.

Добавлен флаг в торговые задания «Подбирать выгодную цену» — При создании заявки, проверяет какая цена выгоднее, установленная или текущая и берет более выгодную.

Переделка на регистры. ( инструменты, логи). Доработка интерфейса и функционала.

В инструментах добавлена возможность заполнения сервера Тинькофф, процента роста/падения для избранных.

Добавлен поле поиск по инструментам с мгновенной фильтрацией.

После обновления, избранное надо будет заполнить заново.

Добавление/удаление избранного можно осуществлять как по кнопке (выделенные строки), так и двойным нажатием в нужной строке на поле колонки с звездой.

Новые торговые задания

В настройки добавлен пункт ограничения получения данных с тинькофф по времени. Роботы не входят.

Оптимизация. Доработка отчета торговая ведомость (фильтр). добавлена ссылка, для быстрого перехода в «пульс»

Доработка интерфейса без планирования. Добавлены поля в портфель и счета. Возможность выбора аккаунта ( для ИИС).

Новый блок «Слежение» — отслеживает изменение инструментов из избранного с периодичностью 60с.

Доработка торговых заданий. (Регистр,аккаунт,статус); Контроль выполнения заявки в торговых

заданиях выполняется по ключу. Пока заявка соответствующая ключу не выполнена,

торговое задание не изменит свой тип на новый

Общий чат или конфигурация с регламентными — фоновыми заданиями для использования сервера 1С.

Как рекомендация будет ubunta 20 +postgre SQL + 1C

ОТВЕТСТВЕННОСТЬ ЗА ИСПОЛЬЗОВАНИЕ ОБРАБОТКИ ЛЕЖИТ НА ПОЛЬЗОВАТЕЛЕ!

код программы закрыт в целях избежания не добросовестной конкуренции.

Токен, кроме вас и «Тинькофф» ни кому не попадает. Это можно проверить в логах подключения роутера.

Данные разработчика прописаны в договоре с «Инфостарт», что показывает открытость и честность разработки.

УСТАНОВКА!

Создать чистую конфигурацию, зайти в режиме конфигуратора, меню : Конфигурация — загрузить конфигурацию из файла — в открывшемся окне выбрать загруженный файл и на все вопросы ответить «ок».

При обновлении, не нужно создавать чистую базу, все остальные действия, как при первоначальной установке.

* выбор инструмента в торговых заявках и в роботах производится из списка «избранное», предварительно заполненный пользователем на закладке инструменты.

p/s. Пожелания или вопросы принимаются через обращение в техподдержку.

PP/S. Мы за экологию. В процессе разработки употреблялись исключительно экологические жидкости! Чего и всем желаю ))

Гарантия возврата денег

ООО «Инфостарт» гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.

Программа настолько проверена в работе, что мы с полной уверенностью можем дать такую гарантию. Мы хотим, чтобы все наши покупатели оставались довольны покупкой.

Для возврата оплаты просто свяжитесь с нами.

Источник

Читайте также:  Bitcoin mining script roblox
Оцените статью
дата версия описание