парсинг вк, промокод и отзывы сервиса
Коротко о функциях
Настройка пасинга
Быстро находите целевые группы. Указывайте ключевое слово и получайте список подходящих сообществ и личных профилей. Ограничивайте выборку по географическому положению. Отфильтровывайте найденные страницы по активности, дате последнего поста, возрасту и полу фолловеров. Скачивайте контакты администраторов. Подбирайте посты в группах по ключевым фразам, находите топ публикации по наибольшей активности под ними. Улучшайте эффективность рекламы. Собирайте целевую аудиторию в группах, мероприятиях, обсуждениях, опросах, фотоальбомах, на личных страницах, под постами, видео и товарами. Выгружайте данные тех, кто лайкал, комментировал или репостил данную информацию из программы Церебро. Находите топ читателей и комментаторов указанной группы. Узнавайте, что публикует выбранная аудитория, в каких сообществах состоит, находите их родственников, профили в Инстаграм и информацию о днях рождениях. Очищайте собранные списки от дублей и фильтруйте профили по полу, возрасту, геолокации и семейному положению. Преобразовывайте ID в текст или ссылки и наоборот.
* Сервис постоянно обновляется, смотрите актуальную информацию на сайте разработчиков
Сомневаетесь
в выборе сервиса?
Напишите в чат. И мы подберем идеальное решение для Вас абсолютно бесплатно
Связь со специалистом
Отзывы
FAQ по Церебро
Читайте и оставляйте отзывы . И да, оставляя комментарии.
Вы нарабатываете репутацию и привлекаете к себе клиентов.
Написать отзыв
Сортировать по:Обновлению
- Оценкам
- Популярности
- Обновлению
Сортировать по: Оценкам Популярности Обновлению
Найдите ответ на Ваш вопрос через поиск. Либо задайте его и наши эксперты или участники портала ответят Вам.
Кстати, за Ваши активности, Вы повышаете свой рейтинг (подробнее об этом в правилах).
Задать вопрос
Статьи на тему Парсинг в ВК
Маркетинг
ТОП-7 парсеров для Одноклассники + сбор аудитории
Парсер групп в одноклассниках — мощный инструмент, который помогает точно выбрать людей, подходящих под Вашу целевую аудиторию. В статье лучшие программы и разбор парсера.
Евгения Артамонова
Сервисы
Пеппер ниндзя: WOW-обзор сервиса + разбор возможностей
Pepper. Ninja — настоящий гигант рынка парсеров, а его огромный функционал просто взрывает мозг. Расскажу, как им пользоваться, какой тариф выбрать, еще рассмотрю плюсы и минусы.
Анна Кривоногова
Маркетинг, Сервисы
Парсер Инстаграм: 15 лучших сервисов + обзор функций
Если Вы ищите лучший парсер Инстаграм, то добро пожаловать в статью. В ней я расскажу основные характеристики парсеров, особенности каждого и тарифные планы.
Анна Кривоногова
Маркетинг, Сервисы
Парсер Вконтакте: обзор ТОПовых сервисов с примерами
Парсер во Вконтакте нужен каждому, чтобы найти «своих» потенциальных клиентов среди огромной аудитории соц. сети и не сливать бюджет в трубу. В статье лучшие сервисы с примерами.
Иван Чернышев
Категории сервиса
Парсер контактов в ВК
Парсер групп в ВК
Парсер ID в ВК
Парсер постов в ВК
Подписаться на еженедельную рассылку In-scale
Куда отправлять наши чудо-материалы?
Войти или создать аккаунт
Войдите через соцсеть или почту, чтобы оставлять отзывы, рекламировать себя и формировать избранное.
Забыли пароль?
Вход в аккаунт
Кейсы Церебро Таргет ВК: подробная инструкция →
Кейсы Церебро – это набор инструментов, направленных на сбор и сортировку аудитории Вконтакте. Также в церебро присутствуют параметры для подбора аудитории в других социальных сетях, таких как: Instagram, Twitter, Facebook и других. Кто заинтересовался более подробной общей информацией о данной программе, может прочитать нашу статью про Церебро Таргет.
Оглавление:
- Примеры кейсов
- Поиск сообществ
- Поиск аудитории по сообществам
- Поиск аудитории по профилю пользователя
- Объединение аудитории
- Создание рекламной кампании
Примеры кейсов
Настраивая таргетированную рекламу для наших клиентов, мы периодически используем кейсы Церебро. В данной статье мы продемонстрируем поэтапно, как правильно применять инструменты церебро для сортировки аудитории и создания рекламной кампании Вконтакте, с подробным описанием каждого шага и скриншотами, на примере сбора целевой аудитории для рекламной кампании Михаила Хазина. Поэтому, после прочтения данной статьи у вас не должно остаться вопросов на тему того, как пользоваться Церебро.
Поиск сообществ
Для начала, нам необходимо подобрать сообщества, в которых находится целевая аудитория Михаила Хазина. Мы выбираем раздел «Сообщества». В данном разделе применяем инструмент «Поиск сообществ». Далее, вводим ключевые слова, по которым произойдет отсортировка необходимых нам групп. В нашем случае – это «Михаил Хазин». Выбираем страну и город (в случае необходимости), по которым будет происходить поиск сообществ. Так же отфильтровываем список по количеству подписчиков.
Поиск сообществ в Церебро Таргет
Далее, нажимаем «Поиск». Вследствие чего, получаем результат в виде сообществ, в которых находится аудитория, интересующаяся Михаилом Хазиным. Далее, необходимо определить, не устаревшие ли данные сообщества. Следовательно, выбираем опцию «Найти даты последнего поста». И по датам последних постов в данных сообществах, самостоятельно производим отбор. Разумеется, необходимо убедиться в том, что сообщества действительно соответствуют выбранной вами тематике или объекту. Поэтому рекомендуем зайти на страницу каждого из них и просмотреть насколько они актуальны.
Сохранение сообществ в Церебро Таргет
Затем отсеяв все лишние группы из списка, сохраняем полученную базу, выбрав опцию «Сохранить ссылки». Предварительно, для удобства, рекомендуем создать отдельную папку на компьютере по данной тематике. Сохраняем информацию в данную папку, именуя понятным для себя образом «Хазин Сообщества».
Поиск аудитории по сообществам
Теперь, когда у нас есть база сообществ, приступим к поиску нашей аудитории. Для этого нам необходимо зайти в раздел «Аудитория сообществ» и выбрать инструмент «Участники». Затем мы добавляем наши отсортированные сообщества, по которым будет происходить поиск аудитории. Для этого нажимаем на кнопку «Выбрать файл».
Поиск аудитории в Церебро Таргет
Следовательно, открывается ваш проводник, заходим в созданную вами папку, в ней выбираем спарсенные (парсить — проводить сбор данных в интернете) вами группы. В нашем случае это «Хазин Сообщества». После загрузки списка групп нажимаем старт. В результате получаем всю аудиторию, находящуюся в данных сообществах. Затем, совершаем аналогичные действия по сохранению файла, выбрав «Сохранить id в txt файл».
Сохранение аудитории в Церебро Таргет
Поиск аудитории по профилю пользователя
В нашем случае личность, для которой создается рекламная кампания, является медийной. Поэтому, скорее всего, большинство подписчиков данного пользователя будут также являться целевой аудиторией. Заходим в раздел «Профили пользователей» и выбираем инструмент «Друзья и подписчики». Далее, вставляем ссылку страницы пользователя, в нашем случае «Михаил Хазин» и нажимаем «Искать». Следовательно, получаем результат в виде всех друзей и подписчиков данного пользователя, и затем сохраняем данную базу.
Поиск друзей пользователя в Церебро Таргет
Сохранение друзей пользователя в Церебро Таргет
Объединение аудитории
Для того, чтобы вам было легче создать рекламную кампанию из подобранной аудитории, правильнее всего будет сгенерировать её в один файл. Для этого заходим в раздел «Фильтр баз» и выбираем инструмент «Пересечение аудитории». Нажимаем «Загрузить базу 1», выбираем первую сохраненную базу. Далее, нажимаем «Загрузить базу 2» и выбираем вторую сохраненную базу. Для объединения выбранных баз в одну, нажимаем на кнопку «Старт». Затем сохраняем готовую единую базу целевой аудитории.
Загрузка баз аудитории в Церебро Таргет
Объединение баз загруженной аудитории в Церебро Таргет
Создание рекламной кампании
Заключительный шаг – это загрузка сгенерированной базы в ваш рекламный кабинет для создания рекламной кампании. Заходим в рекламную кампанию. Далее, в меню выбираем раздел «Ретаргетинг». Нажимаем на опцию «Создать аудиторию». Затем выбираем «Загрузить из файла», следовательно, загружаем спарсенную аудиторию через Церебро. И пишем название для данной аудитории. Вследствие чего, у вас в кабинете появляется загруженная вами аудитория.
Создание рекламной кампании вк
Периодически созданная аудитория формируется в рекламном кабинете не сразу. Если у вас так случилось, следует подождать 30-40 минут. Затем нажимаете «Создать объявление». После чего, вы оказываетесь на странице выбора блоков для создания вашего рекламного объявления. На данной странице вы выбираете подходящий для вас вариант создания объявления и создаете его. Разумеется, аудиторию уже подбирать не нужно, поскольку она была загружена вами в заданные параметры.
Загрузка базы целевой аудитории из Церебро Таргет
Заключение
В данной статье мы продемонстрировали работу ряда инструментов для поиска и подбора аудитории. Безусловно, в Церебро присутствует множество параметров, помимо вышеперечисленных. Примеры:
- вовлечение;
- промопосты;
- фотоальбомы;
- опросы;
- поиск по стене;
- популярные посты;
- активности;
- обсуждения;
- поиск по базе;
- аналитика;
- и так далее.
Но принцип работы с данными инструментами полностью аналогичен нашему описанному примеру. Поэтому теперь вы в состоянии самостоятельно произвести подбор и фильтрацию необходимой вам целевой аудитории, и грамотно настроить рекламную кампанию. Желаем вам удачи в настройке таргетированной рекламы. Если у вас остались вопросы, задавайте их в комментариях. Мы постараемся максимально подробно ответить на каждый вопрос. Для нас будет очень важно узнать ваше мнение о данной статье.
#Обзоры
Анализаторы— Backtrader
Будь то тестирование на истории или торговля, возможность анализировать производительность торговая система является ключом к пониманию, если не только получена прибыль, но и если это было достигнуто со слишком большим риском или если это действительно стоило усилие по сравнению с эталонным активом (или безрисковым активом)
Здесь на помощь приходит семейство объектов Analyzer
: проведите анализ
того, что произошло, или даже того, что происходит на самом деле.
Характер анализаторов
Интерфейс смоделирован по образцу объектов Lines , например, следующий метод
, но есть большая разница:
Расположение в экосистеме
Объекты Analyzer
(например, стратегии , наблюдатели и данные ) добавлены в
система через cerebro
instance:
-
addanalyzer(ancls, *args, **kwargs)
Но при работе во время cerebro.
произойдет следующее
для каждой стратегии присутствующей в системе run
Это означает:
- Если прогон ретроспективного тестирования содержит, например, 3 стратегии , затем 3
экземпляры из
и
будут созданы и каждый из них будет прикреплен к другой стратегии.
Итог: анализатор анализирует эффективность одной стратегии и не производительность всей системы
Дополнительное местоположение
Некоторые объекты Analyzer
могут фактически использовать другие анализаторы для завершения своей работы.
работа. Например: SharpeRatio
использует вывод TimeReturn
для
расчеты.
Эти вспомогательные анализаторы или подчиненные анализаторы также будут вставлены в тот же стратегия как тот, кто их создает. Но они совершенно незаметны для пользователя.
Атрибуты
Для проведения намеченных работ Анализатор
объектов снабжен некоторыми
атрибуты по умолчанию, которые автоматически передаются и устанавливаются в экземпляре для
простота использования:
self.
strategy
: ссылка на подкласс стратегии, в котором объект анализатора работает. Все, что доступно по стратегии , может также доступ к анализаторусоб.данные[x]
: массив потоков данных, присутствующих в стратегия. Хотя к этому можно было получить доступ через ссылку стратегии , ярлык делает работу более удобной.self.data
: ярлыкself.data[0]
для дополнительного удобства.self.dataX
: ярлыки для различныхself.data[x]
Доступны некоторые другие псевдонимы, хотя они, вероятно, излишни:
* `self.dataX_Y`, где X является ссылкой на `self.data[X]` и `Y` ссылается на строку, наконец указывая на: `self.datas[X].lines[Y]`
Если у линии есть имя, также доступно следующее:
* `self.dataX_Name`, который разрешается в `self.datas[X].Name`, возвращающий строка по имени, а не по индексу
Для первых данных последние два ярлыка доступны без начального X
числовая ссылка. Например:
* `self.data_2` относится к `self.datas[0].lines[2]`
и
* `self.data_close` относится к `self.datas[0].close`
Возврат анализа
Базовый класс анализатора создает self.rets
(типа collections.OrderedDict
) атрибут члена для возврата анализа. Это
делается в методе create_analysis
, который может быть переопределен подклассами, если
создание собственных анализаторов.
Метод работы
Хотя Analyzer
объекты не Строки объектов и поэтому не
перебирать строки, они были разработаны для выполнения одной и той же операции
шаблон.
Создается до того, как система приведена в действие (поэтому вызов
__инициализация__
)Сигнал о начале операций с
start
prenext
/nextstart
/next
будет вызываться после расчетный минимальный период стратегия в которой работает индикатор.По умолчанию
prenext
иnextstart
вызывают следующий, потому что анализатор может анализировать с самого первого момента, когда система жив.Может быть принято вызывать
len(self)
в объектах Lines для проверки фактическое количество баров. Это также работает в анализаторахself.strategy
Заказы и сделки будут уведомлены так же, как и в стратегии через
notify_order
иnotify_trade
Денежные средства и стоимость также будут уведомлены, как это делается со стратегией. по методу
notify_cashvalue
Денежные средства, стоимость, стоимость фонда и акции фонда также будут уведомлены, как есть. сделано со стратегией по методу
notify_fund
остановка
будет вызвана, чтобы сигнализировать об окончании операций
После завершения обычного рабочего цикла анализаторы с дополнительные методы извлечения/вывода информации
get_analysis
: который в идеале (не применяется) возвращаетdict
-подобный объект, содержащий результаты анализа.print
использует стандартный backtrader.WriterFile
(если не изменено) на записать результат анализа изget_analysis
.pprint
( pretty print ) использует модуль Pythonpprint
для печатиget_analysis
результатов.
И наконец:
Шаблоны анализатора
Разработка Analyzer Объекты в платформе backtrader
выявлены
2 различных шаблона использования для генерации анализа:
Во время выполнения путем сбора информации в
notify_xxx
иследующих
методов и генерация текущей информации анализа вследующем
Например,
TradeAnalyzer
использует только методnotify_trade
для формирования статистики.Собрать (или нет) информацию, как указано выше, но сгенерировать анализ в разовый проход на остановке
SQN
( System Quality Number ) собирает торговую информацию во времяnotify_trade
но генерирует статистику во времястоп
метод
Краткий пример
Проще всего:
из __future__ import (absolute_import, Division, print_function, unicode_literals) импорт даты и времени импортировать backtrader как bt импортировать backtrader.analyzers как btanalyzers импортировать backtrader.feeds как btfeeds импортировать backtrader.strategies как btstrats церебро = bt.Cerebro() # данные имя_данных = '../datas/sample/2005-2006-day-001.txt' данные = btfeeds.BacktraderCSVData (имя данных = имя данных) cerebro.adddata(данные) # стратегия cerebro.addstrategy(btstrats.SMA_CrossOver) # Анализатор cerebro.addanalyzer(btanalyzers.SharpeRatio, _name='mysharpe') thestrats = cerebro.run() страты = страты [0] print('Коэффициент Шарпа:', thestrat.analyzers.mysharpe.get_analysis())
Выполнение (сохранение в Analyzer-test.py
:
$ ./анализатор-test.py Коэффициент Шарпа: {'sharpratio': 11,647332609673256}
Графика нет, так как SharpeRatio
— это единственное значение в конце
расчета.
Судебно-медицинская экспертиза анализатора
Повторим, что Анализаторы
не являются объектами Lines, а бесшовно
интегрировать их в экосистему backtrader
, внутренние соглашения API
следуют несколько объектов Lines (фактически смесь из них)
Примечание
Код для SharpeRatio
эволюционировал, чтобы принять, например, в
годовая отчетность, и версия здесь должна быть только
ссылка.
Пожалуйста, проверьте Справочник по анализаторам
Дополнительно имеется SharpeRatio_A
, который предоставляет значение
напрямую в годовом исчислении вне зависимости от искомого таймфрейма
Код для SharpeRatio
для использования в качестве основы (упрощенная версия)
из __future__ import (absolute_import, Division, print_function, unicode_literals) оператор импорта из карты импорта backtrader.utils.py3 из анализатора импорта backtrader, TimeFrame от backtrader.mathsupport средний импорт, стандартная разработка импорт из backtrader.analyzers AnnualReturn класс SharpeRatio (анализатор): params = (('timeframe', TimeFrame.Years), ('безрисковая ставка', 0,01),) защита __init__(сам): супер(Коэффициент резкости, я).__init__() self.anret = годовой доход() деф старт(сам): # Не требуется... но можно использовать проходить определение следующего (я): # Не требуется... но можно использовать проходить деф стоп(сам): retfree = [self.p.riskfreerate] * len(self.anret.rets) retavg = среднее (список (карта (operator.sub, self.anret.rets, retfree))) retdev = стандартное устройство (self.anret.rets) self.ratio = ретавг / ретдев деф get_analysis (я): вернуть dict (sharperatio = self.ratio)
Код можно разбить на:
параметры
декларацияХотя заявленные не используются (имеется в виду для примера), Анализаторы как и большинство других объектов в
, backtrader
поддерживает параметры__init__
методТак же, как Стратегии объявить Индикаторы в
__init__
, то же самое сделать анализаторы с объектами поддержки.В этом случае:
SharpeRatio
рассчитывается с использованием Годовой доход . расчет будет автоматическим и будет доступен дляSharpeRatio
для собственные расчеты.Примечание
Фактическая реализация
SharpeRatio
использует больше общий и позже разработанный анализаторTimeReturn
следующий
методSharpeRatio
не нужен, но этот метод будет вызываться после каждого вызов родительской стратегииследующий
запуск
методВызывается прямо перед началом тестирования. Можно использовать для доп. задачи инициализации. Sharperatio не нужен
стоп
методВызывается сразу после окончания тестирования. Как и
SharpeRatio
, он может использоваться для завершения/вычисленияметод get_analysis
(возвращает словарь)Доступ внешних абонентов к произведенному анализу
Возвращает: словарь с анализом.
Артикул
класс backtrader.Analyzer()
Анализатор базового класса. Все анализаторы являются подклассом этого
Экземпляр Analyzer работает в рамках стратегии и предоставляет анализ этой стратегии.
Автоматически устанавливаемые атрибуты элемента:
self.strategy
(открывает доступ к стратегии и чему угодно доступный из него)self.datas[x]
предоставление доступа к массиву каналов данных, присутствующих в система, к которой также можно было получить доступ через ссылку стратегииself.data
, дающий доступ кself.data[0]
self.dataX
->self.data[X]
self.dataX_Y
->self.datas[X].lines[Y]
self.dataX_name
->self.datas[X].name
self.data_name
->self.datas[0].name
self.
->data_Y
self.datas[0].lines[Y]
Это не объект Lines , но методы и операции аналогичны дизайн
__init__
во время создания экземпляра и начальной настройкипуск
/останов
для подачи сигнала о начале и окончании операцийprenext
/nextstart
/next
семейство следующих методов вызовы одних и тех же методов в стратегииnotify_trade
/notify_order
/notify_cashvalue
/notify_fund
, которые получают те же уведомления, что и эквивалент методы стратегии
Режим работы открытый, предпочтительный шаблон не выбран. Таким образом,
анализ может быть сгенерирован с помощью следующих
вызовов в конце операций
во время остановите
и даже с помощью одного метода, такого как notify_trade
Важно переопределить get_analysis
, чтобы вернуть dict-подобный объект, содержащий результаты анализа (фактический формат
зависит от реализации)
старт()
Вызывается для индикации начала операций, дающих анализатору время настроить необходимые вещи
стоп()
Вызывается для индикации окончания операций, давая анализатору пора закрыть нужные вещи
предследующий()
Вызывается для каждого предварительного вызова стратегии, до минимального срок действия стратегии достигнут
По умолчанию анализатор вызывает следующий
следующий старт()
Вызывается ровно один раз для следующего запуска стратегии, когда минимальный период был впервые достигнут
следующий()
Вызывается при каждом последующем вызове стратегии по истечении мин. преиод стратегии достигнут
notify_cashvalue (деньги, стоимость)
Получает уведомление о деньгах/стоимости перед каждым следующим циклом
notify_fund (денежные средства, стоимость, стоимость фонда, акции)
Получает текущие денежные средства, стоимость, стоимость фонда и акции фонда
notify_order(заказ)
Получает уведомления о заказах перед каждым следующим циклом
notify_trade(торговля)
Получает торговые уведомления перед каждым следующим циклом
get_analysis()
Возвращает dict-подобный объект с результатами анализа
Ключи и формат результатов анализа в словаре не зависит от реализации.
Даже не обязательно, чтобы результатом был dict-подобный объект , просто конвенция
Реализация по умолчанию возвращает OrderedDict по умолчанию rets
создан по умолчанию метод create_analysis
create_analysis()
Предназначен для переопределения подклассами. Дает возможность создать
структуры, в которых проводится анализ.
По умолчанию создается OrderedDict
с именем rets
печать (*аргументы, **кварги)
Печатает результаты, возвращенные get_analysis
через стандартный Объект Writerfile
, который по умолчанию записывает вещи в стандарт
вывод
отпечатков(*args, **kwargs)
Распечатывает результаты, возвращенные get_analysis
, используя красивое
распечатать модуль Python ( pprint )
Поддержка вызова len
на анализаторах путем фактического возврата
текущая длина стратегии, на которой работает анализатор
Справочник по анализаторам — Backtrader
Годовой доход
класс backtrader.analyzers.AnnualReturn()
Этот анализатор вычисляет годовой доход, глядя на начало и конец года
Параметры:
- (Нет)
Атрибуты участника:
get_analysis :
- Возвращает словарь годовой доходности (ключ: год)
Кальмар
класс backtrader.

Этот анализатор вычисляет CalmarRatio таймфрейм, который может отличаться от используемого в базовых данных Параметры:
таймфрейм
(по умолчанию:Нет
) ЕслиNone
, тотаймфрейм
из 1 st данные в системе будут б/уПередайте
TimeFrame.NoTimeFrame
, чтобы рассмотреть весь набор данных без нехватка временисжатие
(по умолчанию:Нет
)Используется только для субдневных таймфреймов, например, для работы на часовом графике. таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
Если
Нет
, то сжатие 1 st данных системы будет б/уНет
фонд
(по умолчанию:Нет
)Если
Нет
, фактический режим работы брокера (fundmode — True/False) будет автоматически определяться, чтобы решить, основана ли доходность на общей чистой стоимости активов или стоимости фонда.См.
set_fundmode
в брокере документацияУстановите значение
True
илиFalse
для определенного поведения
— «get_analysis«()
Возвращает OrderedDict с ключом для периода времени и соответствующий прокатный коэффициент Calmar
— «calmar« последний рассчитанный коэффициент тишины()
Просадка
класс backtrader.analyzers.DrawDown()
Этот анализатор рассчитывает статистику просадок торговой системы, например просадку значения в %s и в долларах, максимальная просадка в %s и в долларах, просадка длина и макс. длина просадки
Параметры:
фонд
(по умолчанию:Нет
)Если
Нет
, фактический режим работы брокера (fundmode — True/False) будет автоматически определяться, чтобы решить, основана ли доходность на общей чистой стоимости активов или стоимости фонда. См.set_fundmode
в брокере документацияУстановите значение
True
илиFalse
для определенного поведения
— «get_analysis«()
Возвращает словарь (с поддержкой нотации . и вложенными словарями) с
статистика просадки как значения, доступны следующие ключи/атрибуты:
просадка
— значение просадки в 0.xx %moneydown
— величина просадки в денежных единицахlen
— длина просадкимакс.просадка
— значение макс.просадки в 0.xx %max.moneydown
— значение максимальной просадки в денежных единицахmax.len
— максимальная длина просадки
TimeDrawDown
класс backtrader.analyzers.TimeDrawDown()
Данный анализатор рассчитывает просадку торговой системы на выбранном таймфрейм, который может отличаться от используемого в базовых данных Параметры:
таймфрейм
(по умолчанию:Нет
) ЕслиНет
тотаймфрейм
из 1 ст данные в системе будут б/уПередайте
TimeFrame.
, чтобы рассмотреть весь набор данных без нехватка времениNoTimeFrame
сжатие
(по умолчанию:Нет
)Используется только для субдневных таймфреймов, например, для работы на часовом графике. таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
Если
Нет
то сжатие 1 ст данные системы будут б/уНет
фонд
(по умолчанию:Нет
)Если
Нет
, фактический режим работы брокера (fundmode — True/False) будет автоматически определяться, чтобы решить, основана ли доходность на общей чистой стоимости активов или стоимости фонда. См.set_fundmode
в брокере документацияУстановите значение
True
илиFalse
для определенного поведения
— «get_analysis«()
Возвращает словарь (с поддержкой нотации . и вложенными словарями) с статистика просадки как значения, доступны следующие ключи/атрибуты:
просадка
— значение просадки в 0.xx %
maxdrawdown
— величина просадки в денежных единицахmaxdrawdownperiod
— длина просадки
— Они доступны во время прогонов как атрибуты()
дд
максдд
максддлен
Валовое кредитное плечо
класс backtrader.analyzers.GrossLeverage()
Этот анализатор вычисляет валовое кредитное плечо текущей стратегии на временной основе
Параметры:
фонд
(по умолчанию:Нет
)Если
Нет
, фактический режим работы брокера (fundmode — True/False) будет автоматически определяться, чтобы решить, основана ли доходность на общей чистой стоимости активов или стоимости фонда. См.set_fundmode
в брокере документацияУстановите значение
True
илиFalse
для определенного поведения
— get_analysis()
Возвращает словарь с возвращаемыми значениями и точками даты и времени для каждый возврат как ключи
ПозицииЗначение
класс backtrader.

Данный анализатор сообщает значение позиций текущего набора данные
Параметры:
- Таймфрейм
(по умолчанию:
Нет
) ЕслиNone
, то временные рамки 1 st данных системы будут б/у сжатие (по умолчанию:
Нет
)Используется только для субдневных таймфреймов, например, для работы на часовом графике. таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
Если
Нет
, то сжатие 1 st данных системы будет б/узаголовков (по умолчанию:
False
)Добавить в словарь начальный ключ, содержащий результаты с именами данных («Datetime» в качестве ключа
наличные (по умолчанию:
False
)Включить фактические денежные средства в качестве дополнительной позиции (для заголовка «наличные» будет использоваться как имя)
— get_analysis()
Возвращает словарь с возвращаемыми значениями и точками даты и времени для каждый возврат как ключи
PyFolio
класс backtrader.

Этот анализатор использует 4 дочерних анализатора для сбора данных и их преобразования
в набор данных, совместимый с pyfolio
Детский анализатор
Возврат времени
Используется для расчета доходности глобальной стоимости портфеля
ПозицииЗначение
Используется для расчета стоимости позиций на данные. Он устанавливает
заголовки
икэш
параметры доTrue
Операции
Используется для записи каждой транзакции по данным (размер, цена, стоимость). Наборы параметр заголовков
на
True
Валовое кредитное плечо
Отслеживает общее кредитное плечо (сколько вложено в стратегию)
Параметры:
Они прозрачно передаются детям
* таймфрейм (по умолчанию: `bt.TimeFrame.Days`)
Если `Нет`, то таймфрейм 1-х данных системы будет
использовал
* сжатие (по умолчанию: 1\`)
Если «Нет», то сжатие первых данных системы будет
использовал
Оба таймфрейма
и сжатие
установлены по умолчанию
поведение pyfolio
, который работает с ежедневными данными и повышает его дискретизацию
чтобы получить такие значения, как годовой доход.
- get_analysis()
Возвращает словарь с возвращаемыми значениями и точками даты и времени для
каждый возврат как ключи
get_pf_items()
Возвращает кортеж из 4 элементов, которые можно использовать для дальнейшей обработки с помощью
. `пифолио`
доходность, позиции, транзакции, валовое плечо
Поскольку объекты предназначены для прямого ввода в pyfolio
этот метод делает локальный импорт панд
для преобразования внутреннего backtrader приводит к pandas DataFrames , что является ожидаемым вводом
например, pyfolio.create_full_tear_sheet
Метод сломается, если pandas
не установлены
ЛогретурнсРоллинг
класс backtrader.analyzers.LogReturnsRolling()
Этот анализатор рассчитывает скользящую доходность для заданного периода времени и
сжатие
Параметры:
таймфрейм
(по умолчанию: Нет
)
Если None
, то таймфрейм
из 1 st данные в системе будут
б/у
Передайте TimeFrame.
NoTimeFrame
, чтобы рассмотреть весь набор данных без
нехватка времени
сжатие
(по умолчанию: Нет
)
Используется только для субдневных таймфреймов, например, для работы на часовом графике.
таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
Если Нет
, то сжатие 1 st данных системы будет
б/у
данные
(по умолчанию: Нет
)
Ссылочный актив для отслеживания вместо стоимости портфеля.
ПРИМЕЧАНИЕ : эти данные должны быть добавлены в экземпляр cerebro
с adddata
, resampledata
или replaydata
firstopen
(по умолчанию: True
)
При отслеживании возврата данных
делается следующее, когда
пересечение границы таймфрейма, например лет
:
- Последнее
закрытие
предыдущего года используется в качестве справочной цены для
увидеть доход в текущем году
Проблема в расчете 1 st , т.
к. в данных** нет
предыдущая** цена закрытия. Как таковой и когда этот параметр равен True
цена открытия будет использоваться для расчета 1 st .
Для этого требуется, чтобы в потоке данных была цена открытия
(для цена закрытия
стандартная нотация [0] будет использоваться без ссылки на поле
цена)
В противном случае будет использовано начальное закрытие.
фонд
(по умолчанию: Нет
)
Если Нет
, фактический режим работы брокера (fundmode - True/False) будет
автоматически определяться, чтобы решить, основана ли доходность на общей чистой
стоимости активов или стоимости фонда. См. set_fundmode
в брокере
документация
Установите значение True
или False
для определенного поведения
- get_analysis()
Возвращает словарь с возвращаемыми значениями и точками даты и времени для
каждый возврат как ключи
класс backtrader.
analyzers.PeriodStats() Вычисляет базовую статистику для заданного таймфрейма
Параметры:
таймфрейм
(по умолчанию: лет
)
Если None
, то таймфрейм
из 1 st данные в системе будут
б/у
Передайте TimeFrame.NoTimeFrame
, чтобы рассмотреть весь набор данных без
нехватка времени
сжатие
(по умолчанию: 1
)
Используется только для субдневных таймфреймов, например, для работы на часовом графике.
таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
Если Нет
, то сжатие 1 st данных системы будет
б/у
фонд
(по умолчанию: Нет
)
Если Нет
, фактический режим работы брокера (fundmode - True/False) будет
автоматически определяться, чтобы решить, основана ли доходность на общей чистой
стоимости активов или стоимости фонда.
См. set_fundmode
в брокере
документация
Установите значение True
или False
для определенного поведения
get_analysis
возвращает словарь, содержащий ключи:
средний
стандартное отклонение
положительный
отрицательный
без изменений
лучший
худший
Если для параметра zeroispos
установлено значение True
, периоды без изменений
будет считаться положительным
Возвращает
класс backtrader.analyzers.Returns()
Общая, средняя, составная и годовая доходность, рассчитанная с использованием
логарифмический подход
См.:
- https://www.crystalbull.
com/sharpe-ratio-better-with-log-returns/
Параметры:
таймфрейм
(по умолчанию: Нет
)
Если Нет
таймфрейм
из 1 ст данные в системе будут
б/у
Передайте TimeFrame.NoTimeFrame
, чтобы рассмотреть весь набор данных без
нехватка времени
сжатие
(по умолчанию: Нет
)
Используется только для субдневных таймфреймов, например, для работы на часовом графике.
таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
Если Нет
, то сжатие 1 st данных системы будет
б/у
tann
(по умолчанию: Нет
)
Количество периодов, используемых для годовой обработки (нормализации)
а именно:
дней: 252
недель: 52
месяцев: 12
лет: 1
фонд
(по умолчанию: Нет
)
Если Нет
, фактический режим работы брокера (fundmode - True/False) будет
автоматически определяться, чтобы решить, основана ли доходность на общей чистой
стоимости активов или стоимости фонда.
См. set_fundmode
в брокере
документация
Установите значение True
или False
для определенного поведения
- get_analysis()
Возвращает словарь с возвратами в виде значений и точками даты и времени для
каждый возврат как ключи
Возвращаемый дикт следующие ключи:
rtot
: Общий составной доход
ravg
: Средняя доходность за весь период (зависит от таймфрейма)
rnorm
: Годовая/нормализованная доходность
rnorm100
: Годовая/нормализованная доходность, выраженная в 100%
Коэффициент резкости
класс backtrader.analyzers.SharpeRatio()
Этот анализатор рассчитывает SharpeRatio стратегии с использованием безрискового
актив, который представляет собой просто процентную ставку
Параметры:
таймфрейм
: (по умолчанию: TimeFrame.
Years
)
сжатие
(по умолчанию: 1
)
Используется только для субдневных таймфреймов, например, для работы на часовом графике.
таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
безрисковая ставка
(по умолчанию: 0,01 -> 1%)
Выражено в годовом выражении (см. конвертировать
ниже)
преобразовать
(по умолчанию: True
)
Преобразование безрисковой ставки
из годовой в месячную, недельную или дневную
ставка. Преобразования субдня не поддерживаются
коэффициент
(по умолчанию: Нет
)
Если Нет
, коэффициент пересчета безрисковой ставки от годовой на выбранный таймфрейм будут выбраны из предопределенной таблицы
Дней: 252, Недель: 52, Месяцев: 12, Лет: 1
В противном случае будет использовано указанное значение
в годовом исчислении
(по умолчанию: False
)
Если convertrate
равно True
, SharpeRatio будет доставлен в
выбранный таймфрейм
.
В большинстве случаев показатель SharpeRatio предоставляется в годовом исчислении.
Преобразовать безрисковая ставка
от годовой до месячной, еженедельной или ежедневной
ставка. Преобразования субдня не поддерживаются
stddev_sample
(по умолчанию: Ложь
)
Если установлено значение True
, будет рассчитано стандартное отклонение уменьшая знаменатель в среднем на 1
. Это используется, когда
вычисление стандартного отклонения , если считается, что не все
образцы используются для расчета. Это известно как Бессельс
исправление
daysfactor
(по умолчанию: Нет
)
Старое название для фактора
. Если установлено любое другое значение, кроме None
и
таймфрейм
- это TimeFrame.Days
, предполагается, что это старый
код и значение будет использоваться
legacyannual
(по умолчанию: False
)
Используйте анализатор возврата AnnualReturn
, который, как следует из названия
работает только на 9 лет0003
фонд
(по умолчанию: Нет
)
Если Нет
, фактический режим работы брокера (fundmode - True/False) будет
автоматически определяться, чтобы решить, основана ли доходность на общей чистой
стоимости активов или стоимости фонда.
См. set_fundmode
в брокере
документация
Установите значение True
или False
для определенного поведения
- get_analysis()
Возвращает словарь с ключом «sharperatio», содержащим соотношение
SharpeRatio_A
класс backtrader.analyzers.SharpeRatio_A()
Расширение SharpeRatio, которое возвращает коэффициент Шарпа непосредственно в
годовая форма
Следующий параметр был изменен с SharpeRatio
-
в годовом исчислении
(по умолчанию: True
)
SQN
класс backtrader.analyzers.SQN()
SQN или SystemQualityNumber. Определен Ван К. Тарпом для классификации трейдинга.
системы.
Формула:
- SquareRoot(NumberTrades) * Average(TradesProfit) / StdDev(TradesProfit)
Значение sqn следует считать достоверным при количестве сделок >= 30
- get_analysis()
Возвращает словарь с ключами sqn и trades (количество
рассматривается торг)
Возврат времени
класс backtrader.
analyzers.TimeReturn() Этот анализатор вычисляет доходность, просматривая начало
и конец периода
Параметры:
таймфрейм
(по умолчанию: Нет
)
Если None
, то таймфрейм
из 1 st данные в системе будут
б/у
Передайте TimeFrame.NoTimeFrame
, чтобы рассмотреть весь набор данных без
нехватка времени
сжатие
(по умолчанию: Нет
)
Используется только для субдневных таймфреймов, например, для работы на часовом графике.
таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
Если Нет
, то сжатие 1 st данных системы будет
б/у
данные
(по умолчанию: Нет
)
Ссылочный актив для отслеживания вместо стоимости портфеля.
ПРИМЕЧАНИЕ : эти данные должны быть добавлены в экземпляр cerebro
с adddata
, resampledata
или replaydata
firstopen
(по умолчанию: Правда
)
При отслеживании возврата данных
делается следующее, когда
пересечение границы таймфрейма, например лет
:
- Последнее
закрытие
предыдущего года используется в качестве справочной цены для
см.
возврат в текущем году
Проблема в расчете 1 st , т.к. в данных** нет
предыдущая** цена закрытия. Как таковой и когда этот параметр равен True
открытие 9Цена 0012 будет использоваться для расчета 1 st .
Для этого требуется, чтобы в потоке данных была цена открытия
(для цена закрытия
стандартная нотация [0] будет использоваться без ссылки на поле
цена)
В противном случае будет использовано начальное закрытие.
фонд
(по умолчанию: Нет
)
Если Нет
, фактический режим работы брокера (fundmode - True/False) будет
автоматически определяться, чтобы решить, основана ли доходность на общей чистой
стоимости активов или стоимости фонда. См. set_fundmode
в брокере
документация
Установите значение True
или False
для определенного поведения
- get_analysis()
Возвращает словарь с возвращаемыми значениями и точками даты и времени для
каждый возврат как ключи
Торговый Анализатор
класс backtrader.
analyzers.TradeAnalyzer() Предоставляет статистику по закрытым сделкам (ведет также количество открытых)
Всего открытых/закрытых сделок
Выигранная серия/Проигрыш/Самая длинная серия
Сумма прибыли и убытка/среднее значение
Выигрыш/Проигрыш/Общий PNL/Средний PNL/Макс. PNL
Длинный/Короткий счет/Общий PNL/Средний PNL/Макс. PNL
- Счетчик выигрышей/проигрышей/Общий PNL/Средний PNL/Макс. PNL
Длина (прутки на рынке)
Итого/Среднее/Макс./Мин.
Сумма выигрышей/проигрышей/Среднее/Макс./Мин.
Длинная/короткая сумма/среднее/макс./мин.
Сумма выигрышей/проигрышей/Среднее/Макс./Мин.
ПРИМЕЧАНИЕ : Анализатор использует «автоматический» ввод для полей, что означает, что если нет
сделки совершаются, статистика не генерируется.
В этом случае в словаре будет одно поле/подполе
вернул get_analysis
, а именно:
- dictname[‘total’][‘total’], который будет иметь значение 0 (поле
также доступен с точечной нотацией dictname.total.total
Операции
класс backtrader.analyzers.Transactions()
Этот анализатор сообщает о транзакциях, совершенных с каждыми данными в
система
Он просматривает биты выполнения ордера, чтобы создать Позицию
, начиная с
0 в течение каждых следующих
циклов.
Результат используется при следующей записи транзакций
Параметры:
заголовков (по умолчанию: True
)
Добавить в словарь начальный ключ, содержащий результаты с именами
данных
Этот анализатор создан для облегчения интеграции с pyfolio
, а имена заголовков взяты из образцов, используемых для
это:
'дата', 'сумма', 'цена', 'sid', 'символ', 'значение'
- get_analysis()
Возвращает словарь с возвращаемыми значениями и точками даты и времени для
каждый возврат как ключи
ВВР
класс backtrader.
analyzers.VWR() Доходность, взвешенная по вариабельности: лучший коэффициент SharpeRatio с логарифмической доходностью
Псевдоним:
- VariabilityWeightedReturn
См.:
- https://www.crystalbull.com/sharpe-ratio-better-with-log-returns/
Параметры:
таймфрейм
(по умолчанию: Нет
)
Если Нет
, то полная доходность за весь проверенный период.
будет сообщено
Передайте TimeFrame.NoTimeFrame
, чтобы рассмотреть весь набор данных без
нехватка времени
сжатие
(по умолчанию: Нет
)
Используется только для субдневных таймфреймов, например, для работы на часовом графике.
таймфрейм, указав «TimeFrame.Minutes» и 60 в качестве сжатия
Если Нет
, то сжатие 1 st данных системы будет
б/у
tann
(по умолчанию: Нет
)
Количество периодов, используемых для годовой пересчета (нормализации)
средняя доходность.