Cómo hice que el robot leyera los canales de negociación e inversión por mí

¡Hola a todos! Quiero compartir una de mis manualidades, tal vez le sea útil a otra persona. Decidí reescribir mi artículo para Habr, agregando ejemplos de código a partir de los cuales puede ensamblar un robot de este tipo. A quién le importa, bienvenido a cat.





Fondo

Hace unos seis meses, comencé a entender el tema de las inversiones, porque las tasas de depósitos han roto otro mínimo, esta vez habiendo caído por debajo de la tasa de inflación, lo que por supuesto es muy triste. Sin embargo, gracias a este evento, me sumergí en el tema de las inversiones y aprendí muchas cosas nuevas e interesantes. Ahora puedo distinguir acciones de bonos.





Mi conocimiento de este tema tuvo lugar en varias direcciones.





Primero, compré algunas acciones y comencé a ver cómo reaccionaban sus cotizaciones ante ciertas noticias. De repente, resultó que después de un excelente informe, el precio puede caer (porque en buenas noticias, los grandes jugadores a menudo intentan arreglar las ganancias, lo que hace que las cotizaciones colapsen).





En segundo lugar, todos los días comencé a desmontar términos de intercambio, fenómenos y relaciones, y a escribir notas para mí en el carrito. Hubo 500 puestos de este tipo en seis meses.





En tercer lugar, comencé a leer noticias sobre RBK, Finam y solo en los canales del carrito. Al mismo tiempo, como noté por mi cuenta, mi atención gradualmente se desvió completamente hacia los telegramas, porque cuando quiero ver la relación entre el movimiento de las citas y los eventos, el factor tiempo se vuelve importante.





Al principio leí todo y fue simplemente interesante, luego comencé a notar inconsistencias entre diferentes canales al evaluar ciertos eventos, me di cuenta de que es necesario mirar la información de manera crítica, ya que las personas (incluidos los expertos) se equivocan constantemente en sus pronósticos. Ya en la bolsa de valores está en el orden de las cosas. Sin embargo, el análisis constante en este formato da una buena inmersión en el tema y ya forma su propia opinión sobre tal o cual tema.





El problema del flujo interminable de información

, , , , "" , - , , , , , . , , "", , , , "" , .





, 150 , , , , , , , .





, -, , , . .





, -, , , -, — , , «Yandex», «», «YNDX». , , . , ? .





telethon





from telethon import TelegramClient, events, sync
from telethon.tl.functions.channels import JoinChannelRequest
import re
      
      



, API https://my.telegram.org/, , "API development tools", 2 , Platform Desktop.





App api_id, App api_hash . PHONE_NUMBER , .





API_ID = 1234567 #   api_id
API_HASH = 'your_hash'
PHONE_NUMBER = '+7xxxxxxxxxx'  
      
      



,





 CHANNELS = (
             'channel1_name',  #     
             'channel2_name',  #  https://t.me, @   -  
   					 'channel3_name    
             )  
      
      



, , . , , .





# 
names = {
    'channel1_to_post': ['interesting_text1', 
                         'interesting_text2'],
    'channel2_to_post': ['other_channel_interesting_text1', 
                         'other_channel_interesting_text2', 
                         'other_channel_interesting_text3'],
}
# ""     +    
d = {}
for name in names.keys():
    for t in names[name]:
        d[t.lower()] = name.lower()
print(d)
      
      



- , :





client = TelegramClient('session', API_ID, API_HASH)
client.start()

for channel in CHANNELS:
    client(JoinChannelRequest(channel))
      
      



, ,





#     
@client.on(events.NewMessage(CHANNELS))
async def handler(event):
    print(f'received text: {event.message.message}')
    
    for tmp in d.keys():
      await client.forward_messages(d[tmp], event.message)

client.run_until_disconnected()
      
      



( , 150 )





t.me/tesla_twits - Tesla

t.me/apple_twits - Apple

t.me/amazon_twits - Amazon

t.me/moderna_twits - Moderna

t.me/pfizer_twits - Pfizer

t.me/google_twits - Google

t.me/facebook_twits - Facebook

t.me/microsoft_twits - Microsoft

t.me/yandex_twits -

t.me/mailru_twits - Mail.ru

t.me/mts_twits -

t.me/aeroflot_twits -

t.me/rosneft_twits -

t.me/sber_twits -

t.me/gazprom_twits -

t.me/afk_twits -

t.me/nornickel_twits  - Norilsk Nickel

t.me/vtb_twits  - VTB

t.me/rusal_twits  - Rusal

t.me/lukoil_twits  - Lukoil





Me alegraría si alguien más además de mí lo apreciara. Por lo tanto, si posee acciones de estas empresas y periódicamente no comprende por qué se hunden, o simplemente desea "recogerlas" a tiempo ya un precio bajo, suscríbase. Desafortunadamente, Telegram te permite hacer un número limitado de canales abiertos, por lo que eliminaré aquellos canales en los que habrá la menor cantidad de suscriptores.





¡Todo está bien!








All Articles