Skip to content

Отправка trade сигналов в телеграм

Notifications You must be signed in to change notification settings

AlkashIrk/DailySignals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Описание

Данный скрипт поможет обратить внимание трейдера на определенный инструмент, по которому получен торговый сигнал в телеграм канал.
Используется Tinkoff Invest API клиент для python. Документация по API.

Пример работы можно посмотреть в канале по ссылке.

Параметры для работы со скриптом задаются в файлах конфигураций config.yaml и signals.yaml

Основная конфигурация config.yaml

Пример config.yaml

Секция [Main]

[tinkoff_token] - токен для работы с Tinkoff Invest API;
[telegram_token] - токен для отправки сообщений в Telegram;
[telegram_chat_id] - идентификатор канала, в который будут приходить уведомления.

Секция [Subscription]

[csv_file_with_shares] - путь до csv файла со списком инструментов (разделитель столбцов табуляция) (пример файла);
[interval] - определяет интервал свечей на которые осуществляется подписка;
Возможные значения:

Значения Описание
1m, 2m, 3m,
5m, 10m,
15m, 30m
Минутные свечи
1h, 2h, 4h Часовые свечи
1day Дневные свечи
1week Недельные свечи
1month Месячные свечи

[signals_interval] - определяет минимальный интервал времени в минутах между отправкой сообщений в канал Telegram по одному инструменту; [calculate_signals_interval] - определяет интервал времени в минутах, через который для инструмента рассчитываются индикаторы. Т.е. при задании числа отличного от 0, индикаторы по инструментам будут рассчитываться не для каждой принятой свече;
[candles_for_calculation_min_size] - минимальное количество свечей, которое будет собрано для расчета индикаторов. Рекомендуется использовать значение от 100 до 200;
[signals_config_path] - путь до файла YAML конфигурации расчета сигналов.

Конфигурация signals.yaml Используется для расчета необходимости оповещения пользователя о наличии торгового сигнала.

Пример signals.yaml

Секция [Signal]

[min_weight] - минимальное значение при котором осуществляется отправка сигнала считается как сумма значений по всем индикаторам заданным в конфигурации;
[description] - описание сигнала (заголовок сообщения).

Далее должны идти секции с набором правил по индикаторам расположение индикаторов.
[Название индикатора]: название индикатора определяется атрибутом индикатора signal_name;
[weight] - вес для индикатора;
[rules] - набор правил для индикатора.

Возможные значения для описания правил:

Значения Описание
current_value Текущее значение индикатора
prev_value Предыдущее значение индикатора
compare Набор правил для сравнения

Возможные значения для compare правил:

Значения Описание
price_current Текущая цена (close свечи)
price_prev Предыдущая цена (close свечи)
current_value Текущее значение индикатора
prev_value Предыдущее значение индикатора
current_l_band Текущее значение нижней границы
для канального индикатора
prev_l_band Предыдущее значение нижней границы
для канального индикатора
current_h_band Текущее значение верхней границы
для канального индикатора
prev_h_band Предыдущее значение верхней границы
для канального индикатора

Требования

  • Python 3.8+;
  • токен для работы с Tinkoff Invest API (подойдет и sandbox-токен выпустить можно тут);
  • токен для бота Telegram (получить можно у пользователя @BotFather);
  • идентификатор канала в который будет производиться отправляться уведомление.

Использование

  1. Задать в файле конфигурации свой токен к Tinkoff Invest API.
  2. Задать в файле конфигурации свой токен к Telegram.
  3. Задать в файле конфигурации идентификатор Telegram канала.

About

Отправка trade сигналов в телеграм

Topics

Resources

Stars

Watchers

Forks

Languages