Signal Pilot
🟡 Средний уровень • Урок 49 из 85

Перерисовка

Время чтения ~16 мин • Модуль 6: Индикаторы честно
Signal Pilot
Профессиональное обучение трейдингу
0 %
Ты делаешь успехи!
Читайте дальше, чтобы завершить урок

Индикатор, которому нужны бары после того, на котором он рисует, сдвинет уже нарисованное, и этот сдвиг — не шум. По построению он идёт тебе на пользу. Правило, помечающее бар как минимум потому, что следующие бары выше, не может быть пересмотрено против тебя: условие, создающее сигнал, и есть условие, делающее более поздний курс лучше. У сдвига всего один возможный знак, и задаёт его само правило. На шестидесяти закрытиях этого модуля двухбарное правило пивота отмечает семь полных сделок. Взятые там, где их показывает готовый график, они выигрывают семь раз из семи, не проходят против входа ни одного тика и дают в сумме 20,40 пункта. Взятые в тот первый момент, когда каждая из них становилась узнаваемой, они выигрывают четыре раза из семи и дают 3,90. Четыре пятых того backtest были графиком, сдвинувшимся задним числом. А пока бары идут, то же правило ставит на график метки, которые не выживают: четыре из его тринадцати при двух барах, четыре из восьми при трёх, три из шести при пяти.

Требования: Урок 48, чья заключительная проверка — зависит ли значение, нарисованное на баре, от какого-нибудь бара после него — здесь и есть вся тема, урок 17, потому что величина, которую перерисовка раздувает, — это матожидание, и его нужно уметь сформулировать, прежде чем наблюдать, как оно движется, и урок 19, чья арифметика о том, сколько наблюдений требует утверждение, и задаёт цену проверке на обнаружение в конце.

Сигнал, который ещё предварителен

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

Механизм редко бывает обманом и почти всегда бывает арифметикой. Возьми самое ходовое правило свинга на любой платформе: бар есть пивот-минимум, если он ниже k баров до него и ниже k баров после него. Левое условие проверяемо на самом баре. Правое непроверяемо ещё k баров. Значит, честно метку можно нарисовать только на баре t+k, и всякий график, рисующий её на баре t, делает вывод из баров, которых ещё не было.

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

Длительность точна и её стоит унести с собой: метка впервые появляется на t+1 и становится окончательной на t+k, так что правило, заглядывающее на k баров вперёд, оставляет каждый сигнал предварительным ещё на k-1 бар после его первого появления. Пятибарные пивоты мерцают четыре бара. Это не изъян реализации. Это то, чего требует определение.

У сдвига не может быть другого знака

Интересно не то, что сигнал движется. Интересно, что движение идёт только в одну сторону, и причина тут логическая, а не статистическая.

Выпиши условие пивот-минимума: бар t является сигналом потому, что закрытия с t+1 по t+k все выше него. Тогда цена на t+k выше цены на t с необходимостью, ведь это одна из тех самых оговорок, которые и сделали t сигналом. Разрыв между ценой, которую показывает тебе график, и ценой, которую ты действительно мог заплатить, положителен каждый раз без исключения, и никакая выборка не будет достаточно большой или малой, чтобы это изменить. Это свойство правила, а не рынка, на котором оно работало.

Размер — часть эмпирическая, и таблица отделяет его от того, что делает невыбранный бар на том же промежутке. Последний столбец — то же самое изменение за k баров, измеренное на каждом баре, на котором сигнал мог бы стоять, то есть на каждом баре от k от начала до k от конца, то есть то, чего ждали бы от сдвига, будь он и вправду шумом. Множество значит больше, чем кажется: усредни вместо этого по всем шестидесяти барам, и три числа выйдут 0,19, 0,30 и 0,48, отчего последнее отношение в абзаце ниже меняется с 6,0 на 3,9.

Баров заглядывания вперёдСигналыСредний сдвигНаименьшийТот же промежуток, любой бар
Два9+1,00+0,50+0,18
Три4+0,80+0,20+0,21
Пять3+1,87+0,70+0,31

Прочитай средний сдвиг против последнего столбца. Шум лежал бы по обе стороны от нуля и выходил бы примерно на то, что даёт любой бар на том же промежутке. Здесь нет ни того, ни другого: наименьший сдвиг положителен при любой длине окна, а не только среднее, и среднее составляет 5,4, 3,9 и 6,0 от невыбранной величины, если читать сверху вниз. Три строки между собой сравнивать по-настоящему нельзя, ведь четыре сигнала — это четыре сигнала, но каждая сравнима со столбцом рядом, и все три говорят одно и то же.

На выходе тот же довод работает наоборот. Пивот-максимум — это бар, под которым проходят все последующие закрытия, так что продать его задним числом значит продать выше того, что ты бы получил. На семи полных сделках ниже вход сдвинут в твою пользу в среднем на 1,03 пункта, а выход на 1,33, и эти два вместе по семи сделкам объясняют весь разрыв в 16,50 пункта между двумя версиями, не оставляя ничего лишнего.

Что это делает со статистикой backtest

Сдвинутый вход не просто смещает результат. Он перекраивает каждую статистику, по которой ты стал бы его судить, и перекраивает именно в те стороны, которые убеждают людей сильнее всего.

Первой искажается доля прибыльных. Входить на баре, который по определению ниже двух баров с каждой стороны, значит начинать сделку на локальном минимуме, так что сделки, которые были бы мелкими убыточными, становятся мелкими прибыльными. На семи сделках ниже перерисованная версия выигрывает все семь, а честная — четыре. Сто процентов попаданий здесь не доказательство исключительного правила; это доказательство входа, выбранного задним числом.

Следом искажается profit factor, и сильнее. Валовая прибыль, делённая на валовой убыток, не имеет знаменателя, когда убыточных сделок нет, так что у перерисованной версии не большой profit factor, а неопределённый. Честная версия выходит на 2,39, и это почтенное число, по которому человек мог бы разумно действовать. Разница между этими двумя показаниями — не разница в степени.

Признак, который называют почти все, — доля прибыльных, а настоящий признак — drawdown. Измерь, насколько каждая сделка уходит против входа за первые два бара: на перерисованных входах эта величина ровно нулевая у всех семи, ведь пивот-минимум — самое низкое закрытие в своей окрестности, и ниже цене идти некуда. Честные входы в среднем на 0,33 против и до 1,40 в худшем случае. Кривая капитала вовсе без встречного хода обычно не нашла способа избежать боли; она обычно выбрала свои входы с той стороны исхода.

Другой путь внутрь: старший таймфрейм, прочитанный слишком рано

Случай с пивотом виден, потому что метка прыгает. Другой обычный путь бесшумен, и его стоит посчитать, потому что на графике не мерцает вообще ничего.

Сгруппируй шестьдесят закрытий этого модуля в двенадцать блоков по пять, как пятиминутный график группируется в двадцатипятиминутный. У каждого блока есть закрытие — последнее из его пяти баров. Запрос этой величины, которому не сказано ждать, выдаёт её тебе на первом баре блока, а не на последнем, так что на каждом баре внутри блока твой график уже знает, где блок кончится.

Посчитай это. Блоки проходят от первого бара до закрытия в среднем 1,675 пункта, и направление известно на четыре бара раньше на всех двенадцати. Правило, идущее с направлением самого блока начиная с его первого бара, набирает поэтому 20,10 пункта по серии со стопроцентной долей попаданий. Вся серия проходит лишь 71,00 пункта брутто и 5,80 нетто, так что утечка стоит 28,3 % всего движения, какое серия вообще содержит, и накапливается она без того, чтобы на экране сдвинулась хоть одна метка.

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

То же правило, оценённое дважды

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

Перерисовывающая версия делает то, что делает график: ставит вход на бар пивота, по цене пивота, потому что именно там готовый график показывает метку. Честная версия ставит его двумя барами позже, на закрытии того бара, — это первый момент, когда пивот можно было опознать, не обращаясь к барам, которых ещё не было. Больше не меняется ничего. То же правило, та же серия, те же семь полных сделок.

Бар входаБар выходаКак нарисованоКак было узнаваемо
25+3,70+0,60
710+4,60−0,70
1825+0,10−1,30
2629+1,20+0,30
3036+3,90+2,10
3952+5,60+3,70
5455+1,30−0,80

Перерисовывающая колонка даёт по семи сделкам 20,40 пункта, в среднем 2,91, при семи прибыльных и полном отсутствии убыточных. Честная колонка даёт 3,90, в среднем 0,56, при четырёх прибыльных и трёх убыточных. Поправка стратегию не разрушает, и 3,90 пункта при profit factor 2,39 — настоящий результат, а не крах, хотя при семи полных сделках ради 3,90 пункта издержки из урока 10 перестали быть на её фоне ошибкой округления. Ушла та часть, которая делала её примечательной, и этой частью был сдвиг на два бара: от заявленной суммы остаётся пятая часть.

Обрати внимание, какие сделки несут ущерб. Вторая идёт с 4,60 пункта в убыток 0,70, а третья с 0,10 в убыток 1,30, потому что обе были пограничными сделками, чья видимая прибыль была меньше сдвига. Две крупные прибыльные выживают в уменьшенном виде. Такова общая форма: перерисовка не уменьшает результат равномерно, она превращает пограничные сделки из убыточных в прибыльные — а это ровно та группа, которая решает, есть ли у правила преимущество.

Одна честная оговорка. Семь сделок — иллюстрация, а не оценка, и серия модуля — это шестьдесят чисел, а не рынок. Переносятся не 80,9 %. Переносится то, что у сдвига на каждой сделке был неизменный знак, что его размер был движением ровно за те бары, на которые правило заглядывало вперёд, и что две колонки сходятся полностью: 1,03 на входах и 1,33 на выходах объясняют 16,50 пункта разницы и не оставляют ничего необъяснённым.

Сколько сигналов надо посмотреть

Проверка, которую советуют все, — правильная проверка: запиши, где стоит сигнал, пока бар идёт, посмотри снова после закрытия и проверь, там ли он ещё. Чего к ней никто не прилагает, так это числа наблюдений — а без него проверка может ввести в заблуждение в успокаивающую сторону.

Считай каждый сигнал независимым испытанием с неизвестной вероятностью сдвинуться. Просмотр пяти сигналов ловит инструмент, сдвигающий половину из них, с вероятностью 0,97 — вот почему привычный совет смотреть три-пять разумен для тяжёлого случая. Для лёгкого он неразумен. Поймать инструмент, сдвигающий один сигнал из десяти, хотя бы 95 раз из ста требует двадцати девяти сигналов, а один из двадцати — пятидесяти девяти.

Если прочитать наоборот, выходит полезнее, ведь интересен случай инструмента, который проходит. Пять чистых наблюдений исключают долю перерисовки выше 45,1 % и больше ничего. Десять исключают 25,9 %, двадцать исключают 13,9 %, пятьдесят исключают 5,8 %. Так что инструмент, за которым ты последил полдня и нашёл чистым, — это инструмент, про который ты показал, что он не сломан катастрофически: знать это стоит, и это не то же самое, что показать, что он детерминирован.

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

Что это не решает

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

Что ожидание — единственное, чего стоит поправка. Честный столбец действительно торгуем, потому что через два бара после пивота ты уже знаешь, подтвердился ли он, и это не то, к чему тебя зовёт график. График зовёт действовать по маркеру, пока тот на экране. Сделай так на тех же шестидесяти закрытиях — покупай на закрытии после каждого из тринадцати предварительных нижних маркеров, продавай на закрытии после следующего предварительного верхнего — и то же правило даст десять кругов на итог минус 5,50 пункта, три выигрышных из десяти и профит-фактор 0,59. Значит 16,50 пункта между нарисованным столбцом и узнаваемым — это то, что перерисовка забирает из протокола, а 9,40 между узнаваемым столбцом и этим — то, что она забирает у трейдера, делающего то, о чём просит экран. Этот урок измеряет первый разрыв. Второй больше, и здесь он не измерен.

Что центрированное или заглядывающее вперёд правило поэтому бесполезно. Пивот, которому нужны два бара справа, — вполне хорошее описание прошлого и вполне хорошая входная величина для исследования. Перерисовкой он становится только тогда, когда его рисуют на баре, на котором он ещё не может быть известен. Задержи его ровно на столько баров, на сколько он заглядывает вперёд, и он перестанет перерисовываться совсем, ничего не потеряв в информативности: честная колонка выше — это то же самое правило, по-прежнему прибыльное. Изъян в отметке времени, а не в формуле.

Что 80,9 % переносятся на твой инструмент. Не переносятся, и 20,40 тоже. Семь полных сделок на шестидесяти сконструированных закрытиях — это демонстрация, построенная для пересчёта, а не оценка чего бы то ни было. Переносится структура: знак сдвига задан правилом, его величина есть движение ровно за те бары, которые правило взяло условием, а пограничные сделки — это то место, где ущерб сосредоточен. Измерь свой инструмент так, как это делает таблица, и получишь своё число.

Что пройденная зрительная проверка делает инструмент детерминированным. Она ограничивает долю перерисовки и не более, и граница из короткого прогона слаба: пять чистых сигналов оставляют живыми доли вплоть до 45,1 %, а двадцать оставляют 13,9 %. Инструмент может ещё и перерисовываться только в условиях, которые в твою выборку не попали: только на старшем таймфрейме, только через границу сессии, только когда совпадают два условия. Выборка этого исключить не может. Чтение кода — может.

Что это решает, хороша ли стратегия. Оно решает, смотришь ли ты вообще на стратегию. Инструмент, который не перерисовывается, даёт тебе backtest, входы которого были доступны, и это предпосылка вопроса, а не ответ на него — и честное число вполне может сказать, что правило плохое. Судят его матожидание из урока 17 и арифметика из урока 19 о том, сколько времени результату нужно, чтобы установиться. Этот урок лишь удостоверяется, что оцениваемая запись есть запись того, что происходило.

Задачи

  1. Оцени сдвиг на инструменте, которому доверяешь больше всего. Веди три столбца. Пока бар идёт, записывай каждый сигнал и цену, на которой он стоит. После закрытия бара записывай, где тот же самый сигнал стоит теперь. В третий столбец ставь разницу, умноженную на стоимость пункта твоего инструмента. Делай так, пока не наберёшь двадцать наблюдений вместо трёх: двадцать чистых ограничивают долю перерисовки ниже 13,9 %, тогда как три оставляют возможным всё, что ниже 63 %. Итог третьего столбца — это то, во что инструмент обходится тебе ещё до того, как стратегию вообще оценили.
  2. Найди в определении заглядывание вперёд и задержи ровно на столько же. Для каждого индикатора на твоём графике запиши, на сколько баров после отмеченного бара ссылается его формула. Ноль означает, что этим путём он перерисовываться не может. Всё, что больше нуля, — это число баров, в течение которых сигнал остаётся предварительным, и промежуток, на котором накапливается сдвиг. Затем прогони правило заново, задержав каждый сигнал на столько баров, и сравни две кривые капитала. Разница — не найденная тобою ошибка; это та часть оригинала, которой никогда не было в доступе.
  3. Смотри на drawdown прежде, чем смотреть на долю прибыльных. Возьми любой backtest, который рассматриваешь, и измерь, насколько каждая сделка уходила против входа за свои первые бары. Если эта величина близка к нулю на длинном ряду сделок, спроси, что отбирает входы, ведь вход, выбранный без обращения к более поздним барам, иногда окажется скверно рассчитанным по времени, и запись должна это показывать. Кривая без всякого встречного хода — сильнейший отдельный симптом правила, которое видело исход, и виден он без всякого знания о том, как индикатор устроен.

Источники. Athanasios Orphanides, «Monetary Policy Rules Based on Real-Time Data» (American Economic Review, 2001) — о том же провале за пределами торговли: рекомендации политики, которые выглядят основательно на пересмотренных данных и переворачиваются, когда их пересчитывают по числам, действительно опубликованным в своё время. Dean Croushore и Tom Stark, «A Real-Time Data Set for Macroeconomists» (Journal of Econometrics, 2001) — о практике хранить каждую редакцию серии, чтобы исследование можно было прогнать на том, что было известно, а не на том, что известно сегодня. Halbert White, «A Reality Check for Data Snooping» (Econometrica, 2000) — о том, почему результату, отобранному со знанием исхода, нужен иной стандарт доказательства, чем результату, отобранному без него. David H. Bailey, Jonathan M. Borwein, Marcos López de Prado и Qiji Jim Zhu, «Pseudo-Mathematics and Financial Charlatanism» (Notices of the American Mathematical Society, 2014) — о том, насколько далеко можно раздуть запись внутри выборки, прежде чем кто-либо сделает хоть что-то похожее на жульничество. TradingView, Pine Script v5 User Manual, раздел о перерисовке — за первоисточник того, какие конструкции возвращают незаконченные бары и в чём состоят две поправки.

Проверка — один вопрос, задаваемый каждой линии на графике: зависит ли нарисованное здесь значение от чего-то, чего ещё не случилось? Там, где ответ нет, лежащая перед тобой запись есть запись решений, которые были доступны, и можно переходить к более трудному вопросу, были ли они хорошими. Там, где ответ да, запись — не слабое свидетельство о стратегии, а свидетельство о другой стратегии, входившей по ценам, выбранным уже после того, как исход стал известен, — и никакое её количество не складывается в знание о той, которой ты и вправду торговал бы. Урок 50 берёт самую используемую линию на любом графике и считает касания: 3 на шестидесяти закрытиях этого модуля или 22, смотря по допуску, которого не печатает ни одна платформа, и долю удержаний в 53 процента против тех 45, что лента даёт тебе вовсе без нарисованной линии.

Связанные уроки
Урок 48

Что такое индикатор

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

Читать урок →
Урок 32

Структура рынка

Откуда берётся правило свинга и почему его правая сторона — та часть, которая ещё не случилась.

Читать урок →
Урок 34

Дивергенция

Целая категория, чьи линии перерисовываются, и настройки, решающие, есть ли она вообще.

Читать урок →
Урок 50

Скользящие средние

Самая используемая линия на любом графике и то, на что она вправе об уровне.

Читать урок →
Только в образовательных целях. Торговля сопряжена со значительным риском убытков. Это не финансовая консультация. Прошлые результаты не гарантируют будущих.

💬 Обсуждение (0 комментариев)

0/1000

Загрузка комментариев…

← Предыдущий урок Следующий урок →

Готовы торговать с Signal Pilot?

Примените полученные знания с профессиональными индикаторами и инструментами анализа рынка в реальном времени.

Вернуться в Signal Pilot →