利用Medium进行加密货币交易

监控Medium标签和博客,寻找加密空间中的投资机会。

利用Medium进行加密货币交易
一键发币: SUI | SOL | BNB | ETH | BASE | ARB | OP | POLYGON | AVAX | FTM | OK

你知道最好的地方是什么吗?作为一个自由职业者?我可以遇到各种各样的人,他们手上都有各种各样的问题。

你有没有想过通过阅读Medium文章来赚钱?

最近我遇到了一位有趣的加密交易员,来自保加利亚,他想让我构建一个Telegram机器人,通知他关于包含某些“关键词”的最新博客文章。

为什么?

因为以前他经常手动监控Medium上的加密相关文章,以寻找投资于即将推出的代币和硬币的机会。

等等……什么?

为什么要扫描Medium寻找加密交易机会?

因为,"今天,几乎所有的新加密项目所有者在推出他们的代币或硬币之前都会在Medium上写一篇文章介绍他们的‘革命性’技术。这使得它成为一个很好的信息收集平台,在市场发现之前就了解这些项目。"

说实话,当我第一次听到这个信息套利时,我感到非常惊讶。我从未想到这么多区块链开发者和高管会首先在Medium上撰写关于他们新代币、功能和发布的文章。

但这个人愿意为此投入资金,并承担加密市场的风险。更重要的是,他想自动化这个重复性的任务。

于是我打开了我的IDE,开始工作!

1、“Crypto-Medium-Bot”的工作原理

交易是一场时间就是一切的游戏。而在波动的加密货币世界中,一周相当于几个月,这一点变得更加重要。

目前区块链技术的发展速度令人难以置信。因此,在这里快速有效地获取信息变得非常重要。

我的主要目标是跟踪Medium上的热门标签(如区块链、DeFi、代币经济学)的文章,并根据它们是否包含我的目标关键词(如介绍、推出、发现)进行过滤。

所以每小时,这个机器人都会抓取Medium以查找这样的文章,并将筛选后的帖子发送到我的Telegram机器人聊天中。


2、代码: -

import time
from collections import deque
from itertools import chain

from config import *
from messages import TelegramBot
from medium_api import Medium


def run(
        rapidapi_key=RAPIDAPI_KEY, 
        telegram_chat_id=TELEGRAM_CHAT_ID,
        telegram_bot_token=TELEGRAM_BOT_TOKEN,
        tags = TAGS,
        target_words = WORDLIST
    ):
    medium = Medium(rapidapi_key=rapidapi_key)
    existing_articles = deque(maxlen=1000)

    while True:
        top_articles = [medium.topfeeds(tag, 'NEW').ids for tag in tags]
        top_articles = set(chain(*top_articles))

        new_articles = top_articles - set(existing_articles)

        existing_articles.extend(new_articles)
        
        if len(new_articles) >  0:
            for new_article_id in new_articles:
                msg = f'New Article found - https://medium.com/p/{new_article_id}'
                new_article = medium.article(new_article_id, save_info=False)
                print(f'[BOT]: {msg}')

                if any(ele.lower() in new_article.content.lower() for ele in target_words):
                    t = TelegramBot(
                        auth=telegram_bot_token,
                        chat_id=telegram_chat_id,
                        body=msg
                    )
                    t.send()
                    print(f'[BOT]: Message sent to telegram chat - {telegram_chat_id}')

        time.sleep(FREQUENCY)

if __name__ == '__main__':
    run()
RAPIDAPI_KEY = 'YOUR_RAPIDAPI_KEY' # must replace !!!

TAGS = [
    'ethereum',
    'blockchain',
    'defi'
]

TELEGRAM_CHAT_ID = 'YOUR_CHAT_ID' # must replace !!!
TELEGRAM_BOT_TOKEN = 'YOUR_BOT_TOKEN' # must replace !!!

WORDLIST = [
    'launching',
    'introducing',
    'discover'
]

FREQUENCY = 3600 # 1 hour

3、代码解释

3.1 bot.py

此文件包含一个名为run()的函数,该函数以配置参数作为参数(定义在config.py中)。然后初始化Medium API对象,并设置内存中存储的最大文章数为1000(这样我们不会多次通知同一篇文章)。

然后它运行一个无限循环,每隔FREQUENCY执行一次代码。它从Medium获取给定TAGS的热门文章,将其与现有文章进行比较(以去除冗余),并根据给定的WORDLIST进行过滤。

在过滤过程之后,新文章会被发送到Telegram机器人并添加到现有文章列表中。

3.2 config.py

此文件仅包含以下变量: -

  • RAPIDAPI_KEY(从rapidapi.com获得的字母数字字符串)
  • TAGS(要监控的文章标签)
  • TELEGRAM_BOT_TOKEN(参见
  • TELEGRAM_CHAT_ID(参见
  • WORDLIST(关键词/过滤器)

4、参考资料

  1. 要了解更多详细说明和完整源代码,请访问我的Github仓库
  2. 订阅非官方Medium API以获取您的RapidAPI_KEY
  3. 访问https://mediumapi.com获取有关这些API的所有内容
  4. 前往电报的机器人文档或YouTube教程学习如何创建电报机器人。

快乐编码!


原文链接:How To Leverage Medium for Crypto-trading

DefiPlot翻译整理,转载请标明出处

免责声明:本站资源仅用于学习目的,也不应被视为投资建议,读者在采取任何行动之前应自行研究并对自己的决定承担全部责任。
通过 NowPayments 打赏