Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Испытайте захватывающие сражения Второй мировой войны: быстрые бои, огромный арсенал, настройка, танки и стратегия на разнообразных картах!

Warfare 1942 - онлайн шутер

Мультиплеер, Шутер, Мидкорные

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
3
maximonchik78
maximonchik78

Videosaver v9 - Кто знает, тот в курсе )⁠⁠

1 день назад


правок было овер много и провайдерские и с той стороны запреты, сейчас можно просто правой тыкнуть, копировать url вставить, либо, если одно видео на страничке вообще вставить url странички, там , где адресная строка правой тык, скопировать и в проге тык ЛЕВОЙ сначала, потом вставить. код максимально чистый, исходник не буду высылать, его уже пытаются использовать в коммерческих целях ))
в обшем создаём папку без кириллицы, закидываем туда файлик, yt-dlp он проверит и скачает последнюю версию сам, если не нужно выше 1080 в принципе всё, если нужно 2-4-8к, скачиваем ffbpeg + ffprobe, ложим рядышком. тупо екзешник, тем кто ставил рандомные патчи для майнкрафта можно вообще не отвечать, как я думаю.
прога не обходит замедленные сайты, это качалка контента.

https://disk.yandex.ru/d/Dk6PZ0XV2jaZ8Q

Videosaver v9 - Кто знает, тот в курсе )

из разных источников

Показать полностью 1
[моё] YouTube Видео ВК Загрузка файлов Python Текст
1
6
Jelizaveta

Как экспортировать данные из базы данных в Excel с помощью Python⁠⁠

2 дня назад

Экспорт данных из базы данных в Excel — это общая задача для разработчиков, которым необходимо анализировать или составлять отчеты о данных. В этой статье мы продемонстрируем, как использовать Free Spire.XLS для Python, библиотеку, которая позволяет создавать и манипулировать файлами Excel без необходимости установки Microsoft Excel. Мы рассмотрим настройку вашей среды, подключение к базе данных MySQL и экспорт данных в файл Excel.

Что такое Free Spire.XLS для Python

Spire.XLS для Python — это мощная библиотека, позволяющая разработчикам создавать, читать и манипулировать файлами Excel в различных форматах без необходимости установки Microsoft Excel. Библиотека поддерживает операции, такие как чтение и запись данных ячеек, форматирование и создание диаграмм.

Настройка вашей среды

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

1. Установите Python: Убедитесь, что Python установлен на вашем компьютере. Вы можете скачать его с официального сайта Python.

2. Установите необходимые библиотеки: Вам нужно установить библиотеку Spire.XLS и соединитель MySQL. Используйте следующие команды в терминале или командной строке:

pip install spire.xls.free

pip install mysql-connector-python

3. Настройте MySQL: Если вы еще не сделали этого, установите MySQL на вашем компьютере. Вы можете скачать его с официального сайта MySQL. После установки создайте базу данных для работы. Вы можете сделать это с помощью клиента MySQL, такого как MySQL Workbench, или через командную строку:

CREATEDATABASE excel_db;

Теперь, когда ваша среда настроена, мы можем перейти к подключению к базе данных MySQL.

Подключение к базе данных MySQL

Чтобы взаимодействовать с базой данных MySQL, вам необходимо установить соединение. Следующий код показывает, как это сделать:

import mysql.connector

# Установите соединение с базой данных MySQL

connection = mysql.connector.connect(

host="localhost",

user="your_username", # Замените на ваше имя пользователя MySQL

password="your_password", # Замените на ваш пароль MySQL

database="your_database"# Замените на имя вашей базы данных

)

cursor = connection.cursor()

Экспорт данных из базы данных в Excel

Шаг 1. Извлечение данных из базы данных

Чтобы экспортировать данные из MySQL в Excel, вам сначала нужно извлечь их. Вот как получить имена столбцов и данные конкретной таблицы в вашей базе данных:

# Получите имена столбцов

cursor.execute("SHOW COLUMNS FROM table_name")

column_names = [column[0] for column in cursor.fetchall()]

# Получите данные

cursor.execute("SELECT * FROM table_name")

data = cursor.fetchall()

Шаг 2. Запись данных в Excel

Далее вы запишите извлеченные данные в файл Excel с помощью Spire.XLS. Вот как это сделать:

from spire.xls import *

from spire.xls.common import *

# Создайте объект курсора

cursor = connection.cursor()

# Создайте объект Workbook

workbook = Workbook()

# Удалите стандартные таблицы

workbook.Worksheets.Clear()

# Добавьте таблицу и назовите ее

worksheet = workbook.Worksheets.Add("FromDatabase")

# Запишите имена столбцов в таблицу Excel

for col_index, column_name inenumerate(column_names, start=1):

worksheet.SetValue(1, col_index, column_name)

# Запишите данные в таблицу Excel

for row_index, row inenumerate(data, start=2):

for col_index, value inenumerate(row, start=1):

worksheet.SetValue(row_index, col_index, str(value))

# Сохраните рабочую книгу в файл Excel

workbook.SaveToFile("output.xlsx")

Шаг 3. Настройка вывода в Excel

Вы можете дополнительно настроить вывод в Excel, применяя стили, форматирование или добавляя диаграммы, улучшая визуальную привлекательность вашего файла Excel. Например, вы можете сделать заголовок жирным, настроить ширину столбцов и высоту строк:

# Сделайте заголовок жирным

worksheet.Rows[0].Style.Font.IsBold = True

# Установите ширину столбцов и высоту строк

worksheet.AllocatedRange.ColumnWidth = 10

worksheet.AllocatedRange.RowHeight = 15

Полный код для экспорта данных из базы данных в Excel с помощью Python выглядит следующим образом:

from spire.xls import *

from spire.xls.common import *

import mysql.connector

# Установите соединение с базой данных MySQL

connection = mysql.connector.connect(

host="localhost",

user="root",

password="admin",

database="excel_db"

)

# Создайте объект курсора

cursor = connection.cursor()

# Получите имена столбцов

cursor.execute("SHOW COLUMNS FROM office_cost")

column_names = [column[0] for column in cursor.fetchall()]

# Получите данные

cursor.execute("SELECT * FROM office_cost")

data = cursor.fetchall()

# Создайте объект Workbook

workbook = Workbook()

# Удалите стандартные таблицы

workbook.Worksheets.Clear()

# Добавьте таблицу и назовите ее

worksheet = workbook.Worksheets.Add("FromDatabase")

# Запишите имена столбцов в таблицу Excel

for col_index, column_name inenumerate(column_names, start=1):

worksheet.SetValue(1, col_index, column_name)

# Запишите данные в таблицу Excel

for row_index, row inenumerate(data, start=2):

for col_index, value inenumerate(row, start=1):

worksheet.SetValue(row_index, col_index, str(value))

# Установите ширину столбцов и высоту строк

worksheet.AllocatedRange.ColumnWidth = 10

worksheet.SetColumnWidth(2, 15)

worksheet.AllocatedRange.RowHeight = 15

# Установите выравнивание

worksheet.AllocatedRange.HorizontalAlignment = HorizontalAlignType.Left

# Установите стиль шрифта

worksheet.Rows[0].Style.Font.IsBold = True

# Сохраните рабочую книгу в файл Excel

workbook.SaveToFile("output/DatabaseToExcel.xlsx")

# Закройте курсор и соединение с базой данных

cursor.close()

connection.close()

Как экспортировать данные из базы данных в Excel с помощью Python

Вывод:

В этой статье мы прошли процесс экспорта данных из базы данных MySQL в файл Excel с помощью Spire.XLS для Python. Мы начали с настройки среды, включая установку Python, необходимых библиотек и MySQL. Затем мы рассмотрели подключение к базе данных, извлечение данных и запись их в рабочую книгу Excel. Наконец, мы обсудили настройку вывода для улучшения читаемости. Следуя этим шагам, вы можете упростить процесс экспорта данных с помощью Python.

Показать полностью 1
Python Microsoft Excel Длиннопост
3
6
DanilDark
DanilDark

Психологи стоят дорого, поэтому я написал своего "цифрового бро" на Python⁠⁠

2 дня назад

Всем привет! Я разработчик/маркетолог, и я зае... устал.

Устал от того, что к концу недели кажется, будто я ничего полезного не сделал. Знакомо чувство, когда в пятницу вечером сидишь такой: «Вроде пахал как лошадь, а по факту пустота»?

Это классический синдром самозванца. Баг мышления, когда ты списываешь свои успехи на удачу («просто повезло», «клиент добрый попался»), а любые косяки считаешь доказательством своей профнепригодности.

В какой-то момент мне надоело кормить психологов и ныть друзьям (у них своих проблем хватает). Я решил: я ж программист! Если мозг не хочет запоминать хорошее, я заставлю его это делать с помощью кода.

Так родился «Бадди» - мой карманный цифровой бро, который не дает мне скатиться в депрессию. Рассказываю, как это работает и что там под капотом.

В чем, собственно, проблема?

Проблема в памяти. Самозванец (тот самый внутренний голос) работает как фильтр: он пропускает весь негатив, а позитив отбрасывает.
Попытка рассказать друзьям о работе обычно заканчивается ничем. Для них твой сложный деплой или хитрая рекламная кампания выглядят как магия. Они кивают: «Ну, молодец», и разговор уходит в другую сторону.

А начальник, который хвалит просто так - это вообще зверь из Красной книги.

В итоге:

  1. Работа сделана.

  2. Дофамина нет.

  3. Самооценка падает.

  4. Повторить.

Как я это решил (Функционал)

Я не хотел делать очередного «успешного бота» с цитатами Джейсона Стэтхема. Мне нужен был инструмент, который работает с фактами.

1. Принудительный сбор побед
Память у меня как у рыбки. Поэтому бот каждый вечер в 21:00 деликатно стучится в личку: "Эй, бро, запиши хоть одну мелочь, которую ты сегодня сделал".
Не обязательно "спас мир". Достаточно "пофиксил баг, который бесил неделю" или "не убил заказчика, который просил поиграть со шрифтами".

2. Еженедельный отчет (чтобы офигеть)
В воскресенье бот присылает AI-саммари за неделю. И вот тут случается магия. Ты читаешь и думаешь: "Ого, я реально столько всего разгреб?". Это лучшее лекарство от ощущения бесполезности.

По факту

По факту

3. Режим «Вентилятор» (или «Поорать в ведро»)
Иногда советы не нужны. Нужно просто выплеснуть яд.
Я сделал режим, где можно материться, жаловаться на тупых клиентов, на погоду, на код. Бот всё это слушает (как бармен), поддакивает, а потом предлагает ритуал сожжения.
Ты нажимаешь кнопку, и бот пишет: "Я всё услышал, я всё понял. Давай это уничтожим". И удаляет переписку. Психологически работает на ура как будто реально выговорился и смыл негатив.

Накидываем на вентилятор

Накидываем на вентилятор

4. Киллер-фича: RAG (или «Я помню всё»)
Обычный ChatGPT забывает контекст. Мой бот - нет.
Я прикрутил RAG (Retrieval-Augmented Generation). Бот лезет в базу твоих же записанных побед.

Как это выглядит:
— Я: Всё тлен, я плохой специалист, ничего не умею.
— Бот: Так, стоп. Ты же во вторник сам писал, что снизил цену лида в два раза через A/B тест. И в четверг закрыл сложный таск по API. Плохие спецы так не умеют. Вот факты, не ной.

Он бьет самозванца его же оружием - фактами, про которые ты сам забыл.

Иногда притворяется пиратом, если попросить

Иногда притворяется пиратом, если попросить


Немного про технику

Никакого рокет-саенса, всё по классике, чтобы работало быстро и бесплатно (пока):

  • Язык: Python

  • Библиотека: aiogram 3.x (асинхронность - наше всё).

  • Мозги: Google Gemini (Flash модель - быстрая, дешевая и на удивление адекватная в поддержке диалога).

  • База: SQLite + aiosqlite (для пет-проекта хватает за глаза).

  • Векторный поиск: простая реализация, чтобы искать матчи по контексту прошлых записей.

Итог

Пользуюсь сам, подсадил пару знакомых фрилансеров. Эффект есть: уровень тревожности снизился, а синдром самозванца теперь душит не каждый день, а только по праздникам.

Главный инсайт: если ты сам себя не похвалишь - никто не похвалит. А если забываешь хвалить - делегируй это нейронке.

Если кому-то тоже нужен такой цифровой бро, чтобы не сойти с ума в дедлайнах - велкам. Денег не прошу, рекламу не показываю, просто делюсь инструментом.

Ссылка на бота: Тык
(Если ссылка не открывается, ищите в поиске ТГ: @noneimposter_bot)

Пишите в комменты, какие фичи еще добавить, чтобы окончательно добить депрессию? 👇

Показать полностью 4
[моё] Python Telegram бот Программирование Психология Синдром самозванца Личное Длиннопост
0
26
Udav817

Ответ на пост «Укус питона»⁠⁠1

4 дня назад

Скорее вот так

Ответ на пост «Укус питона»
[моё] Комиксы Юмор Python Питон Гарри Поттер Властелин колец Паук Ответ на пост
6
5
ChtoToTamNik
ChtoToTamNik
ИТ-проекты пикабушников

Logistics_Analyzer "Что если?" и новые функции программы⁠⁠

4 дня назад

В старых постах:

  1. Разработка своей программы, суровые реальности и как такое продавать?

  2. Logistics_Analyzer виджет панель и как она работает

    Я уже немного рассказал о процессе разработки и функциях программы. Теперь покажу, что удалось улучшить за неделю, и расскажу об отдельной функции "Что если?".

Рассмотрим развитую розничную сеть: в каждом регионе — 10 магазинов и 1 склад. Ключевые особенности текущей операционной модели:

  • Доставка до клиента организована на уровне магазинов (не склада).

  • Товарная матрица жёстко фиксирована: перемещение ассортимента между точками возможно только в рамках допустимых категорий (например, нельзя заменить «Телефоны» на «Хлеб» при перераспределении).

  • Доступны фактические данные по:

    • продажам (с доставкой / без),

    • остаткам на точках,

    • SKU-уровню заказов с доставкой (включая адреса и объёмы).

На основе этих данных можно реализовать следующие аналитические и управленческие модули:

  1. Определение зон покрытия магазинов
    По адресам доставок (без привязки к квартирам) и частоте заказов за период (например, за год) строится геопространственная область — зоны ответственности каждого магазина. Границы определяются экстремальными точками доставок.

  2. ABC-анализ по SKU на уровне точки
    На основе фактических продаж формируется структура ассортимента: приоритетные, средние и низколиквидные SKU — с учётом оборачиваемости и вклада в выручку.

  3. Моделирование альтернативного размещения при закрытии точки
    Сопоставление товарных матриц, зон покрытия и ABC-профилей позволяет идентифицировать подходящие точки-реципиенты для перераспределения остатков — с минимальными логистическими и коммерческими потерями.

  4. Планирование перераспределения
    Комбинируя:

    • текущие остатки (на отправляющей точке),

    • лимиты хранения и нормативы по категориям (на принимающих точках),

    • совместимость товарных матриц,

    • пересечения зон покрытия и клиентской базы,
      формируется оптимальный план перемещения запасов — как при частичной реорганизации сети, так и при полном закрытии объекта.

Пример конфигурации:
Объект А характеризуется своей зоной покрытия и текущими остатками. Объекты Б, В, Г и др. — собственными остатками, ограничениями хранения по категориям, продажной динамикой и клиентскими зонами. Система оценивает все взаимодействия и предлагает планы по перераспределению товаров (Зон ожидается в будущем)

Пример созданный вручную по зонам доставки и расположению объектов.

Пример созданный вручную по зонам доставки и расположению объектов.

Компания Х решила закрыть объект А. Теперь нужно оценить, как это повлияет на:

- остатки товаров в других магазинах и на складе;

- зоны доставки других магазинов;

- среднее время доставки клиентам и стоимость перераспределения товарных остатков.

На основе этого анализа мы составим техническое задание для программы. Вот его основные пункты:

1. Определить регион, в котором находится объект А.

2. Выяснить фактические остатки товаров на этом объекте.

3. Найти ближайшие объекты с аналогичной товарной матрицей.

4. Провести ABC-анализ товаров на всех объектах за последний год.

5. Разработать план перераспределения товаров. Учитывать информацию из пунктов 1–3, а также средние затраты на перевозку одного кубического метра (задается при создании региона). Рассчитать оптимальное перераспределение.

Предложенная логика в целом корректна, однако в текущей реализации не учитывается стоимость доставки как функция пройденного расстояния или объёма груза.

Например, можно оперировать не стоимостью за километр, а средней себестоимостью перевозки на единицу объёма — скажем, при известных затратах в 1,5 млн ₽ на перевозку 160 м³ получаем удельную стоимость ~9,4 тыс. ₽/м³. (Цифра условная и приведена для иллюстрации.)

Более гибкий и масштабируемый подход — задать набор типов транспорта («траков») с атрибутами: тип маршрута, грузоподъёмность, объём и соответствующая средняя стоимость перевозки. Это позволит учитывать различия в логистике более точно.

С учётом этого, скорректирую модель и вернусь к дальнейшей проработке.

Программа, следуя установленным правилам, рассчитывает оптимальное размещение товаров. Если отключить АВС-анализ, она будет учитывать только остатки, местоположение и матрицу.

Ниже приведу пример работы данного функционала, данные заглушка и программа не может правильно разместить товары, поэтому все = 0.


P.S. Сейчас создание достоверных данных не является приоритетом.

Окно фактических остатков

Окно фактических остатков

Окно ближайших объектов в регионе состоящий из магазинов с доступным хранением.

Окно ближайших объектов в регионе состоящий из магазинов с доступным хранением.

План перераспределения остатков.

План перераспределения остатков.

Да, так как и писал - данные тестовые и в самом деле в регионе нет аналогичных матриц

Аналогично скрину выше, не нашли куда перевозить, доставка = 0.


И теперь основной вопрос "А что будет с доставкой? Как сильно закрытие повлияет на SLA по скорости?". Данный расчет сейчас является приоритетной доработкой которой я занимаюсь.
Логика которая мною вкладывает в анализ - следующая:

  1. Смотреть на расстояние различных точек на карте

  2. Делить действующую зону на кластеры

  3. Определить оптимальные объекты по времени которые находятся рядом

  4. Сделать ренден всех 3-ех пунктов и показывать изменения в зонировании доставки с отчетом об изменении среднего времени и какие районы слишком далеко.

Для инфраструктуры это очень важный фактор, от которого зависит многое. Так же этот фактор должен работать и при открытии нового объекта. Но сейчас такой функционал не реализован


Функция выбора источника данных для программы и совместная работа с одним исполняемым файлом.

В параллели с влиянием на регион, мне удалось внести не большую доработку в систему. Теперь пользователи могут выбирать исполняемый файл.

Окно выбора исполняемой БД на SQLite 3

Окно выбора исполняемой БД на SQLite 3

2 пользователя работают с одним исполняемым файлом, вносят корректировки, строят дашборды, удаляют или дополняют данными программу. Но как копии приложения узнать что внесены изменения в хранилище? Для этого было реализовано metadata таблица. исполняемое приложение запускается, запоминает метаданные времени БД и проверяет обновления, в случае изменения метаданных моментально сигнализирует о том что необходимо обновить данные.

Если выбрать "Позже" то обновление данных будет отложено на 30 секунд.

Если выбрать "Позже" то обновление данных будет отложено на 30 секунд.

В рамках подготовки программы к первому тестированию на живых данных в нашей компании была реализована функция "Отправить отчет об ошибке".

Окно ввода сообщения для описания проблемы

Окно ввода сообщения для описания проблемы

После отправки - логи приходят ко мне в ТГ через бота. Все логи запаковываются в zip архив, параллельно запускает процесс удаления логов из папки.

Информирования о проблеме у определенного пользователя.

Информирования о проблеме у определенного пользователя.


Почему я быстрее реализовал совместный доступ и отправку логов, вместо того что бы наполнить данными и показать на примере где все логично? Наверное потому что лень тратить много времени на создание данных, а потом их дополнять и править. Программа не окончательная, система хранения меняется. Например сейчас я понял что стоимость доставки и распределения товара можно завязать на типы траков - буду реализовывать и менять хранение. Менее затратно по времени дописать скрипт, чем создавать новую логику в 1000 строк данных.


Всем спасибо за то что дочитали.

Если есть желание предоставить тестовые данные с логикой - буду очень рад, поможет при тестировании. Шаблон данных могу предоставить.

Показать полностью 9
Python Автоматизация Программа Проект IT Логистика Длиннопост
0
896
DDarrell
DDarrell
Комиксы

Укус питона⁠⁠1

5 дней назад
Укус питона
Комиксы Юмор Человек-паук Python Программирование Питон IT юмор
50
2
Вопрос из ленты «Эксперты»
tedzukarin
Лига программистов

Ошибка при получении метаданных из гугл таблицы⁠⁠

5 дней назад

Понимаю, что пикабушечка не стэковерфлоу, но может тут я быстрее получу совет. Заранее извиняюсь, если мой пост окажется глупым или раздражающим. Я не профессиональный программист, пишу больше для себя. Поиск по гуглу и общение с ИИ не дал результатов.

У меня есть две функции:

import gspread

import pandas as pd

.

def authorization():

....json_keyfile = "451208-af95638d0bdf.json"

....scope = ['https://spreadsheets.google.com/feeds',

'https://www.googleapis.com/auth/drive']

....credentials = ....ServiceAccountCredentials.from_json_keyfile_name(json_keyfile, scope)

....gc = gspread.authorize(credentials)

....return gc

.

def get_df(gc, table_name, sheet_name, columns_name_index=0):

....spreadsheet = gc.open(table_name)

....worksheet = spreadsheet.worksheet(sheet_name)

....data = worksheet.get_all_values()

....df = pd.DataFrame(data[columns_name_index+1:], ....columns=data[columns_name_index])

....return df, worksheet

Они выполняются таким вызовом:

auth = authorization()

df_change_price, change_renta_sheet = get_df(auth, 'Рентабельность', 'Изменения Ренты', columns_name_index=0)

Собственно в чём проблема. Данный кусок скрипта крутился на сервере с февраля 2025 года. Выполняется пару раз в день. Всё работало исправно. Но неделю назад при чтении метаданных:

spreadsheet = gc.open(table_name)

я стал получать ошибку: 'Connection broken: IncompleteRead(6429 bytes read, 3811 more expected)'. Число байт в ошибке меняется, но примерно остаётся таким же

Этот же самый скрипт с моих локальных компьютеров выполняется без ошибки. Есть ещё факторы, которые меня ставят в тупик. На этом же сервере есть второй модуль программы, который обращается к этой же таблице раз в несколько часов. Вызов функций ровно такой же, окружение то же самое и таблица открывается без проблем.

В основном скрипте множество таблиц и все они открываются без ошибок, проблема только с конкретно этой. Так же мы пробовали сделать полную копию таблицы "Рентабельность", и она снова не открылась, сделали промежуточную (надёргали нужные столбцы и проставили зависимости) и она открывается. Даже не представляю что можно сделать.

Показать полностью
[моё] Google Таблицы Программирование Разработка Python Вопрос Спроси Пикабу Текст
4
9
empenoso
empenoso
Лига Инвесторов

Технический анализ — это казино для тех, кто не понимает математику риска⁠⁠

5 дней назад

Мне недавно порекомендовали книгу Гэри Нордена «Технический анализ и активный трейдер» (Gary Norden - Technical Analysis & The Active Trader) которая разносит в пух и прах идею теханализа. На русском эта книга никогда не издавалась, но мне попал в руки автоперевод. Мысли в книге мне показались необычными. В этой заметке хочу рассказать о них.

Технический анализ — это казино для тех, кто не понимает математику риска

Индустрия иллюзий вместо науки

Одна из главных претензий книги к инфобизнесу или к инфоцыганству, построенному вокруг технического анализа. По мнению автора, популярность линий поддержки, «головы и плеч» и скользящих средних объясняется не их эффективностью, а простотой продажи такой идеи. Это визуально красиво и понятно даже новичку. Курсы продают иллюзию контроля и науки там, где в реальности — маркетинг и манипуляция ожиданиями.

Автор особенно критикует бэктесты и результаты на истории. В реальности их уничтожают комиссии, проскальзывания и изменившаяся структура рынка. То, что выглядит как стройная система, на практике превращается в путь к серии маленьких убытков и редких, но разрушительных ошибок.

Психология важнее графиков

Автор опирается на поведенческие финансы и работы Канемана и Талеба. Его тезис прост: технический анализ работает не потому, что он описывает рынок, а потому что он описывает психологию трейдеров.

Мы видим паттерны из‑за иллюзии контроля. Мы подтверждаем свои идеи из‑за когнитивных искажений. И верим в уровни — и поэтому цена иногда действительно от них «отскакивает». Но это не закон рынка, а эффект толпы. И он краткосрочен.

Важный вывод автора: чтобы торговать лучше, нужно не заучивать фигуры, а уметь распознавать собственные психологические ловушки — неприятие потерь, якорение, предвзятость подтверждения.

Как торгуют «умные деньги»

Любопытно в книге и описание разницы между розничным и институциональным подходом. Банки и маркет‑мейкеры не ищут поддержку или сопротивления. Они работают с потоком ордеров, ликвидностью, волатильностью и фундаментальными причинами движения цены.

Норден сравнивает их с казино или букмекерами. Они не угадывают направление — они зарабатывают на спреде и обороте, снижая риск, а не увеличивая его. Это принципиально другой взгляд на торговлю: не «ставка на исход», а математика вероятностей и управление потоком.

Миф о надёжности паттернов

Автор ссылается на академические исследования, показывающие, что классические фигуры работают на уровне случайности — а иногда хуже. Более того, рынок по‑разному ведёт себя на росте и на падении, и применение одинаковых инструментов в обе стороны — методологическая ошибка.

График — это лишь тень прошлого. Он не показывает главное: кто покупал и почему. Без этого любая линия — самообман.

Вместо индикаторов — контекст и вероятности

Однако во второй части книги автор Гэри Норден не просто критикует, а даёт альтернативу.

Он предлагает смотреть не на то, что было, а на то, что уже заложено в цену. Ожидания рынка важнее новостей. Если все ждут хорошего отчёта, цена растёт заранее. Даже хорошие новости потом дают слабый рост — или падение при малейшем разочаровании.

Автор учит мыслить в терминах сценариев и математического ожидания: оценивать вероятности, потенциальную прибыль и риск. Это не угадывание направления, а поиск асимметрии — ситуаций, где возможный выигрыш значительно больше возможного убытка.

Межрыночная логика против «туннельного зрения»

Отдельно автор подчёркивает важность рынка облигаций. По его мнению, игнорировать их доходности и кривые — это слепота. Если акции растут на эйфории, а облигации сигналят о рисках, — «умные деньги» уже настороже.

Книга постоянно возвращает читателя к одной мысли: рынок — это система взаимосвязанных сигналов, а не картинка со свечами.

Риск-менеджмент без самообмана

Норден критикует и стандартные методы постановки стопов «по волатильности» или индикаторам. Прошлое не даёт гарантии будущего.

Он предлагает обратную логику: стоп‑лосс настраивается от цели по прибыли. Если потенциальная прибыль 7%, стоп в 5% — абсурд. Это отрицательная математика. Управление риском — это не защита эго, а защита капитала.

Итог

«Технический анализ и активный трейдер» — это не книга про быстрые деньги. А ещё книга разочарует тех, кто ищет простой рецепт. Но составит задуматься тех, кто устал терять деньги по «проверенным стратегиям» и готов увидеть рынок без розовых очков.

Книга для трейдеров, которые готовы отказаться от магии линий и начать думать как аналитик, а не как игрок.

Автор: Михаил Шардин
🔗 Моя онлайн‑визитка
📢 Telegram «Умный Дом Инвестора»

9 декабря 2025

Показать полностью
[моё] Финансы Python Длиннопост
2
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии