Python_Scripts
8.22K subscribers
1.01K photos
5 videos
674 files
1.55K links
Скрипты 💾 на Python 🐍
- боты 🛠
- парсеры📁
- чекеры🔍
- автоматизация🔧
- многое другое💻

Ваши предложения📝 @cmd_dark @CMD_Vega
Download Telegram
🚀 Полезные библиотеки Python

💾 Pint

📌 Библиотека Python, для работы с физическими величинами и единицами измерения. Полезна для научных и инженерных вычислений.

Особенности:

- Автоматическое преобразование единиц измерения.

- Поддержка сложных вычислений с единицами.

- Интеграция с NumPy и Pandas.

⚙️ Установка 👇👇👇

pip install pint


📁 Документация

#библиотеки

📌 Подпишись Python_Scripts ❗️
7
shadowbot-main.zip
3.5 KB
📌 Скрипт авто продажа в Telegram

💻  ЯП:  Python 3.11+🐍
💾  Модули: aiogram
📂  База данных: aiosqlite

📌 Скрипт простой Telegram-бот, который позволяет пользователям покупать любые уникальные ключи, используя виртуальную валюту Telegram ⭐️.

📌 Вся информация приведена исключительно в ознакомительных целях❗️❗️❗️

#telegram

📌
Подпишись  Python_Scripts❗️
👍53
📌Автоматическое обнаружение пробоя уровней поддержки и сопротивления.
Доработка:
Фильтрация ложных пробоев с помощью индекса волатильности ATR (Average True Range).

Используем публичное API Bybit👨‍💻
import requests
import numpy as np

# Настройки
SYMBOL = "BTCUSDT"
KLINE_URL = "https://api.bybit.com/v5/market/kline"
INTERVAL = "15" # 15-минутные свечи
LIMIT = 100 # Количество свечей для анализа (для ATR)
ATR_PERIOD = 14 # Период ATR
BREAKOUT_MULTIPLIER = 1.5 # Насколько цена должна превысить ATR для подтвержденного пробоя

def get_kline_data():
"""Получает исторические свечи"""
params = {"category": "spot", "symbol": SYMBOL, "interval": INTERVAL, "limit": LIMIT}
response = requests.get(KLINE_URL, params=params)

if response.status_code == 200:
return response.json().get("result", {}).get("list", [])
else:
print(f"Ошибка API: {response.status_code}")
return None

def calculate_atr(candles, period=ATR_PERIOD):
"""Рассчитывает ATR (средний истинный диапазон)"""
highs = np.array([float(c[2]) for c in candles])
lows = np.array([float(c[3]) for c in candles])
closes = np.array([float(c[4]) for c in candles])

prev_closes = np.roll(closes, shift=1) # Смещаем массив на 1 (добавится дубликат первого элемента)
prev_closes[0] = closes[0] # Убираем лишнее смещение

tr = np.maximum(highs - lows, np.maximum(abs(highs - prev_closes), abs(lows - prev_closes)))
atr = np.convolve(tr, np.ones(period) / period, mode='valid')

return atr[-1] # Берем последнее значение ATR

def find_support_resistance(candles):
"""Определяет уровни поддержки и сопротивления"""
highs = np.array([float(c[2]) for c in candles])
lows = np.array([float(c[3]) for c in candles])

support = np.min(lows)
resistance = np.max(highs)

return support, resistance

def detect_breakout():
"""Проверяет пробой уровней с фильтрацией по ATR"""
candles = get_kline_data()
if not candles:
return

support, resistance = find_support_resistance(candles[-50:]) # Берем последние 50 свечей
last_close = float(candles[-1][4])
atr = calculate_atr(candles)

breakout_threshold = atr * BREAKOUT_MULTIPLIER # Минимальный разрыв для подтверждения пробоя

if last_close >= resistance + breakout_threshold:
print(f"🚀 Подтвержденный пробой вверх! Цена {last_close:.2f} выше сопротивления {resistance:.2f} (ATR {atr:.2f})")
elif last_close <= support - breakout_threshold:
print(f"⚠️ Подтвержденный пробой вниз! Цена {last_close:.2f} ниже поддержки {support:.2f} (ATR {atr:.2f})")
else:
print(f"📊 Цена {last_close:.2f}, диапазон: {support:.2f} - {resistance:.2f} (без пробоя)")

if __name__ == "__main__":
detect_breakout()

📌 Подпишись  Python_Scripts❗️
🔥9👍53
🚀 Полезные библиотеки Python

💾 PyInfra

📌 Библиотека Python, для управления конфигурацией серверов и развертывания приложений с использованием простого Python-кода вместо громоздких YAML-файлов.

Особенности:

- Позволяет управлять серверами с использованием чистого Python.

- Работает без агентов на удалённых машинах.

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

⚙️ Установка 👇👇👇

pip install pyinfra


📁 Документация

#библиотеки

📌 Подпишись Python_Scripts ❗️
👍82
pump-not-fun-main.zip
81.7 KB
📌 Скрипт покупка токенов

💻  ЯП:  Python 3.11+🐍
💾  Модули: aiohttp, solana, fastapi, pyrotgfork
📂  База данных: sqlalchemy

📌 Скрипт Telegram бот для автоматизации анализа и покупки токенов в сети Sol по сигналам из выбранных вами телеграм-каналов(перехватывайте сообщения из выбранных чатов Telegram (групп, каналов и т. д.))

📌 Вся информация приведена исключительно в ознакомительных целях❗️❗️❗️

#telegram

📌
Подпишись  Python_Scripts❗️
11👍6🔥4
📌Aнализ аномалий с помощью Z-Score.
Почему это полезно?
Фильтрует шум — игнорирует обычные колебания
Выявляет сильные движения — можно использовать в стратегиях
Просто и быстро — нет сложных вычислений
Используем публичное API Bybit👨‍💻
import requests
import numpy as np

# Настройки
SYMBOL = "BTCUSDT"
KLINE_URL = "https://api.bybit.com/v5/market/kline"
INTERVAL = "15" # 15-минутные свечи
LIMIT = 100 # Количество свечей

def get_kline_data():
"""Получает исторические свечи"""
params = {"category": "spot", "symbol": SYMBOL, "interval": INTERVAL, "limit": LIMIT}
response = requests.get(KLINE_URL, params=params)

if response.status_code == 200:
return response.json().get("result", {}).get("list", [])
else:
print(f"Ошибка API: {response.status_code}")
return None

def detect_anomalies():
"""Анализ аномальных движений"""
candles = get_kline_data()
if not candles:
return

closes = np.array([float(c[4]) for c in candles])
returns = np.diff(closes) # Вычисляем разницу между свечами

mean = np.mean(returns)
std = np.std(returns)
z_scores = (returns - mean) / std # Z-оценка для каждого изменения

threshold = 3 # Граница аномалий
anomalies = np.where(abs(z_scores) > threshold)[0]

for idx in anomalies:
move = "🚀 Резкий рост" if z_scores[idx] > 0 else "⚠️ Резкое падение"
print(f"{move}: Свеча {idx+1}, Изменение: {returns[idx]:.2f}, Z-Score: {z_scores[idx]:.2f}")

if __name__ == "__main__":
detect_anomalies()

📌 Подпишись  Python_Scripts❗️
1🔥10👍41
🚀 Полезные библиотеки Python

💾 Scalene

📌 Библиотека Python, высокопроизводительный профилировщик, который анализирует загрузку процессора, потребление памяти и влияние глобальной блокировки интерпретатора (GIL) на выполнение кода.

Особенности:

- Анализирует выполнение кода на уровне строк.

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

- Отлично подходит для оптимизации производительности Python-программ.

⚙️ Установка 👇👇👇

pip install scalene


📁 Документация

#библиотеки

📌 Подпишись Python_Scripts ❗️
👍43
🖥 Наконец-то нормальный канал по Python!

PytStart – для каждого питониста!

🔸 Полезные статьи
🔸 Лайфхаки и советы
🔸 Разбор кода и практические задания

Присоединяйся и начни свой путь в Python уже сегодня: @pytstart
Please open Telegram to view this post
VIEW IN TELEGRAM
👍124🔥3
PornHub-dlp-main.zip
25.4 KB
📌 Скрипт загрузка с pornhub

💻  ЯП:  Python 3.11+🐍
💾  Модули: pyperclip, dublib, pyqt6
📂  База данных: -

📌 Скрипт для массовой загрузки видео с PornHub, поддерживающее сортировку по моделям и выбор предпочитаемого качества роликов. Доступны графический и консольный интерфейсы.

📌 Вся информация приведена исключительно в ознакомительных целях❗️❗️❗️

#telegram

📌
Подпишись  Python_Scripts❗️
1😁74👍139
📌 Автоматический поиск разворотных свечных паттернов.

Почему это полезно?

Помогает находить точки входа

Фильтрует шум, используя только ключевые паттерны

Можно комбинировать с RSI, MACD и объемами

Используем публичное API Bybit👨‍💻
import requests

# Настройки
SYMBOL = "BTCUSDT"
KLINE_URL = "https://api.bybit.com/v5/market/kline"
INTERVAL = "15" # 15-минутные свечи
LIMIT = 50 # Количество свечей для анализа

def get_kline_data():
"""Получает исторические свечи"""
params = {"category": "spot", "symbol": SYMBOL, "interval": INTERVAL, "limit": LIMIT}
response = requests.get(KLINE_URL, params=params)

if response.status_code == 200:
return response.json().get("result", {}).get("list", [])
else:
print(f"Ошибка API: {response.status_code}")
return None

def is_doji(open_price, close_price, high, low):
"""Паттерн Доджи (разворотный сигнал)"""
body = abs(close_price - open_price)
range_ = high - low
return body < 0.1 * range_

def is_hammer(open_price, close_price, high, low):
"""Паттерн Молот (бычий разворот)"""
body = abs(close_price - open_price)
lower_shadow = open_price - low if close_price > open_price else close_price - low
return lower_shadow > 2 * body and (high - max(open_price, close_price)) < body

def is_engulfing(prev_open, prev_close, open_price, close_price):
"""Паттерн Поглощение (разворот тренда)"""
return (close_price > open_price and open_price < prev_close and close_price > prev_open) or \
(close_price < open_price and open_price > prev_close and close_price < prev_open)

def analyze_patterns():
"""Анализ свечных паттернов"""
candles = get_kline_data()
if not candles:
return

for i in range(1, len(candles)): # Начинаем со 2-й свечи
prev_open, prev_close = float(candles[i-1][1]), float(candles[i-1][4])
open_price, close_price = float(candles[i][1]), float(candles[i][4])
high, low = float(candles[i][2]), float(candles[i][3])

if is_doji(open_price, close_price, high, low):
print(f"⚠️ Доджи на {i}-й свече: возможный разворот!")

if is_hammer(open_price, close_price, high, low):
print(f" Молот на {i}-й свече: возможный рост!")

if is_engulfing(prev_open, prev_close, open_price, close_price):
print(f"🔥 Поглощение на {i}-й свече: возможный разворот тренда!")

if __name__ == "__main__":
analyze_patterns()

📌 Подпишись  Python_Scripts❗️
312👍7🔥4😁1
🚀 Полезные библиотеки Python

💾 Kedro

📌 Библиотека Python, для структурирования проектов машинного обучения и аналитики данных

Kedro помогает организовать код в ML-проектах, делая его более воспроизводимым, модульным и понятным. Подходит для работы с большими данными, моделями машинного обучения и аналитическими пайплайнами.

Особенности:

- Чёткая структура проекта.

- Поддержка пайплайнов для обработки данных.

- Интеграция с MLflow, DVC, Airflow и другими инструментами.

⚙️ Установка 👇👇👇

pip install kedro


📁 Документация

#библиотеки

📌 Подпишись Python_Scripts ❗️
👍63🔥1
deepseek_bot-main.zip
6.6 KB
📌 Скрипт DeepSeek

💻  ЯП:  Python 3.11+🐍
💾  Модули: python-telegram-bot, requests
📂  База данных: sqlite3

📌 Скрипт Telegram-бота, который использует API DeepSeek для взаимодействия с пользователем. Бот может отвечать на текстовые запросы, а также обрабатывать документы в форматах PDF, DOCX и TXT. Он сохраняет контекст разговора и данные из загруженных файлов в базе данных SQLite, чтобы использовать их при последующих запросах.

📌 Вся информация приведена исключительно в ознакомительных целях❗️❗️❗️

#telegram

📌
Подпишись  Python_Scripts❗️
👍2412👏7🔥1
📌 Автоматическое определение консолидации цены.

Почему это полезно:

Идентифицирует боковик перед сильным движением

Полезно для поиска точек входа в пробой

Можно комбинировать с объемами и RSI

Используем публичное API Bybit👨‍💻
import requests
import numpy as np

# Настройки
SYMBOL = "BTCUSDT"
KLINE_URL = "https://api.bybit.com/v5/market/kline"
INTERVAL = "15" # 15-минутные свечи
LIMIT = 50 # Количество свечей для анализа
RANGE_THRESHOLD = 0.002 # Порог для консолидации (0.2% от цены)

def get_kline_data():
"""Получает исторические свечи"""
params = {"category": "spot", "symbol": SYMBOL, "interval": INTERVAL, "limit": LIMIT}
response = requests.get(KLINE_URL, params=params)

if response.status_code == 200:
return response.json().get("result", {}).get("list", [])
else:
print(f"Ошибка API: {response.status_code}")
return None

def detect_consolidation():
"""Определяет консолидацию цены"""
candles = get_kline_data()
if not candles:
print(" Не удалось получить данные.")
return

closes = np.array([float(c[4]) for c in candles])
highs = np.array([float(c[2]) for c in candles])
lows = np.array([float(c[3]) for c in candles])

min_price = np.min(lows[-10:]) # Минимальная цена за 10 свечей
max_price = np.max(highs[-10:]) # Максимальная цена за 10 свечей
price_range = (max_price - min_price) / closes[-1]

# 🔍 Добавляем отладку:
print(f"🔍 Анализируем последние 10 свечей...")
print(f"🔹 Min цена: {min_price:.2f}, Max цена: {max_price:.2f}")
print(f"🔹 Текущий диапазон: {price_range:.5f}, Порог: {RANGE_THRESHOLD}")

if price_range < RANGE_THRESHOLD:
print(f"📉 Консолидация: {min_price:.2f} - {max_price:.2f}, возможный пробой!")
else:
print(" Нет консолидации. Ждем сигнала...")

if __name__ == "__main__":
detect_consolidation()

📌 Подпишись  Python_Scripts❗️
1👍8🔥65
🚀 Полезные библиотеки Python

💾 Falkon

📌 Библиотека Python, для обучения больших ядерных (kernel-based) моделей. Она объединяет GPU-ускорение и эффективные численные методы для работы с большими наборами данных.

Особенности:

- Намного быстрее, чем стандартные SVM и Gaussian Process.

- Поддержка больших данных и GPU-ускорения.

- Подходит для задач регрессии и классификации.

⚙️ Установка 👇👇👇

pip install falkon


📁 Документация

#библиотеки

📌 Подпишись Python_Scripts ❗️
👍42🔥2
-Telegram-Voice-Recognition-Bot-main.zip
8.7 MB
📌 Скрипт распознание говорящих

💻  ЯП:  Python 3.11+🐍
💾  Модули: aiogram, aiohttp, torch
📂  База данных: -

📌 Скрипт представляет собой Telegram-бота для распознавания говорящих по голосовым сообщениям с использованием нейросетевой модели.

Функции:

- Принимает голосовые сообщения
- Анализирует голос и определяет говорящего
- Показывает список известных говорящих (/speakers)
- Работает на основе MFCC-фич и нейросети, обученной на PyTorch

📌 Вся информация приведена исключительно в ознакомительных целях❗️❗️❗️

#telegram

📌
Подпишись  Python_Scripts❗️
👍63🔥2
📌 Выявление скрытых крупных заявок (Iceberg Orders)!

Что это и зачем?

Iceberg-заявки — это ордера, которые выглядят как маленькие, но при исполнении обновляются, показывая новую "скрытую" часть.

🔥 Как это использовать?

📌 Если Iceberg в BID → крупный игрок накапливает позицию, рост вероятен
📌 Если Iceberg в ASK → крупный игрок разгружает позицию, может быть падение

Используется публичное API Bybit👨‍💻
import requests
import time

# API Bybit (глубина стакана)
ORDER_BOOK_URL = "https://api.bybit.com/v5/market/orderbook"
SYMBOL = "BTCUSDT"
DEPTH = 50 # Берём топ-50 заявок

def get_order_book():
"""Получает стакан заявок"""
params = {"category": "spot", "symbol": SYMBOL, "limit": DEPTH}
response = requests.get(ORDER_BOOK_URL, params=params)
if response.status_code == 200:
data = response.json().get("result", {})
bids = [(float(price), float(size)) for price, size in data.get("b", [])]
asks = [(float(price), float(size)) for price, size in data.get("a", [])]
return bids, asks
else:
print(f"Ошибка API: {response.status_code}")
return None, None

def detect_iceberg_orders():
"""Выявляет скрытые Iceberg-заявки"""
prev_bids, prev_asks = get_order_book()
if not prev_bids or not prev_asks:
print(" Ошибка получения стакана.")
return

print("📡 Начинаем мониторинг Iceberg-заявок...")
while True:
time.sleep(2) # Ждём обновления стакана
bids, asks = get_order_book()
if not bids or not asks:
continue

# Анализ заявок (BID - покупатели)
for i in range(min(len(bids), len(prev_bids))):
if bids[i][0] == prev_bids[i][0] and bids[i][1] > prev_bids[i][1] * 1.5:
print(f"❄️ Iceberg-заявка в BID: {bids[i][0]} - новый объём {bids[i][1]} BTC (было {prev_bids[i][1]} BTC)")

# Анализ заявок (ASK - продавцы)
for i in range(min(len(asks), len(prev_asks))):
if asks[i][0] == prev_asks[i][0] and asks[i][1] > prev_asks[i][1] * 1.5:
print(f"❄️ Iceberg-заявка в ASK: {asks[i][0]} - новый объём {asks[i][1]} BTC (было {prev_asks[i][1]} BTC)")

prev_bids, prev_asks = bids, asks # Обновляем стакан

if __name__ == "__main__":
detect_iceberg_orders()

📌 Подпишись  Python_Scripts❗️
🔥9👍43
🚀 Полезные библиотеки Python

💾 Lark

📌 Библиотека Python, для создания и обработки грамматик, парсеров и трансляторов. Подходит для создания языков программирования, компиляторов и анализа сложных текстовых данных.

Особенности:

- Поддержка LALR(1) и Earley-парсинга.

- Подходит для создания DSL и обработчиков текстов.

- Работает быстрее аналогов, таких как PLY.

⚙️ Установка 👇👇👇

pip install lark-parser


📁 Документация

#библиотеки

📌 Подпишись Python_Scripts ❗️
👍3🔥31
Solana_Trading_Bot-master.zip
83.2 KB
📌 Скрипт торговля токенами в сети solana

💻  ЯП:  Python 3.11+🐍
💾  Модули: python-telegram-bot, solana
📂  База данных: postgresql

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

Возможности:
- снайпер
- лимитные ордера
- избранные токены
- обзор портфеля
- реферальная система

📌 Вся информация приведена исключительно в ознакомительных целях❗️❗️❗️

#telegram

📌
Подпишись  Python_Scripts❗️
🔥93👍2
📌 Алгоритм кластерного анализа объёма (Volume Clusters)

🔍 Что делает?

Анализирует 1000 последних сделок на Bybit
Группирует объёмы по ценовым уровням
Показывает уровни, где сконцентрированы большие объёмы
Помогает найти скрытые уровни поддержки/сопротивления

🔥 Чем полезно?

Выявляет ключевые зоны ликвидности (где цена будет реагировать)
Отличный инструмент для скальперов и дневных трейдеров
Можно менять BIN_SIZE, чтобы видеть более мелкие или крупные уровни

Используется публичное API Bybit👨‍💻
import requests
from collections import defaultdict

# Актуальный эндпоинт API Bybit
TRADES_URL = "https://api.bybit.com/v5/market/recent-trade"
SYMBOL = "BTCUSDT"
TRADE_LIMIT = 1000 # Количество сделок для анализа
BIN_SIZE = 50 # Группировка цен (шаг 50 USDT)

def fetch_trades():
"""Получает последние сделки"""
for category in ["spot", "linear", "inverse"]:
params = {"category": category, "symbol": SYMBOL, "limit": TRADE_LIMIT}
response = requests.get(TRADES_URL, params=params)

if response.status_code == 200:
data = response.json()
if "result" in data and "list" in data["result"]:
trades = data["result"]["list"]
if trades:
return trades
return []

def analyze_volume_clusters():
"""Анализирует кластеры объёма и выводит топ-10 уровней"""
trades = fetch_trades()
if not trades:
print("Нет данных о сделках.")
return

volume_clusters = defaultdict(float)

for trade in trades:
price = float(trade.get("price", trade.get("p", 0)))
volume = float(trade.get("size", trade.get("v", 0)))

if price == 0 or volume == 0:
continue

price_bin = round(price / BIN_SIZE,4) * BIN_SIZE
volume_clusters[price_bin] += volume

sorted_clusters = sorted(volume_clusters.items(), key=lambda x: x[1], reverse=True)

print("Топ-10 уровней с наибольшим объёмом:")
for i, (price_level, volume) in enumerate(sorted_clusters[:10]):
print(f"{i+1}. Цена: {price_level} USDT | Объём: {volume:.2f} BTC")

if __name__ == "__main__":
analyze_volume_clusters()

📌 Подпишись  Python_Scripts❗️
4👍14🔥6👏3
🚀 Полезные библиотеки Python

💾 Pygraphviz

📌 Библиотека Python, обёртка для популярного инструмента Graphviz, которая позволяет создавать, визуализировать и анализировать графы прямо в Python. Полезна для работы с сетями, схемами и структурированными данными.

Особенности:

- Полноценная работа с Graphviz прямо из Python.

- Создание сложных графов и сетевых схем.

- Интеграция с networkx и matplotlib.

⚙️ Установка 👇👇👇

pip install pygraphviz


📁 Документация

#библиотеки

📌 Подпишись Python_Scripts ❗️
👍52🔥1
String-Session-Bot-main.zip
11 KB
📌 Скрипт генерации сессий

💻  ЯП:  Python 3.11+🐍
💾  Модули: flask, pyrofork, telethon
📂  База данных: postgresql

📌 Скрипт Telegram бот для генерации файлов сессий для pyrogram, telethon

📌 Вся информация приведена исключительно в ознакомительных целях❗️❗️❗️

#telegram

📌
Подпишись  Python_Scripts❗️
👍73🔥2