Ответ прост: техно-король Tesla имеет опыт влияния на криптовалютные рынки всякий раз, когда он пишет о них в Твиттере, до такой степени, что движение на рынке почти ожидаемо, когда он берет трубку и начинает выражать свое мнение по поводу криптовалют. Технология блокчейна через Твиттер.
Создав бота для торговли криптовалютой, который покупает биткойны каждый раз, когда босс Tesla пишет об этом в Твиттере, вы можете быть уверены, что получите VIP-место в ракете, которая пролетит прямо мимо Луны и направится прямо на Марс, где Илон проводит большую часть летних месяцев из-за холодной погоды и сухого климата.
Быстрый ответ — «не уверен», поскольку эту стратегию раньше никто не тестировал. Вероятно, более длинный ответ — если мы говорим о Биткойне. По статистике, независимо от того, когда вы купили биткойны, вы, скорее всего, получите прибыль (исключая недавний рекордный максимум на момент написания статьи).
Так что, по крайней мере, вы, по крайней мере, оживите свою стратегию ходлинга BTC с небольшой помощью Илона. В этой статье не будет подробного анализа, чтобы показать, действительно ли эта стратегия работает или нет. Эта статья посвящена созданию его для развлечения, но она служит мощным напоминанием о том, как много ресурсов мы имеем в нашем распоряжении и что вы можете создать практически любого бота для торговли криптовалютой, о котором только можете подумать.
Вы также сможете увидеть и использовать код, чтобы протестировать его или улучшить.
В этой статье основное внимание уделяется фактическому техническому построению бота для торговли биткойнами и тому, как настроить его в безопасной тестовой среде, так что давайте приступим к этому.
- Счет MetaTrader5
- Демо-счет XBTFX, чтобы вы могли безопасно протестировать свою стратегию.
- Аккаунт разработчика в Твиттере
- Учетная запись Tweepy API
Как следует из названия, MT5 — это платформа, которая поддерживает несколько брокеров, а также предоставляет подробный технический анализ. Основная причина начать свой путь создания крипто-ботов с MT5 связана с его простой интеграцией с Python и готовой поддержкой демо- или виртуальную учетную запись, чтобы вы могли протестировать ее в безопасной демонстрационной среде.
Подробные инструкции по установке и настройке MetaTrader5, а также криптоброкера XBTFX приведены в предыдущем посте, посвященном как создать бота для торговли криптовалютой на Python, поэтому в этой статье мы лишь кратко рассмотрим эти шаги. Если вам нужна дополнительная информация о том, как это сделать, а также о том, почему были выбраны эти две платформы, вернитесь к статье по ссылке выше.
Начните с загрузки и установки MetaTrader5 и создайте учетную запись на их платформе. Следующее, что вам нужно, — это брокер, у которого вы можете совершать сделки — я рекомендую. XBTFX поскольку они предлагают больше всего криптопар среди всех брокеров, работающих с терминалом МТ5. Зарегистрируйтесь в XBTFX и создайте демо-счет.
Теперь вы можете подключиться к своему демо-счету через MT5, перейдя в «Файл» > «Открыть учетную запись» и выполнив поиск XBTFX. Если вы зарегистрировались по реферальной ссылке выше, вам нужно будет выбрать «Подключиться к существующей учетной записи», в противном случае перейдите к созданию новой учетной записи.
1. Отчет о тенденциях развития чат-ботов за 2021 год
2. 4 ДОПОЛНИТЕЛЬНЫХ и 3 НЕОБХОДИМЫХ ПРИМЕНЕНИЯ при обучении модели НЛП чат-бота
3. Консьерж-бот: управление несколькими чат-ботами с одного экрана чата.
Прежде чем вы сможете использовать API Twitter или модуль Tweepy Python, вам потребуется учетная запись разработчика в Twitter. К счастью, процесс подачи заявки быстрый и простой, и вас, вероятно, примут, если вы объясните, почему вам нужен доступ к API Twitter.
Перенести на платформа разработчиков Twitter и нажмите «Применить» в правом верхнем углу меню навигации.
На следующей странице нажмите «Подать заявку на учетную запись разработчика», и вам будет предложено войти в систему, используя свою учетную запись Twitter.
Пройдите процесс регистрации и объясните свои намерения с помощью API.
После того, как вы введете всю необходимую информацию, может пройти от пары часов до пары дней, прежде чем вы сможете получить доступ к платформе. По моему опыту, это длилось всего несколько часов.
Как только ваша учетная запись разработчика будет готова, перейдите на вкладку «Проекты и приложения», откройте «Проект 1». Если она недоступна, создайте ее. В своем проекте перейдите в раздел «Ключи и токены» и сгенерируйте следующее (обязательно сохраните их, иначе вам придется заново сгенерировать ключи!):
- Бот будет открывать позицию на покупку биткойнов каждый раз, когда Илон упоминает биткойн в своем твите.
- Тейк-профит установлен на уровне 10%, стоп-лосс — на 5%.
- Биткойн-бот не будет размещать другую сделку, если активная сделка уже существует (можно настроить)
Прежде всего вам необходимо импортировать модули MetaTrader5 и Tweepy с помощью PyPi.
пип установить твипи
пип установить MetaTrader5
pip install — обновить MetaTrader5
Следующим шагом будет импорт этих модулей вместе с некоторыми другими в ваш интерпретатор Python.
#Модуль Twitter Scraper
импортный твип
из твипи-импорта OAuthHandler #модуль дат
из даты и времени импорта даты и времени, даты
из счетчика импорта itertools
время импорта импорта повторно #торговый терминал
импортировать MetaTrader5 как mt5
Теперь нам нужно сохранить секретные ключи и токены, которые вы сгенерировали с помощью платформы Twitter Dev, чтобы использовать их с Tweepy.
# Сохраните учетные данные Twitter из учетной записи разработчика
потребительский_ключ = «CONSUMER_KEY»
потребитель_секрет = «CONSUMER_SECRET»
ключ_доступа = «ключ_API»
access_secret = «API_SECRET»# Передаем учетные данные Twitter в tweepy через его OAuthHandler
auth = tweepy.OAuthHandler(consumer_key, Consumer_secret)
auth.set_access_token(access_key, access_secret)
API = tweepy.API (аутентификация)
На последней части предварительной настройки вам необходимо подключиться к терминалу MT5, сохранить средства вашего счета и определить торговый инструмент, с которым мы будем работать — в данном случае это биткойн. Мы также создадим краткий список ключевых слов для запроса последнего твита Илона.
# подключаемся к торговому счету без указания пароля и сервера
mt5.initialize()# номер счета в левом верхнем углу окна терминала МТ5
# пароль базы данных терминала применяется, если установлено запоминание данных соединения
номер_аккаунта = 555
авторизован = mt5.login(номер_аккаунта)если разрешено:
print(f'подключено к аккаунту №{account_number}')
еще:
print(f'не удалось подключиться к учетной записи № {account_number}, код ошибки: {mt5.last_error()}')# сохраните средства вашего счета
account_info = mt5.account_info()
если account_info имеет значение None:
поднять RuntimeError('Не удалось загрузить уровень баланса счета.')
еще:
капитал = плавающий(account_info[10])
Теперь давайте определим монету, на которой мы будем совершать сделки, и ключевые слова, которые будем искать.
#cryptoзнак и ключевые слова
КРИПТО = 'BTCUSD'
ключевые слова = ['Биткойн', 'биткойн', 'БИТКОИН', 'btc', 'BTC']
Когда все предварительные этапы завершены, пришло время сосредоточиться на интересных частях этого бота. Давайте начнем с получения последнего твита Илона с помощью Твипи, как показано ниже в get_elons_tweet() функции.
Во время тестирования смайлы и другие недопустимые символы нарушали бы сценарий, поэтому каждый твит форматируется так, чтобы содержать только буквенно-цифровые символы.
#Получите последний твит Technoking
защита get_elons_tweet():
«»»Получите последний твит Илона по идентификатору пользователя — повторяйте попытку, пока tweepy не вернет твит»»»
твиты = tweepy.Cursor(api.user_timeline,id="44196397", с=date.today(),twitter_mode='extended').items(1)#удалить все недопустимые символы
elons_last_tweet = [re.sub('[^A-Za-z0–9]+', ' ',twitter.full_text) для твита в твитах]#Повторите попытку, пока он не вернет значение — tweepy API иногда не возвращает твит
пока не elons_last_tweet:
твиты = tweepy.Cursor(api.user_timeline,id="44196397", с=date.today(),twitter_mode='extended').items(1)
elons_last_tweet = [re.sub('[^A-Za-z0–9]+', ' ',twitter.full_text) для твита в твитах]
вернуть elons_last_tweet[0]
Теперь, когда у нас есть последний твит Илона, мы можем начать подготовку логики и торгового запроса в функции. торговля(). Для получения дополнительной информации о формате торгового запроса ознакомьтесь с документацией MT 5.
что_муск_сказал содержит последний твит, и логика проверит, есть ли какие-либо ключевые слова, определенные в нашем ключевые слова вышеперечисленная переменная присутствует в твите Илона. Если это правда, торговый бот биткойнов разместит ордер на покупку биткойнов с мгновенным исполнением. Если это ложь, он просто вернет нам твит.
#купить биткойны
защита торговли():
«»»Проверьте, упомянул ли Маск биткойн, и если да, откройте позицию на покупку»»»
what_musk_said = get_elons_tweet()# используется для проверки, была ли уже размещена позиция
позиции = mt5.positions_get(symbol=CRYPTO)
заказы = mt5.orders_get(symbol=CRYPTO)
символ_информация = mt5.symbol_info(КРИПТО)
цена = mt5.symbol_info_tick(CRYPTO).bid# выполняем проверку логики
если есть (ключевое слово в What_musk_said для ключевого слова в ключевых словах):
распечатать(это сказал сумасшедший — купил немного!')# подготавливаем торговый запрос
если не mt5.initialize():
поднять RuntimeError (f'MT5 Initialize() не удалось с кодом ошибки {mt5.last_error()}')#проверяем, что нет открытых позиций и ордеров
если len(positions) == 0 и len(orders) <1:
если символ_информация имеет значение Нет:
print(f'{CRYPTO} не найден, невозможно вызвать order_check()')
mt5.shutdown()# если символ недоступен в MarketWatch, добавьте его
если не символ_информация.видимый:
print(f'{CRYPTO} не виден, пытаюсь включить')
если не mt5.symbol_select(CRYPTO, True):
print('symbol_select({}}) не удалось, выйдите', CRYPTO)#это представляет собой 5% капитала. Минимальный заказ составляет 0.01 BTC. Увеличьте долю капитала, если реткод = 10014.
лот = float(round(((капитал / 5) / цена), 2))# определяем стоп-лосс и тейк-профит
сл = цена — (цена * 5) / 100
tp = цена + (цена * 10) / 100
запрос = {
«действие»: mt5.TRADE_ACTION_DEAL,
'символ': КРИПТО,
'объем': лот,
«тип»: mt5.ORDER_TYPE_BUY,
'цена': цена,
'сл': сл,
'тп': тп,
'магия': 66,
«комментарий»: «питон-купить»,
'type_time': mt5.ORDER_TIME_GTC,
'type_filling': mt5.ORDER_FILLING_IOC,
}# отправить торговый запрос
результат = mt5.order_send (запрос)#проверяем результат выполнения
print(f'1. order_send(): лотами {CRYPTO} {lot} по {price}')если result.retcode != mt5.TRADE_RETCODE_DONE:
print(f'2. order_send не удалось, retcode={result.retcode}')#распечатать результат ордера — все, кроме retcode=10009, является ошибкой в торговом запросе.
print(f'2. order_send выполнено, {результат}')
print(f' открытая позиция с POSITION_TICKET={result.order}')еще:
print(f'Обнаружен сигнал на покупку, но {CRYPTO} имеет активную сделку {len(positions)}')еще:
print(f'Он этого не говорил, он сказал: {what_musk_said}')
Теперь нам нужно решить, как часто нам следует повторять приведенный ниже код. По умолчанию он извлекает и анализирует последний твит Илона каждые 5 секунд, но это можно настроить в настройках. время сна функция ниже.
#выполнять код каждые 5 секунд
если __name__ == '__main__':
print('Нажмите Ctrl-C / Ctrl-Q, чтобы остановить.')
для меня в count():
торговля()
print(f'Итерация {i}')
time.sleep (5)
Работа над проектом была интересной, и я надеюсь, что вам понравилась эта статья. Пожалуйста, подпишитесь на меня, если вам понравилась эта статья. Чтобы узнать больше о проектах крипто-ботов, посетите мой блог. боты для торговли криптовалютой на Python
- &
- доступ
- Учетная запись
- активный
- AI
- Все
- анализ
- API
- Применение
- Программы
- около
- гайд
- Немного
- Bitcoin
- биткойн-трейдинг
- блокчейн
- Технологии блочейна
- Блог
- Бот
- боты
- брокер
- Брокеры
- BTC
- строить
- Строительство
- купить
- купить биткойн
- покупка
- призывают
- Привлекайте
- Chatbot
- chatbots
- код
- Монета
- Пара
- Создающий
- Полномочия
- крипто-
- Crypto Markets
- криптография
- криптовалюта
- торговля криптовалютами
- данным
- База данных
- Дев
- Застройщик
- DID
- Окружающая среда
- собственный капитал
- EU
- EV
- выполнение
- EY
- Фокус
- следовать
- формат
- fun
- функция
- High
- история
- Как
- How To
- HP
- hr
- HTTPS
- ia
- Увеличение
- информация
- интеграции.
- IP
- IT
- ключи
- Король
- Kx
- последний
- уровень
- LINK
- Список
- загрузка
- Длинное
- рынок
- Области применения:
- марш
- средний
- упоминает
- месяцев
- луна
- MT
- Навигация
- НЛП
- предлагают
- открытый
- Мнения
- заказ
- заказы
- Другое
- Другое
- Пароль
- Платформа
- Платформы
- представить
- цена
- Прибыль
- Проект
- проектов
- Питон
- RE
- Партнерская
- Регистрация
- отчету
- Полезные ресурсы
- ОТДЫХ
- Возвращает
- безопасный
- набор
- Поделиться
- Короткое
- просто
- спать
- So
- Начало
- магазин
- Стратегия
- лето
- поддержка
- Поддержка
- Коммутатор
- система
- говорить
- Технический
- Технический анализ
- Технологии
- Tesla
- тестXNUMX
- Тестирование
- Проекты
- время
- Лексемы
- топ
- торговать
- торги
- Торговля
- Торговые Боты
- Обучение
- Тенденции
- Tweet
- us
- ценностное
- Виртуальный
- Работа
- работает
- письмо