Как тестировать стратегии в tradingview
Автоматизация торговли для нищеброда. Пишем, тестируем и запускаем робота за 5 минут. Подготовка стратегии на Tradingview для парсера+ВИДЕО.
Коллеги, всем добрый вечер!
В рамках данного поста, а далее в видео я расскажу о том как максимально быстро запустить своего первого робота. При этом всё это у Вас займёт не более 5 минут.
Как я уже говорил выше TV предлагает довольно обширный перечень стратегий и индикаторов (см. рисунок ниже). Многие из них ранжированы по классу популярности (количество лайков). Правда слепо доверять данному показателю не стоит.
Далее выкладываю пошаговый алгоритм действий.
1. Перед тем как запустить стратегию в бой, Вы должны убедиться, что она не перерисовывает сигналы.
Сделать на самом деле это несложно.
Самый лёгкий способ — это зайти в описание стратегии и почитать отзывы пользователь. Так как аудитория в основном англоязычная, то появление фраз типа This strategy is repainting должно является для Вас сигналом того, что стратегия представляет не то, за что её выдают.
Второй способ — это тупо залезть в код. Пугаться здесь не нужно даже если Вы не знаете встроенный язык TV. Нас интересует только одна функция security. Если Вы видите, что она обращается к более старшему тайфрейму по сравнению тем на котором Вы работаете, будьте готовы к перерисовке.
Говорить однозначно, что эти стратегии плохие нельзя, но использовать их напрямую мы не можем, для этого их нужно дополнительно редактировать (в данном посте мы это касаться не будем).
2. После того как мы выбрали стратегию и у нас есть понимание, что она не будет перерисовываться, нам нужно её протестировать, задать цвета покупки, продажи и закрытия позиции и указать их программе ParseSignal (в принципе это всё).
Более детальную информацию смотрите в видео.
Автоматический бактестинг стратегии в TradingView с сохранением результатов в CSV
Если вы используете стратегии в трейдингвью, например чтобы быстро накидать прототип идеи из какого нибудь источника и посмотреть её, то у вас наверняка также появлялся вопрос поиска приемлемых параметров и проверка как они влияют на стратегию. Делать это вручную крайне трудозатратно. Простейшая стратегия двух скользящих средних может давать 400 и более вариантов параметров. А любое увеличение кол-ва параметров и диапазона их значений приводит к необходимости перебора значений растущих в геометрической прогрессии. Например стратегия из 5 параметров по 15 значений дает 15 ^ 5 = 759 375 вариантов. Подобрать их руками, когда один вариант вычисляется пару секунд не реально.
А можно ли автоматизировать этот процесс? Ниже описание решения через расширение для браузера на основе Chrome.
В прошлый раз я публиковал статью, в которой говорил об ассистенте для tradingview реализованного как расширение для хрома. Расширение позволяло загрузить внешние сигналы покупки/продажи с метками времени на график. В этом расширении и была реализована дополнительная функциональность для тестирования стратегий.
Небольшое видео с короткими комментариями на английском (расширение для универсальности также сделано на английском).
Что расширение позволяет делать:
Все проверки начинаются с поиска лучшего состояния из текущего значения результатов тестирования стратегии, параметров по умолчанию и лучшего найденного. Логика методов такая.
Случайный метод выбирает случайным образом параметр и случайно определяет его значение из диапазона значений. Если найденное значение соответствует фильтру (или фильтр отключен) и оно лучше чем предыдущее по оптимизируемому параметру, это состояние запоминается и следующий поиск будет осуществляться из него. Случайная комбинации всех параметров не проверяется. Этот метод подойдет если параметров достаточно много и нужно попытаться улучшить текущий результат без их перебора и выйти из «неглубокого» экстремума.
Последовательный метод проходит все параметры по очереди в соответствии с заданным приоритетом. Для каждого параметра осуществляется проверка всех значений. Если при каком-то значение параметра результат лучше, то это состояние и комбинация параметров запоминаются и далее они используются для оптимизации. Метод подойдет для поиска лучшего значений в «окрестности» уже найденной комбинации параметров.
Метод отжига. Реализация его не самая эффективная, так как необходимо было решить противоречивую задачу нахождения чего-нибудь разумного за малое кол-во итераций (1000 итераций в tradingview можно перебрать в лучшем случае за час). Метод работает следующим образом. В основе метода функция температуры — т.е. «остывания» она влияет на случайность. Температура используется в трех условиях влияющих на выбор состояния:
Метод отжига больше подойдет для первичного поиска параметров. Его можно запускать множество раз — он позволяет выйти из локальных экстремумов параметров в которых будут застревать случайный и последовательный метод.
К сожалению моя реализация метода отжига неоптимальна и более того не канонична (метод коши и больцмановские формулы у меня показали плохие результаты на большом количестве параметров) и больше базируется на основе практических соображений. Если есть у кого-то ссылки на материал где рассматривается эффективная оптимизации множества параметров сразу, в т.ч. другими методами не сложными алгоритмически, буду благодарен.
Мои эксперименты с функцией обычной параболы, у которой только один экстремум, при подборе оптимума для неё в многомерном пространстве параметров (т.е. комбинация из 10-15 функций с 10ю значениями параметров это 576 650 390 625 комбинаций), показывают, что метод работает не очень. Иногда и 80% эффективности не показывает от возможного максимума (диапазон результатов обычно 85-95%). Соответственно для сложных функций все конечно будет ещё хуже, хотя он быстрый. Примерный максимум достигается за 1000 шагов и далее от количества циклов почти не улучшается (если «встряска» не выводит из экстремума), но можно перезапустить заново.
Скачать можно из репозитория на github. Прямая ссылка на архив zip.
Как установить, описывал в предыдущей статье. Коротко:
Как создавать индикаторы для технического анализа на TradingView
Введение
Что такое Pine Script?
Настройка
Начать работу с Pine Script очень просто. Весь код, который мы пишем, запускается на серверах TradingView, а мы имеем доступ к редактору кода и можем писать скрипты прямо в браузере – не нужно скачивать сторонние приложения и что-то настраивать.
Ваш график должен быть более актуальным.
Подробный график. В панели над выделенными вкладками вы можете установить желаемые таймфреймы.
Редактор Pine
Теперь рассмотрим следующий пример:
Многие трейдеры используют свечные графики, поскольку последние предоставляют больше информации, чем обычные (например, тот, который мы только что построили). Теперь добавим на график свечи.
Удалите предыдущий график, если еще не сделали этого, и добавьте новый. Теперь у нас должен получиться обычный свечной график.
Построение скользящих средних (MA)
Простая скользящая средняя (SMA)
Мы можем построить SMA, а потом сравнить ее с EMА. Добавьте в скрипт следующую строку:
Эта строка отобразит среднее значение за предыдущие 10 дней. Вы можете задать в скобках разные значения периода и посмотреть, как изменяется кривая.
SMA за предыдущие 10 дней
Экспоненциальная скользящая средняя (EMA)
EMA немного сложнее для понимания, но не беспокойтесь. Сначала разберем формулу:
О чем говорит эта формула? Для каждого дня мы рассчитываем новую скользящую среднюю на основе предыдущей. Множитель – «вес» предыдущего периода, который рассчитывается по следующей формуле:
Как и в случае с простой скользящей средней, нужно указать период построения EMA. По синтаксису функция для EMA аналогична функции SMA. Для наглядности построим график EMA рядом с SMA:
Разница между SMA и EMA
Встроенные скрипты
До сих пор мы писали код вручную, чтобы подробнее в нем разобраться. Но давайте изучим инструмент, который позволит сэкономить нам время, особенно если мы пишем более сложные сценарии и не хотим делать это с нуля.
Добавьте код на график
Построение индикатора индекса относительной силы (RSI)
Тестирование стратегий
Мы можем протестировать наши собственные индикаторы. Несмотря на то, что эффективность на исторических данных не является гарантией будущих результатов, тестирование на них скриптов может дать представление о том, насколько они эффективны для отслеживания сигналов.
Рассмотрим в качестве примера простой скрипт. Создадим простую стратегию, по которой будем открывать длинную позицию, когда цена BTC падает ниже 11 000 долларов США, и закрывать позицию, когда цена превышает 11 300 долларов США. Мы можем посмотреть, насколько прибыльной является эта стратегия применительно к истории рынка.
Итак, если цена меньше или равна желаемому значению входа, первое выражение оценивается как истинное и мы открываем длинную позицию. Когда цена станет равной или превысит желаемое значение выхода, сработает второй блок, закрывающий все открытые позиции.
Руководство по TradingView для начинающих
Осторожно! Много текста.
TradingView – это платформа внутри браузера для построения графиков и мониторинга криптовалют, а также других финансовых активов. Ее инструменты построения графиков также доступны для использования непосредственно в торговом интерфейсе Binance. Помимо построения графиков, вы можете делиться своими торговыми стратегиями и транслировать анализ в режиме реального времени.
Что касается бесплатных возможностей, то TradingView является мощным инструментом для трейдеров с любым уровнем опыта. Основных функций должно хватить большинству из них. Однако будьте осторожны, изучая идеи и трансляции других пользователей. Важно не слепо следовать за кем-то, а находить такую информацию, которая повысит ценность вашей собственной стратегии.
Введение
Для трейдеров, отдающих предпочтение техническому анализу, необходимы надежные инструменты построения графиков. TradingView удовлетворяет запросы как начинающих, так и опытных участников. Он предлагает множество инструментов для торговли и построения графиков, при этом некоторый функционал платформы доступен бесплатно. Будем смотреть правде в глаза. Не у всех есть средства или необходимость в подписке на терминал Bloomberg.
Если вы торговали на Binance, то уже могли заметить доступные инструменты TradingView. Однако без достаточного понимания они могут лишь отпугнуть. Вариантов много, но с чего начать? Чтобы лучше узнать возможности TradingView, ознакомьтесь с нашим руководством для начинающих.
Для чего нужна платформа TradingView?
TradingView на Binance
Binance имеет встроенные в интерфейс инструменты TradingView, чтобы пользователи могли одновременно создавать графики и торговать. Инструменты слева – лишь малая часть из всех доступных, при этом они обладают тем же функционалом, что и на сайте TradingView.
Сколько стоит использование TradingView?
Как мы уже говорили, TradingView – инструмент, бесплатный для каждого.Однако существуют и премиальные подписки, которые увеличивают количество индикаторов и графиков, одновременно доступных для просмотра. Начинающим пользователям подойдет бесплатный аккаунт с одним графиком и тремя индикаторами. Вам также придется мириться с рекламой, но она не будет слишком навязчивой. Ниже вы можете более подробно ознакомиться с различными вариантами подписок:
TradingView – это социальная сеть?
TradingView предоставляет схожие с Instagram функции для обмена мнениями и демонстрации торговых стратегий. На страницах «Идеи» и «Трансляции» вы можете получать советы или отзывы. В частности, на странице «Идеи» вы увидите диаграммы, видео и комментарии других пользователей. Члены сообщества также могут участвовать в обсуждениях и чатах. Но помните, что создавать свои идеи и делиться ими может каждый пользователь, поэтому будьте осторожны. У каждого трейдера свой стиль и своя стратегия, поэтому не воспринимайте их публикации как финансовые советы.
Интерфейс TradingView
Если вы никогда раньше не использовали инструменты для построения графиков, интерфейс TradingView может показаться немного запутанным. Давайте с ним разберемся.
Панель инструментов 1
Панель инструментов 2
Здесь находятся настройки отображения диаграммы. Вы можете выбирать между свечами, линейными графиками, графиками с областями и т.д. Слева также есть панель поиска, в которой можно изменить отображаемый актив. Еще один инструмент, на который стоит обратить внимание, – кнопка [Индикаторы и стратегии] для вставки заранее готовых шаблонов анализа, таких как скользящая средняя.
Панель инструментов 3
TradingView не предлагает брокерских услуг, но вы можете торговать на сайте, используя вкладку [Торговая панель]. Там вы найдете список партнеров, с которыми можно совершать сделки, если у вас уже есть открытый счет. Кроме того, вы можете тестировать свои стратегии, используя функцию [Тестер стратегий].
Панель инструментов 4
К этому блоку относятся новости и социальные элементы TradingView. Вы можете настроить список трейдеров для наблюдения, отправлять личные сообщения другим пользователям, изучать идеи и трансляции, а также пользоваться доступом к персонализированному календарю. Если вам нужно найти какие-либо данные, списки или информацию, ищите в этом разделе.
Область графиков
Когда вы меняете просматриваемый актив, используете какие-либо инструменты или размещаете индикаторы, они отображаются в основной области диаграммы. Вы можете настроить практически все, что вы видите. Об этом мы поговорим в следующем разделе.
Персонализация графиков TradingView
Что касается отображения графиков, то у всех свои предпочтения. Настройка цветов, линий и осей упрощает чтение и понимание ваших графиков. Все необходимые настройки вы можете найти, нажав правую кнопку мыши в области графика и выбрав [Настройки. ].
В меню [Настройки. ] вы также можете сбросить настройки графика, если он стал слишком запутанным, и настроить оповещения об уровнях цены по электронной почте.
После выбора пункта [Настройки. ] вы попадете в окно [Настройки диаграммы], где можете менять диапазон параметров. Давайте пройдемся по основным из них.
1. Вкладка [Инструмент] позволяет изменить внешний вид графиков свечей. Каждая часть паттерна свечи может быть помечена цветом, который вам нравится.
3. Вкладка [Шкалы] содержит параметры для изменения трекеров на правой оси. Например, можно добавить дневные максимальные и минимальные цены или обратный отсчет до закрытия бара.
4. Вкладка [Оформление] позволяет изменять линии сетки, цвет фона, оси и другие графические элементы.
5. Вкладка [Торговля] позволяет настраивать визуальные элементы, если вы вошли в учетную запись брокера.
6. Вкладка [События] содержит настройки дивидендов, сплита и других событий в области графика.
Наряду с настройкой оформления графика вы также можете изменять интервалы свечей и других символов. Для этого перейдите на верхнюю панель и нажмите крайнюю левую кнопку. Отобразится длинный список интервалов – от секунд до месяцев. Несколько интервалов вы можете добавить в избранное, и они будут отображаться на верхней панели.
В процессе настройки графика нет необходимости ручного сохранения. TradingView сохраняет все ваши настройки в режиме реального времени, поэтому вы можете выйти из аккаунта и вернуться к ним позже.
Рисование линий тренда
1. Чтобы начать обучение, выберите инструмент «Лини» на левой панели инструментов.
2. Вам также может понравиться режим магнита. В этом случае ваши линии будут привязаны к ближайшим точкам OHLC для большей точности.
3. Для нисходящего тренда перед падением цены, известным как максимум колебания, начните линию с локального максимума (точка 1). Нажмите в желаемом месте начала линии и попытайтесь провести линию через как можно большее число максимумов. Для завершения линии нажмите на график ещё раз.
Точки 1, 2 и 3 являются точками сопротивления. Всегда лучше иметь минимум три точки, проверяющие линию тренда, поскольку две могут быть случайными. Точка 4 показывает прорыв тренда: с этого места лучше всего провести новую линию тренда.
Если вы наблюдаете нисходящий тренд, одна из возможных стратегий – продавать, когда цена тестирует вашу линию. Если вы решили отобразить восходящий тренд, убедитесь, что начинаете линию с низкой цены, чтобы линия находилась под вашей свечой.
Рисование вил
Вилы – более продвинутый график, развивающий идею линий тренда. Этот технический индикатор был создан Аланом Эндрюсом, знаменитым американским инвестором и педагогом 20-го века. Данный график легко нарисовать, и он дает больше информации, чем просто линия тренда, поэтому давайте рассмотрим его шаг за шагом.
1. Для начала выберите инструмент «Вилы» – он расположен под инструментом «Линия».
2. Мы нарисуем вилы, выбрав три точки в начале и в конце трендов.
3. В приведенном ниже примере вы можете видеть, что мы начали с точки 1 – минимума нисходящего свинг-тренда. Затем мы выбираем точку 2, максимум колебания восходящего свинг-тренда, а затем точку 3 – минимум следующего нисходящего тренда.
4. Эти точки образуют паттерн вил, причем верхняя линия, идущая от точки 2, показывает уровень сопротивления, а нижняя линия, идущая от точки 3, – уровень поддержки. Средняя линия – предполагаемое значение, к которому будет стремиться цена.
5. Как и в примере с линией тренда, линия поддержки показывает возможные области покупки, а линия сопротивления – области продажи. Для управления рисками вы можете разместить стоп-лосс чуть ниже нижней линии тренда. Обратите внимание: подобно любому другому индикатору, вилы не всегда работают именно так, как ожидается. Для снижения рисков рекомендуется использовать данный инструмент одновременно с другими инструментами и стратегиями.
Достоинства и недостатки TradingView
С точки зрения средств мониторинга активов, TradingView – лишь один из множества вариантов. Большинство предлагают аналогичный набор инструментов для построения графиков и трейдинга, но давайте рассмотрим основные аспекты. Некоторые функции, разумеется, реализованы в TradingView очень хорошо, но и тут все еще есть к чему стремиться.
Преимущества
Недостатки
Резюме
TradingView – отличный вариант для тех, кто ищет бесплатное решение с широким набором инструментов. Учебные материалы платформы также бесплатны, при этом они охватывают основы построения графиков и технических индикаторов.
Однако социальная сторона не так сильна. В чатах часто дают спекулятивные советы, которых следует избегать. Для новичков социальные функции платформы в меньшей степени полезны, поскольку уметь отличать хорошую аналитику от плохой.
Отказ от ответственности: материалы статьи предназначены для образовательных целей. Статья не является поддержкой или рекомендацией, представленная информация не должна рассматриваться как финансовый совет. Все скриншоты взяты с официального сайта TradingView и соответствуют Условиям использования.
Небольшое дополнение для тестирования статегий в Tradingview
Добрый вечер, друзья!
Для тех, кто использует Tradingview выкладываю небольшой код для расширения возможностей тестирования стратегий. В целом ничего особенного, тем не менее нижеприведённый код дополнительно позволяет высчитывать следующие параметры:
1: Расчёт количества подряд идущих убыточных сделок
(Строка “Профит” (см. рисунок ниже)-опциональный параметр для расчёта убыточных сделок. Например, при значении равным “0” к убыточным сделкам относятся только отрицательный сделки, при значении равным “10” к убыточным сделкам помимо отрицательных сделок будут относиться также и сделки профит по которым менее 10 пунктов и так далее. Позволяет отфильтровать сделки с малым, либо нулевым профитом).
2: Суммарный доход по стратегии (особенно актуально для фьючерсов, так как в TV тестер корректно работает только под акции)
3: Прибыль и убыток по-сделочно (прибыль и убыток от каждой сделки)
4: Убыток от серии убыточных сделок
Ниже представленный код вставляем в код индикатора или стратегии, прописываем условия входа в длинную и короткую позиции в переменных buy и sell и пользуемся:
buy = “Прописываем условия покупки”
sell= “Прописываем условия продажи”
Profit=input(0,title=’Профит от сделки’)
view_3=input(false,title=’Прибыль и убыток по-сделочно’)
view_4=input(false,title=’Убыток от серии убыточных сделок’)