Избранное трейдера Bat

Данная статья навеяна постом о сливе 1,5 миллиона рублей на Газпроме. Вполне вероятно, что подобных постов будет с каждым месяцем всё больше, т.к. начинается время турбулентности и быть просто Инвестором («хомячком, набил портфельчик и держи») крайне опасно. И дело даже не в шортах, плечах или выносе позиций из портфельчика, когда все спят, а дело в том, что стать «Инвестором» сейчас очень легко и доступно. При этом нет каких-либо предварительных школы/университета инвестора или экзамена. Вход абсолютно свободный. Теперь любой желающий всего одной кнопкой смартфона «Купить» окунается в мир своих ожиданий и хотелок с девизом: «Акции онли лонг!», неверно переведя себе как «Акции только растут! Закрою портфель на пенсии». К сожалению, время долгосрочного планирования заканчивается. Я не инвестор и лично мой вариант работать только по факту торговой ситуации на рынке. Но, возможно, эта простая и не сложная шпаргалка кому-нибудь поможет.
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
//@version=4
study("Historical Volatility")
// Настройки окон
HVPeriod1 = input(17, minval=1, title="Окно 1")
HVPeriod2 = input(34, minval=1, title="Окно 2")
HVPeriod3 = input(51, minval=1, title="Окно 3")
HVPeriod4 = input(85, minval=1, title="Окно 4")
// Настройка периода для сглаживания
EMAPeriod = input(17, minval=2, title="Период сглаживания")
// Собственно индикатор
// мультипликатор, для нормирования к году
mul = 252 * 1210 / timeframe.multiplier
//приращение за бар
ch = log(close) - log(close[1])
// Историческая волатильность в окнах
HV1 = ema(sqrt(sum(ch * ch, HVPeriod1) * mul / HVPeriod1) * 100, EMAPeriod)
HV2 = ema(sqrt(sum(ch * ch, HVPeriod2) * mul / HVPeriod2) * 100, EMAPeriod)
HV3 = ema(sqrt(sum(ch * ch, HVPeriod3) * mul / HVPeriod3) * 100, EMAPeriod)
HV4 = ema(sqrt(sum(ch * ch, HVPeriod4) * mul / HVPeriod4) * 100, EMAPeriod)
// Рисуем красивое
plot(HV1, color=#cccccc)
plot(HV2, color=#ffcccc)
plot(HV3, color=#ff9999)
plot(HV4, color=#ff0000)
Чтобы использовать, копируем, в TradingView открываем Редактор Pine, создаем там новый индикатор (Открыть -> Новый индикатор), удаляем все что там в скрипте по умолчанию и вставляем этот код. Жмем Сохранить. Дальше скрипт будет доступен в выпадающем списке над графиком под кнопкой Индикаторы во вкладке Мои скрипты. Модно, быстро и удобно )
Часто вижу на форуме вопросы типа «Как написать простого робота, чтобы автоматизировать торговлю?». Несколько раз отвечал, а сегодня делать нечего и решил в одном посте соединить всё воедино, надеюсь пригодится начинающим писателям скриптов. Если коротко: не занимайтесь написанием роботов, всё что вам нужно для успешной торговли уже реализовано в TradingView: рисуете на графике области, линии тренда и прочие фаллосы. Далее создаёте уведомление, например на выход из области или пересечение линии тренда или на закрытие выше линии или на любое другое событие которых в TV огромное количество. TV позволяет на уведомление повесить webhook, то есть может «дёргать» внешний скрипт. Арендуете сервер с внешним IP адресом (далее IP_сервера) и пишете элементарный скрипт, который делает «продать всё по рынку» или «продать всё по цене, которую передал TV» и т. д. Таким образом вся логика у Вас будет на графике, любые сценарии программируются за 5 минут наглядно рисованием.
А теперь скрипты и примеры их использования:
Webhook скрипт на PHP для фонда (на примере Тинькова): https://telegra.ph/webhookListenerTinokphp-11-04
Для него требуется установить в папку со скриптом с помощью composer пакет github.com/jamesRUS52/tinkoff-invest, запуск скрипта на сервере из консоли командой php -S IP_сервера:80 ./webhookListenerTinok.php
Замечание: в TIAccountId можно вписать идентификатор нужного счёта если их несколько (например брокерский и ИИС), lot нужно указывать только для валютных пар.

