50%-я ТС.По поводу фрактальной геометрии.

  • Автор темы Автор темы Адюво
  • Дата начала Дата начала
Если без формул и занудства

МНК - это не доказательство закономерности.

МНК всего лишь минимизирует сумму квадратов ошибок между выбранной функцией и выбранными точками.

То есть он отвечает не на вопрос:

«есть ли тут рабочая рыночная закономерность?»

А на вопрос:

«как лучше подогнать функцию под эти данные?»

Это разные вещи.

Теперь подробнее.

Выборка - это база проверки.

Нужно понимать:

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

Если взяты несколько красивых точек на истории, это не статистическая выборка.

Это ручной отбор.

Дальше идут ошибки модели.

Для каждой точки считается:

ошибка = фактическое значение − расчётное значение

Например:

модель дала 1,1884
рынок дал 1,1860
ошибка = −0,0024

Одна ошибка ничего не значит.

Нужен массив ошибок.

Потом смотрят среднюю ошибку.

Если средняя ошибка близка к нулю, это ещё не победа.

Почему?

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

Поэтому смотрят дисперсию.

Дисперсия показывает разброс ошибок вокруг среднего.

Смысл простой:

маленькая дисперсия - ошибки компактные, модель стабильнее
большая дисперсия - ошибки гуляют, модель ненадёжна

Для трейдинга это важно.

Модель может иногда попадать очень точно.

Но если в другие моменты она промахивается широко, практической ценности мало.

Особенно если стоп, спред и проскальзывание съедают весь предполагаемый edge.

Ещё важнее - остатки.

Остатки - это те самые ошибки после подгонки.

Их нужно проверять.

В нормальной модели остатки должны быть похожи на шум.

Если в остатках есть структура, значит модель что-то системно не учитывает.

Например:

ошибка растёт со временем
ошибка больше при высокой волатильности
ошибка зависит от направления тренда
ошибка кластеризуется
одна-две точки держат всю красивую картинку

Тогда это не устойчивая модель.

Это подгонка под участок графика.

Дальше - доверительный интервал.

Коэффициент q = 1,445 сам по себе ничего не доказывает.

Нужно знать неопределённость этого коэффициента.

Например:

q = 1,445 ± 0,02

Это одно.

А если:

q = 1,445 ± 0,35

Это уже другое.

Во втором случае точного коэффициента фактически нет.

Есть широкий диапазон.

И тогда фраза «1/q близко к 1/√2» становится слабой.

Потому что сама оценка q плавает.

Нельзя сравнивать плавающее число с красивой константой и делать вывод о закономерности.

Теперь переобучение.

Это главный риск.

Переобучение - когда модель хорошо объясняет прошлое, потому что её подогнали под прошлое.

Но на новых данных она не работает.

Правильная проверка такая:

один участок истории - для настройки
другой участок - для проверки
параметры после настройки не трогаются
смотрим, работает ли модель дальше

Это называется out-of-sample.

Если модель красивая только на участке, где её подбирали, это не прогноз.

Это постфактум.

Отдельный момент - множественный перебор.

Если перебрать:

веера
углы
корни
Фибоначчи
логарифмы
квадратичные зависимости
разные таймфреймы
разные точки отсчёта
разные экстремумы

то какое-то совпадение обязательно найдётся.

Но найденное совпадение не равно закономерности.

Это эффект перебора.

Итог:

МНК может быть нормальным инструментом.

Но только когда есть:

нормальная выборка
формальные правила выбора точек
ошибки модели
дисперсия ошибок
доверительные интервалы
проверка остатков
out-of-sample тест
учёт торговых издержек

Без этого МНК здесь не доказывает рынок. От слова совсем.

Он просто аккуратно подгоняет геометрию под уже случившийся график.
====
Вы:
«МНК всего лишь... отвечает на вопрос: "Как лучше подогнать функцию под эти данные?"»
Мой ответ:
Так и есть. Именно этим все исследователи и занимаются день и ночь — чтобы загнать исследуемые процессы в понятную, детерминированную, предсказуемую функцию. Иначе говоря, наука занимается способами предсказания будущего. Таков инстинкт выживания.
Но вы говорите, что «для проверки нужен не смысл, а правило». И, конечно же, я вас понимаю как практика, у которого руки горят, чтобы применить и проверить «Святой Грааль» геометрического анализа в действии, избегая ненужных разговоров.
Но ведь чтобы что-то проверять, нужно это получить. То есть восхождения в индукции нам не избежать, чтобы уже оттуда, с высоты полёта, применить искомый и любимый вами дедуктивный метод. Нужно ведь представлять себе образ того, что мы хотим воплотить и проверить в роли ключевой закономерности — «Святого Грааля». А он потому и святой, что является скрытой сущностью, принципом, который нужно открыть.
И большинство трейдеров правильно делают, что сразу хотят разрубить гордиев узел и пытаются решить проблему наскоком, ломая копья, ломая луки (Псалом 45:10).
Но, как всегда, «ошибка вышла, вот о чём молчит наука» (с). И тогда в трейдере просыпается «учёный»: на основании многочисленных проб и ошибок у него рождаются идеи. Так родились многочисленные методы. Перечислим хотя бы некоторые из них, которые на слуху:

вилка Чувашова, волны Эллиотта, уровни Фибоначчи, зоны Фибоначчи, веер Фибоначчи, резонансные точки цена/время Ганна, сетка Ганна, веер Ганна, японские свечи, паттерны, побарный анализ Александра Пурнова (который базируется на классической системе Ричарда Вайкоффа — VSA, Volume Spread Analysis) и т. д.

Получается, что «Святой Грааль» геометрического анализа известен многим трейдерам, так как его проявление при применении даёт результат. И если существует разделение методов торговли на направленные (по историческим тенденциям графиков) и ненаправленные (которым знание истории не требуется), то по поводу первых я с большой долей уверенности скажу, что все они основаны на едином принципе, но выделяют лишь отдельные его особенности.
А чтобы не быть голословным, я могу специально сделать анализ классической системы Ричарда Вайкоффа (VSA — Volume Spread Analysis), на которой базируется побарный анализ Александра Пурнова. Главная слабость этих методов в том, что они требуют наличия истории торгов, которую великий трейдер всех времён и народов Уильям Ганн собирал по всему миру по кусочкам. Но и сегодня дело мало продвинулось, так как нас лишают удовольствия видеть реальные графики без пропусков на выходные. Так что и сегодня приходится склеивать графики по кусочкам, чтобы попытаться узреть возможность и применить любой из этих методов.
Если мы исследуем явление, сопоставляя его в разных ситуациях и сравнивая по аналогии с другими явлениями, то неизбежно начинаем видеть правила, закономерности, поведение которых затем стремимся идеализировать в абстрактных числах и формулах. Не факт, конечно, что идеальные функциональные зависимости «совпадают» с процессом и навязывают свою точность. Да, точность всегда, конечно же, есть, но в известных пределах, допусках. Для этого придумана система допусков, классы точности, ТУ, ГОСТы и знаки качества. А если предмет не соответствует им, то он уже не является тем, чем называется, так как не может быть согласованно применён среди других предметов в соответствии с задумкой инженера-конструктора.
Вот так и мы — инженеры собственной ТС — вынуждены идеализировать поведение цены, чтобы построить сценарий её поведения согласно нашим ожиданиям. И когда мы начинаем видеть закономерность, то стремимся применить наиболее подходящие нам известные функции, подгоняя реальность к идеалу. Этот идеал и является для нас той ниточкой истины, которую мы эксплуатируем, чтобы получить доход. Мы не можем идеал пощупать, но мы его запрягаем, и он нас выводит на реальный результат. Он есть и его нет, как любят констатировать буддисты. Но разве это не магия — ехать на невидимой лошади? Но когда хитрость рынка разгадана, магия исчезает в процессе познания.
=========================
 
Если без формул и занудства

МНК - это не доказательство закономерности.

МНК всего лишь минимизирует сумму квадратов ошибок между выбранной функцией и выбранными точками.

То есть он отвечает не на вопрос:

«есть ли тут рабочая рыночная закономерность?»

А на вопрос:

«как лучше подогнать функцию под эти данные?»

Это разные вещи.

Теперь подробнее.

Выборка - это база проверки.

Нужно понимать:

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

Если взяты несколько красивых точек на истории, это не статистическая выборка.

Это ручной отбор.

Дальше идут ошибки модели.

Для каждой точки считается:

ошибка = фактическое значение − расчётное значение

Например:

модель дала 1,1884
рынок дал 1,1860
ошибка = −0,0024

Одна ошибка ничего не значит.

Нужен массив ошибок.

Потом смотрят среднюю ошибку.

Если средняя ошибка близка к нулю, это ещё не победа.

Почему?

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

Поэтому смотрят дисперсию.

Дисперсия показывает разброс ошибок вокруг среднего.

Смысл простой:

маленькая дисперсия - ошибки компактные, модель стабильнее
большая дисперсия - ошибки гуляют, модель ненадёжна

Для трейдинга это важно.

Модель может иногда попадать очень точно.

Но если в другие моменты она промахивается широко, практической ценности мало.

Особенно если стоп, спред и проскальзывание съедают весь предполагаемый edge.

Ещё важнее - остатки.

Остатки - это те самые ошибки после подгонки.

Их нужно проверять.

В нормальной модели остатки должны быть похожи на шум.

Если в остатках есть структура, значит модель что-то системно не учитывает.

Например:

ошибка растёт со временем
ошибка больше при высокой волатильности
ошибка зависит от направления тренда
ошибка кластеризуется
одна-две точки держат всю красивую картинку

Тогда это не устойчивая модель.

Это подгонка под участок графика.

Дальше - доверительный интервал.

Коэффициент q = 1,445 сам по себе ничего не доказывает.

Нужно знать неопределённость этого коэффициента.

Например:

q = 1,445 ± 0,02

Это одно.

А если:

q = 1,445 ± 0,35

Это уже другое.

Во втором случае точного коэффициента фактически нет.

Есть широкий диапазон.

И тогда фраза «1/q близко к 1/√2» становится слабой.

Потому что сама оценка q плавает.

Нельзя сравнивать плавающее число с красивой константой и делать вывод о закономерности.

Теперь переобучение.

Это главный риск.

Переобучение - когда модель хорошо объясняет прошлое, потому что её подогнали под прошлое.

Но на новых данных она не работает.

Правильная проверка такая:

один участок истории - для настройки
другой участок - для проверки
параметры после настройки не трогаются
смотрим, работает ли модель дальше

Это называется out-of-sample.

Если модель красивая только на участке, где её подбирали, это не прогноз.

Это постфактум.

Отдельный момент - множественный перебор.

Если перебрать:

веера
углы
корни
Фибоначчи
логарифмы
квадратичные зависимости
разные таймфреймы
разные точки отсчёта
разные экстремумы

то какое-то совпадение обязательно найдётся.

Но найденное совпадение не равно закономерности.

Это эффект перебора.

Итог:

МНК может быть нормальным инструментом.

Но только когда есть:

нормальная выборка
формальные правила выбора точек
ошибки модели
дисперсия ошибок
доверительные интервалы
проверка остатков
out-of-sample тест
учёт торговых издержек

Без этого МНК здесь не доказывает рынок. От слова совсем.

Он просто аккуратно подгоняет геометрию под уже случившийся график.
====
Вы:
«Если взяты несколько красивых точек на истории, это не статистическая выборка. Это ручной отбор. Дальше идут ошибки модели».
Я:
Согласен. Человек обращает внимание на характерные точки и пытается создать идеализированную модель, подведя наиболее подходящую математическую базу. С одной стороны, это даёт человеку возможность представить возможный вариант, связав его с уже известными ему. С другой стороны, идеализация — это обобщение, индукция. И тогда идеализированная модель уже сама показывает невидимые стороны объекта методом дедукции и часто исправляет погрешности реального воплощения.

Вы:
«Одна ошибка ничего не значит. Нужен массив ошибок. Потом смотрят среднюю ошибку. Если средняя ошибка близка к нулю, это ещё не победа. Поэтому смотрят дисперсию. Дисперсия показывает разброс ошибок вокруг среднего».
Я:
Именно так и есть. Поэтому для определения нужны не только уровни в разных точках времени одного инструмента, но и согласование с другими инструментами — тогда можно достичь наиболее точного результата. Хотя для трейдинга такая точность даже ни к чему. Но составить банк данных по резонансным уровням — задача интересная. Я обычно их теряю, вычисляя лишь к данному торговому эпизоду.
===================
 
«Биения», «паттерны», «пучки микротрендов», «резонансные уровни» - это может быть рабочей интуицией.

Но для проверки нужен не смысл, а правило.

Иначе мы не сможем понять, есть перевес или нет.

Нужны 4 вещи.

Первое.

Формальное построение уровня.

Например:

берём последние 300 баров
строим уровни только по данным, которые уже были на тот момент
будущее не используем
после построения уровень не двигаем задним числом

Если уровень можно потом перерисовать - тест невозможен.

Второе.

Формальное определение реакции цены.

Например:

цена подошла к уровню на расстояние X пунктов
после этого прошла Y пунктов в нужную сторону
и не прошла Z пунктов против нас
за N следующих свечей

Иначе "отреагировала" будет означать всё что угодно.

Коснулась и ушла - реакция.
Проколола и вернулась - тоже реакция.
Пробила, но потом развернулась - тоже можно назвать реакцией.

Так статистика ломается.

Третье.

Сравнение с контрольной группой.

Нужно сравнить ваши уровни не с пустотой, а с альтернативой.

Например:

случайные уровни
круглые уровни
high/low предыдущей недели
обычные support/resistance
уровни, сдвинутые на случайное расстояние

Если веер Ганна даёт тот же результат, что случайные уровни, преимущества нет.

Четвёртое.

Торговый результат после издержек.

Даже если цена часто реагирует, это ещё не значит, что есть прибыль.

Нужно смотреть:

количество сигналов
процент срабатываний
средний плюс
средний минус
матожидание
просадку
спред
комиссию
проскальзывание
своп

И только после этого говорить о перевесе.

По поводу 300 баров.

Это нормальная гипотеза.

Можно проверять именно так:

на каждом новом баре берём только последние 300 баров
строим уровни
фиксируем их
смотрим, что цена сделала дальше
записываем результат
переходим к следующему бару

Это уже будет walk-forward проверка.

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

По поводу ручного построения.

Если процесс нельзя описать правилом, его нельзя нормально протестировать.

Можно торговать руками.

Можно иметь опыт.

Можно видеть структуру глазами.

Но тогда это дискреционный метод, а не проверяемая модель.

Чтобы проверить статистику, надо убрать свободу трактовки.

Иначе получится так:

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

Так метод становится нефальсифицируемым.

То есть его нельзя опровергнуть.

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

Мой тезис простой:

я не спорю, что визуально это может помогать ориентироваться.

Но если мы говорим о перевесе, нужны правила.

Уровень построен до события.
Критерий реакции задан заранее.
Результат записан без перерисовки.
Сравнение сделано с базовой моделью.
Издержки учтены.

Тогда будет понятно:

это реально даёт преимущество
или просто красиво объясняет уже случившееся движение.

Что касается кода, не проблема. На питоне могу сделать для проверки этой гипотезы.

Но моя чуйка говорит мне, что это не более чем - потеря времени.
====
Здесь вы так глубоко всё расписали, как я никогда и не делал. Конечно, для написания кода требуются конкретные вещи, которые во многих случаях трейдер не может предоставить.
Например, как создать автомат, когда цена возвращается и снова ныряет под резонансный уровень? А. Пурнов сейчас дал бы характеристику такого поведения цены на 40 страниц текста. Ещё три раза по столько нужна описательная часть с выводами. И ещё хотя бы 40 страниц с инструкциями рекомендательного характера с опорой на квалификацию обученного трейдера. И в конечном счёте всё решает регулировщик с жезлом: палка смотрит влево — едь как королева.
Но не всё так безнадёжно.
Пример. Я рассматриваю вариант коллективной работы со счетами. На смене всегда три человека. Если двое выдают противоречивые решения, то третий, старший смены, выполняет роль арбитра. Для работы 24/7 нужно иметь 20 человек в штате, где 6 человек — это скамейка запасных, так как для условий трудового законодательства требуется 14 человек. Значит, 6 человек могут выполнять другую работу, кроме оперативного трейдинга. Они могут снабжать аналитикой и обрабатывать её, которую сами же будут применять, выходя на оперативное дежурство. Они могут заниматься разработками поступивших идей. Вот это и есть тот момент, когда можно думать об автоматизации и тестировании. А кто-то может быть откомандирован для получения дополнительной квалификации.
Но даже сейчас, по ходу дела, в беседах мы можем увидеть точки пересечения интересов.
=================
 
Но скрин показывает построение, а не проверку.

Перенос кусочков графика по выходным - это уже не исходный график, а обработанные данные.

В этом нет проблемы, если правило обработки заранее строго задано.

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

Тогда это не анализ.

Это подгонка разметки под картинку.

Чтобы это стало проверяемым методом, нужно формально описать:

где разрезаем график
на сколько свечей переносим
почему именно так
что делаем с гэпами
какие бары берем
какие не берем
когда уровень считается построенным
можно ли его потом двигать
по какому критерию канал считается "правдивым"

Без этого "история подтверждает" ничего не доказывает.

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

По поводу "ювелирной точности" через согласование валют.

Там тоже нужен контроль.

EURUSD, USDCAD, EURCAD не являются полностью независимыми инструментами.

Они связаны через кросс-курсы.

Если уровни согласуются между ними, это может быть не отдельное подтверждение, а следствие самой валютной связки.

То есть одно и то же движение может просто отражаться в разных парах.

Поэтому нужно сравнивать:

ваши уровни
случайные уровни
обычные high/low
круглые уровни
каналы, построенные простыми методами

Если ваш метод дает лучше - есть предмет разговора.

Если примерно так же - это визуальная геометрия без статистического преимущества.

Фраза про то, что сегодняшние тренды сформированы далеким прошлым, звучит красиво.

Но для рынка это гипотеза.

Ее нужно проверять не философски, а так:

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

Если работает на новых данных - есть сигнал.

Если работает только на уже известном графике - это постфактум.

Мой тезис прежний:

я не спорю, что визуально это может помогать.

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

Это ручная интерпретация графика.

Она может быть полезной для ориентирования.

Но "подтверждает история" - слабый аргумент.

Нужно:

правило построения
правило реакции
ошибка
дисперсия
out-of-sample
сравнение с случайными уровнями
результат после издержек

Тогда станет видно, там реально перевес или просто красивая геометрия прошлого.
====
Вы совершенно правы. Применяемый для вычисления резонансных цен графический анализ с оценкой направлений микротрендов на глаз (причём исправляя уже глазами и подгоняя под ожидание) — этот процесс, наверное, ещё труднее роботизировать, чем распознавание образов.
Уровни цен — это одно. Нужно увидеть тенденции по подобному графическому анализу — это второе. Уточнение по H4 — ещё труднее, так как это работа с кусочками графика. Но вот здесь, наверное, можно было бы применить коды, чтобы разрезать график и вставлять хотя бы пустые промежутки. Тогда уже по чётким кусочкам без излишеств легче увидеть подтверждение крупных тенденций локально.
Здесь вы сформулировали главную проблему по идентификации форм графика. И в настоящее время я пытаюсь найти формулы, наиболее близко описывающие выявляемые паттерны. Но даже имея готовые модели ключевой закономерности, весьма непросто их согласовать с реальным графиком. Применение индикаторов стандартных отклонений тоже очень ограничено пределами недели. А как тогда торговать в начале недели?
Остаётся единственный способ — это «на глазок», перемещая характерные кусочки графика. Либо сделать опору на ненаправленные ТС — они, кстати, гораздо легче поддаются автоматизации.
===================
 
====
Вы:
«МНК всего лишь... отвечает на вопрос: "Как лучше подогнать функцию под эти данные?"»
Мой ответ:
Так и есть. Именно этим все исследователи и занимаются день и ночь — чтобы загнать исследуемые процессы в понятную, детерминированную, предсказуемую функцию. Иначе говоря, наука занимается способами предсказания будущего. Таков инстинкт выживания.
Но вы говорите, что «для проверки нужен не смысл, а правило». И, конечно же, я вас понимаю как практика, у которого руки горят, чтобы применить и проверить «Святой Грааль» геометрического анализа в действии, избегая ненужных разговоров.
Но ведь чтобы что-то проверять, нужно это получить. То есть восхождения в индукции нам не избежать, чтобы уже оттуда, с высоты полёта, применить искомый и любимый вами дедуктивный метод. Нужно ведь представлять себе образ того, что мы хотим воплотить и проверить в роли ключевой закономерности — «Святого Грааля». А он потому и святой, что является скрытой сущностью, принципом, который нужно открыть.
И большинство трейдеров правильно делают, что сразу хотят разрубить гордиев узел и пытаются решить проблему наскоком, ломая копья, ломая луки (Псалом 45:10).
Но, как всегда, «ошибка вышла, вот о чём молчит наука» (с). И тогда в трейдере просыпается «учёный»: на основании многочисленных проб и ошибок у него рождаются идеи. Так родились многочисленные методы. Перечислим хотя бы некоторые из них, которые на слуху:

вилка Чувашова, волны Эллиотта, уровни Фибоначчи, зоны Фибоначчи, веер Фибоначчи, резонансные точки цена/время Ганна, сетка Ганна, веер Ганна, японские свечи, паттерны, побарный анализ Александра Пурнова (который базируется на классической системе Ричарда Вайкоффа — VSA, Volume Spread Analysis) и т. д.

Получается, что «Святой Грааль» геометрического анализа известен многим трейдерам, так как его проявление при применении даёт результат. И если существует разделение методов торговли на направленные (по историческим тенденциям графиков) и ненаправленные (которым знание истории не требуется), то по поводу первых я с большой долей уверенности скажу, что все они основаны на едином принципе, но выделяют лишь отдельные его особенности.
А чтобы не быть голословным, я могу специально сделать анализ классической системы Ричарда Вайкоффа (VSA — Volume Spread Analysis), на которой базируется побарный анализ Александра Пурнова. Главная слабость этих методов в том, что они требуют наличия истории торгов, которую великий трейдер всех времён и народов Уильям Ганн собирал по всему миру по кусочкам. Но и сегодня дело мало продвинулось, так как нас лишают удовольствия видеть реальные графики без пропусков на выходные. Так что и сегодня приходится склеивать графики по кусочкам, чтобы попытаться узреть возможность и применить любой из этих методов.
Если мы исследуем явление, сопоставляя его в разных ситуациях и сравнивая по аналогии с другими явлениями, то неизбежно начинаем видеть правила, закономерности, поведение которых затем стремимся идеализировать в абстрактных числах и формулах. Не факт, конечно, что идеальные функциональные зависимости «совпадают» с процессом и навязывают свою точность. Да, точность всегда, конечно же, есть, но в известных пределах, допусках. Для этого придумана система допусков, классы точности, ТУ, ГОСТы и знаки качества. А если предмет не соответствует им, то он уже не является тем, чем называется, так как не может быть согласованно применён среди других предметов в соответствии с задумкой инженера-конструктора.
Вот так и мы — инженеры собственной ТС — вынуждены идеализировать поведение цены, чтобы построить сценарий её поведения согласно нашим ожиданиям. И когда мы начинаем видеть закономерность, то стремимся применить наиболее подходящие нам известные функции, подгоняя реальность к идеалу. Этот идеал и является для нас той ниточкой истины, которую мы эксплуатируем, чтобы получить доход. Мы не можем идеал пощупать, но мы его запрягаем, и он нас выводит на реальный результат. Он есть и его нет, как любят констатировать буддисты. Но разве это не магия — ехать на невидимой лошади? Но когда хитрость рынка разгадана, магия исчезает в процессе познания.
=========================
Принял.

Тогда я бы разделил три вещи, которые у вас сейчас смешаны в одно.

Первое - исследование.

Второе - построение уровня.

Третье - торговое решение.

С исследованием все нормально.

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

Здесь я не спорю.

Но когда вы пишете:

"по такому уровню можно торговать уверенно"
"поставил 3 ордера по 20 лотов"
"цена взяла ТП"
"если нырнет под 1.1736, можно смело покупать"

вы уже выходите из области гипотезы.

Вы переходите в область торгового утверждения.

А там критерий другой.

Не красота идеи.

Не “невидимая лошадь”.

А повторяемость.

Одна сделка, даже крупная и успешная, не доказывает точность метода.

Она доказывает только то, что конкретно этот раз рынок дал заработать.

Это важно, но этого мало.

Плохой метод тоже иногда дает хорошую сделку.

Хороший метод тоже иногда дает убыток.

Поэтому вопрос не в том, взяла ли цена ваш ТП один раз.

Вопрос в другом:

что происходит на серии таких уровней?

Вы говорите, что МНК использовался не как доказательство закономерности, а как способ уточнить число по нескольким замерам.

Хорошо.

Тогда главный вопрос:

какова ошибка этого уточнения?

Если есть три замера, значит у них есть разброс.

Если есть разброс, значит есть неопределенность.

Если есть неопределенность, нельзя просто сказать “уровень точный”.

Нужно сказать:

уровень 1.1736
плюс-минус сколько?

1 пункт?
5 пунктов?
20 пунктов?
50 пунктов?

Потому что для трейдинга это принципиально.

Если точность уровня плюс-минус 30 пунктов, а тейк 40 пунктов, то “ювелирность” исчезает.

Если точность плюс-минус 3 пункта — это уже другой разговор.

Вот это и надо показать.

Не философски.

Численно.


Дальше.

Вы говорите, что цена возвращается к этому уровню, значит будет обыгрывать коррекцию и на флэте можно заработать.

Но цена постоянно возвращается к каким-то уровням.

Любой график можно разбить на зоны, к которым цена потом возвращалась.

Нужно заранее определить:

что значит “возвращается”
что значит “обыгрывает”
что значит “флэт”
сколько времени уровень живет
когда уровень считается сломанным
когда гипотеза считается неверной

Без этого уровень невозможно опровергнуть.

А если его невозможно опровергнуть, его невозможно и проверить.

Потому что любое поведение цены можно потом объяснить:

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

Так метод становится слишком гибким.

А слишком гибкий метод всегда красиво объясняет прошлое.

Проблема не в том, что вы ищете “святой грааль”.

Проблема в том, что грааль должен оставить след в цифрах.

Если он реально есть, он не обязан быть понятен сразу.

Но он обязан проявляться на дистанции.

Теперь про 8 валют и “бриллиант”.

Идея согласования интересная.

Но тут есть ловушка.

Основные валютные пары не являются независимыми.

EURUSD, USDCAD, EURCAD и другие кроссы связаны друг с другом математически.

Часть “согласования” может быть не подтверждением метода, а просто следствием валютной связки.

То есть вы можете думать, что получили восемь независимых подтверждений.

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

Это не убивает идею.

Но это требует аккуратности.

Нужно отличать реальное подтверждение от дублирования одного сигнала.

На счет нпуки.

Да, исследователь сначала ищет образ.

Смотрит, сравнивает, подбирает функцию, пытается увидеть форму.

Это нормальный индуктивный этап.

Но наука не заканчивается на “я увидел красивую форму”.

Она начинается там, где форма начинает рисковать быть опровергнутой.

То есть где вы заранее говорите:

если цена сделает вот это — я прав
если цена сделает вот это — я ошибся

Вот этого пока не хватает.

У вас есть сильная визуальная логика.

Но пока мало жестких условий, при которых метод признает ошибку.

А без этого рынок всегда можно переобъяснить задним числом.

Ваш пример с инженерией хороший.

Но инженер не просто строит идеальную модель.

Он задает допуски.

Проверяет нагрузку.

Проводит испытания.

Смотрит, где конструкция ломается.

Вот здесь нужно то же самое.

Для уровня должны быть допуски:

зона касания
срок жизни
допустимый прокол
условие отмены
цель
риск
результат по серии

Тогда это уже не “магия невидимой лошади”.

Тогда это проверяемая конструкция.


Я не отрицаю, что вы могли найти рабочий способ ориентироваться по рынку.

Я не отрицаю, что конкретный уровень мог быть хорошим.

Я не отрицаю, что согласование валют может дать интересный эффект.

Но успешный вход и красивая геометрия еще не доказывают торговый перевес.

Чтобы я понял вашу идею как метод, а не как удачную интерпретацию, мне нужны не новые образы.

Мне нужны 20–30 заранее построенных уровней.

В простом формате:

дата
инструмент
уровень
допуск
направление
цель
условие отмены
срок жизни уровня
результат

И все.

Без разговора про Ганна, Вайкоффа, Фибоначчи, буддизм и невидимых лошадей.

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

А пока я вижу интересную гипотезу.

Но еще не вижу доказанный перевес.
 
====
Вы:
«Если взяты несколько красивых точек на истории, это не статистическая выборка. Это ручной отбор. Дальше идут ошибки модели».
Я:
Согласен. Человек обращает внимание на характерные точки и пытается создать идеализированную модель, подведя наиболее подходящую математическую базу. С одной стороны, это даёт человеку возможность представить возможный вариант, связав его с уже известными ему. С другой стороны, идеализация — это обобщение, индукция. И тогда идеализированная модель уже сама показывает невидимые стороны объекта методом дедукции и часто исправляет погрешности реального воплощения.

Вы:
«Одна ошибка ничего не значит. Нужен массив ошибок. Потом смотрят среднюю ошибку. Если средняя ошибка близка к нулю, это ещё не победа. Поэтому смотрят дисперсию. Дисперсия показывает разброс ошибок вокруг среднего».
Я:
Именно так и есть. Поэтому для определения нужны не только уровни в разных точках времени одного инструмента, но и согласование с другими инструментами — тогда можно достичь наиболее точного результата. Хотя для трейдинга такая точность даже ни к чему. Но составить банк данных по резонансным уровням — задача интересная. Я обычно их теряю, вычисляя лишь к данному торговому эпизоду.
===================
Вот здесь мы наконец пришли к нормальной рабочей точке.

Банк резонансных уровней - это как раз то, что нужно.

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

Сработало - запомнилось.
Не сработало - ушло в шум.
Пересчитали позже - картинка снова стала красивой.

Так статистика не собирается.

Если же фиксировать каждый уровень до движения цены, появится материал для проверки.

И тут важно разделить две вещи.

Согласование с другими инструментами может помочь уточнить уровень.

Но оно не заменяет проверку ошибки.

Это не одно и то же.

Уточнение отвечает на вопрос:

“какой уровень получается после нескольких замеров?”

Проверка отвечает на другой вопрос:

“дает ли этот уровень преимущество после того, как цена пошла дальше?”

Например, вы получили уровень 1.1736.

Хорошо.

Но дальше нужно записать не только сам уровень, а всю конструкцию:

дата расчета
инструмент
таймфрейм
уровень
метод замера
сколько замеров использовано
какой разброс между замерами
какой допуск уровня
срок жизни уровня
что считается реакцией
что считается пробоем
что считается отменой идеи
результат после факта

Вот тогда уровень перестает быть просто красивой линией.

Он становится наблюдением.

И эти наблюдения уже можно считать.

Самый важный момент - разброс замеров.

Если у вас три замера дают примерно одно и то же число, это сильнее.

Если три замера дают широкий коридор, то уровень не “точный”, а зональный.

Условно:

замеры дали 1.1734, 1.1736, 1.1738 - уровень компактный.

А если:

1.1710, 1.1736, 1.1765 - это уже не ювелирная цена, а широкая зона.

Тогда и торговать ее надо как зону, а не как точку.

Вот здесь дисперсия как раз и нужна.

Она не для красоты.

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


По поводу идеализации я с вами согласен.

Человек сначала видит характерные точки, потом пытается собрать из них модель.

Так рождается гипотеза.

Но дальше есть граница.

Пока модель объясняет уже видимый график - это индукция и интерпретация.

Когда модель заранее дает уровень, который потом фиксируется без перерисовки - это уже проверяемый прогноз.

Вот этот переход и нужен.

Не надо сразу искать “грааль”.

Надо сделать проще.

Собрать 50–100 уровней в банк.

Не задним числом.

А по мере появления.

Формат может быть примитивный:

уровень №1
дата расчета: ___
пара: ___
уровень: ___
допуск: ___ пунктов
направление ожидания: ___
логика: ___
срок жизни: ___ свечей / дней
результат: отбой / пробой / флэт / не дошла
максимальная реакция: ___ пунктов
максимальный уход против: ___ пунктов

И все.

Через месяц-два уже будет не разговор о впечатлениях, а сырой материал.

Там сразу станет видно:

уровни действительно притягивают цену
или цена реагирует не чаще, чем на обычные зоны
точность реальная
или она появляется только после пересчета
работает один инструмент
или согласование валют дает прибавку
есть перевес
или есть красивая геометрия

Вот это был бы сильный следующий шаг.

Не спорить о том, существует ли скрытая структура.

А начать оставлять следы этой структуры в данных.

Если она есть - банк уровней ее покажет.

Если ее нет - банк уровней тоже это покажет.

И это будет честнее, чем каждый раз заново обсуждать один удачный торговый эпизод.
 
====

У меня знакомая есть,

тексты написанные за вас ваши корешем ЫЫ..мы прочитали...но теперь о главном
как этот набор галиматьи...с деньгами то связана....где ставить ордера и где скирдовать зелень?

иначе говоря..где тут про деньги.зин(с)
 
====
Здесь вы так глубоко всё расписали, как я никогда и не делал. Конечно, для написания кода требуются конкретные вещи, которые во многих случаях трейдер не может предоставить.
Например, как создать автомат, когда цена возвращается и снова ныряет под резонансный уровень? А. Пурнов сейчас дал бы характеристику такого поведения цены на 40 страниц текста. Ещё три раза по столько нужна описательная часть с выводами. И ещё хотя бы 40 страниц с инструкциями рекомендательного характера с опорой на квалификацию обученного трейдера. И в конечном счёте всё решает регулировщик с жезлом: палка смотрит влево — едь как королева.
Но не всё так безнадёжно.
Пример. Я рассматриваю вариант коллективной работы со счетами. На смене всегда три человека. Если двое выдают противоречивые решения, то третий, старший смены, выполняет роль арбитра. Для работы 24/7 нужно иметь 20 человек в штате, где 6 человек — это скамейка запасных, так как для условий трудового законодательства требуется 14 человек. Значит, 6 человек могут выполнять другую работу, кроме оперативного трейдинга. Они могут снабжать аналитикой и обрабатывать её, которую сами же будут применять, выходя на оперативное дежурство. Они могут заниматься разработками поступивших идей. Вот это и есть тот момент, когда можно думать об автоматизации и тестировании. А кто-то может быть откомандирован для получения дополнительной квалификации.
Но даже сейчас, по ходу дела, в беседах мы можем увидеть точки пересечения интересов.
=================
Вот здесь важное уточнение.

Я не предлагаю сразу писать торгового робота.

Это действительно может быть невозможно, если метод держится на глазомере, опыте и контексте.

Но тогда проверять нужно не “автомат”, а решения трейдера.

Это другой уровень.

Если человек говорит:

“я вижу, что цена нырнула под резонансный уровень и ведет себя определенным образом”

то не обязательно сразу превращать это в код.

Достаточно начать фиксировать решения до результата.

Не после.

До.

Например:

дата
инструмент
уровень
что увидели
ожидание
срок жизни идеи
при каких условиях идея отменяется
уверенность от 1 до 10
результат после факта

Вот и все.

Это уже создает материал.

Не для робота.

Для проверки самого подхода.

По поводу Пурнова и 40 страниц описания.

Текст на 40 страниц может быть полезен для обучения.

Но для проверки все равно нужен сжатый критерий.

Иначе любой эпизод можно потом объяснить словами.

А рынок любит такие методы, где после факта всегда можно сказать:

“ну здесь был другой контекст”.

По поводу коллективной работы.

Идея со сменами интересная.

Но она решает организационную задачу, а не статистическую.

Три человека на смене не создают перевес сами по себе.

Они могут:

снизить субъективную ошибку
дать второе мнение
отфильтровать слабые входы
собирать аналитику
вести журнал решений

Но если базовый метод не имеет перевеса, коллектив просто начнет коллективно ошибаться.

Более того, арбитр может стать местом, где слабый сигнал будет прикрываться авторитетом.

Двое спорят.

Третий решил.

Но кто сказал, что третий прав?

Это тоже надо считать.

Например:

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

Вот это уже ценные данные.

Тогда коллектив становится не просто “дежурством”, а исследовательской машиной.

Каждый трейдер оставляет след.

Каждое решение имеет метку.

Каждая идея потом проверяется.

И через время видно:

кто реально видит рынок
какие ситуации работают
где метод силен
где начинается фантазия
где лучше не торговать вообще

То есть автоматизация может быть не в том, чтобы робот нажимал Buy/Sell.

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

Это проще.

И это честнее.

Поэтому я бы начал не с кода.

Я бы начал с журнала.

Если за месяц накопить хотя бы 50–100 таких наблюдений, уже появится предметный разговор.

Без мистики.

Без спора “можно автоматизировать или нельзя”.

Просто:

вот сигналы
вот решения
вот результат
вот ошибки
вот повторяемость

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

Может быть, весь метод не автоматизируется.

Но отдельные части - да.

Например:

поиск уровней
фиксация касаний
оценка возврата к уровню
подсчёт реакции
сравнение трейдерских решений
расчёт статистики по журналу

Вот здесь я вижу нормальную точку пересечения.

Не спорить о “святом граале”.

А начать собирать следы решений.

Если метод живой - он проявится в журнале.

Если нет - журнал быстро покажет, что мы просто красиво описывали рынок задним числом.
 
====
Вы совершенно правы. Применяемый для вычисления резонансных цен графический анализ с оценкой направлений микротрендов на глаз (причём исправляя уже глазами и подгоняя под ожидание) — этот процесс, наверное, ещё труднее роботизировать, чем распознавание образов.
Уровни цен — это одно. Нужно увидеть тенденции по подобному графическому анализу — это второе. Уточнение по H4 — ещё труднее, так как это работа с кусочками графика. Но вот здесь, наверное, можно было бы применить коды, чтобы разрезать график и вставлять хотя бы пустые промежутки. Тогда уже по чётким кусочкам без излишеств легче увидеть подтверждение крупных тенденций локально.
Здесь вы сформулировали главную проблему по идентификации форм графика. И в настоящее время я пытаюсь найти формулы, наиболее близко описывающие выявляемые паттерны. Но даже имея готовые модели ключевой закономерности, весьма непросто их согласовать с реальным графиком. Применение индикаторов стандартных отклонений тоже очень ограничено пределами недели. А как тогда торговать в начале недели?
Остаётся единственный способ — это «на глазок», перемещая характерные кусочки графика. Либо сделать опору на ненаправленные ТС — они, кстати, гораздо легче поддаются автоматизации.
===================
Вот здесь, кажется, мы вышли на практическое место.

Я бы не пытался сразу роботизировать саму “интуицию глаза”.

Это действительно тяжелый слой.

Но можно роботизировать не решение, а среду, в которой это решение принимается.

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

А сделать инструмент, который убирает грязь с графика и сохраняет результат анализа.

Первый слой - календарная шкала.

Если выходные искажают геометрию, значит надо сначала привести график к нормальной временной сетке:

H4 должен идти по календарю
пропуски выходных должны быть видны
пустые бары должны быть пустыми
цена не должна “склеиваться” там, где торгов не было

Это уже можно сделать кодом.

Не для прогноза.

Для чистого холста.

Второй слой - ручная разметка.

Пусть мы все еще видит “на глаз”.

Но наша разметка должна сохраняться:

какой кусок взят
откуда перенесен
куда перенесен
на сколько баров сдвинут
какой уровень получился
какая была логика
что ожидалось дальше

Тогда даже ручной метод начинает оставлять след.

Третий слой - сравнение фрагментов.

Здесь уже можно пытаться искать похожие куски графика.

Не идеально.

Но хотя бы грубо:

по форме движения
по наклону
по волатильности
по длине импульса
по глубине отката
по времени формирования

То есть код не обязан “понимать рынок”.

Он может просто находить похожие формы и показывать их трейдеру.

А решение остается за человеком.

Это нормальная промежуточная модель:

машина ищет
человек отбирает
журнал фиксирует
статистика проверяет

По поводу “на глазок”.

Я бы не списывал это сразу в мусор.

Многие методы сначала существуют именно так.

Глаз видит быстрее, чем формула.

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

Поэтому глаз можно оставить.

Но его нужно дисциплинировать журналом.

Не так:

“я увидел, потом цена подтвердила”.

А так:

“я увидел, записал, зафиксировал, потом проверил”.

Это уже другой уровень.

По поводу начала недели.

Тут как раз видно ограничение стандартных отклонений.

Если индикатор живет только внутри недели, а рынок после выходных меняет состояние, значит нужен отдельный режим:

конец недели - один режим анализа
понедельник - режим переоценки
после первых N баров - повторная фиксация уровней

То есть не пытаться одним индикатором закрыть всю структуру.

А разделить рынок на режимы.

Пятница - одно состояние.
Понедельник - другое.
Середина недели - третье.

Это уже ближе к реальности.

По ненаправленным ТС согласен.

Они легче автоматизируются, потому что там проще формализовать поведение:

диапазон
возврат к среднему
границы
прокол
откат
частота касаний

В направленных системах больше контекста.

Там часто решает не сам уровень, а то, как цена к нему пришла.

Поэтому я бы сделал так:

не выбирать между “глазом” и “автоматом”.

Собрать гибрид.

Код делает грязную работу:

вставляет пустые промежутки
нормализует график
сохраняет разметку
ищет похожие фрагменты
считает результат

Человек делает то, что пока плохо формализуется:

видит контекст
отбрасывает мусор
оценивает структуру
принимает решение

И вот это уже можно развивать.

Не “робот вместо трейдера”.

А лаборатория для трейдера.

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

Примерно так: код новым сообщением.

Код делает две вещи:

Вставляет пустые бары в календарную сетку.

Проверяет заранее записанные уровни по простому правилу касания, цели и стопа.

Это не торговая система.

Но это уже убирает один источник искажения.

Дальше можно на этот чистый график накладывать ваши куски, уровни и каналы.

Главное - не пытаться сразу поймать всю “ключевую закономерность”.

Лучше идти слоями.

Сначала нормальная временная сетка.
Потом сохранение ручной разметки.
Потом банк фрагментов.
Потом сравнение похожих ситуаций.
Потом статистика по результатам.

Вот там уже появится материал, с которым можно работать предметно.
 
Python:
[CODE=python]

import pandas as pd

import numpy as np





def load_prices(path: str, symbol: str) -> pd.DataFrame:

    """

    CSV должен иметь колонки:

    time, open, high, low, close



    time — дата и время свечи

    """

    df = pd.read_csv(path)

    df["time"] = pd.to_datetime(df["time"])

    df["symbol"] = symbol

    df = df.sort_values("time")

    return df





def add_calendar_gaps(df: pd.DataFrame, timeframe: str = "4h") -> pd.DataFrame:

    """

    Приводит график к календарной шкале.

    Если свечи нет - вставляется пустой бар.

    """

    symbol = df["symbol"].iloc[0]



    df = df.copy()

    df = df.set_index("time")



    full_index = pd.date_range(

        start=df.index.min(),

        end=df.index.max(),

        freq=timeframe

    )



    out = df.reindex(full_index)

    out["symbol"] = symbol

    out["is_empty_bar"] = out["open"].isna()

    out.index.name = "time"



    return out.reset_index()





def test_levels(

    prices: pd.DataFrame,

    levels: pd.DataFrame,

    pip_size: float = 0.0001,

    default_touch_pips: float = 5,

    default_target_pips: float = 30,

    default_stop_pips: float = 20,

    default_horizon_bars: int = 24

) -> pd.DataFrame:

    """

    levels CSV должен иметь колонки:



    time              когда уровень был построен

    symbol            инструмент

    level             цена уровня

    direction         buy / sell / neutral

    touch_pips        допуск касания

    target_pips       цель

    stop_pips         допустимый уход против

    horizon_bars      срок жизни идеи в свечах



    Главное:

    уровень должен быть записан ДО будущего движения.

    """



    results = []



    prices = prices.copy()

    levels = levels.copy()



    prices["time"] = pd.to_datetime(prices["time"])

    levels["time"] = pd.to_datetime(levels["time"])



    prices = prices.sort_values("time")

    levels = levels.sort_values("time")



    for _, lvl in levels.iterrows():

        symbol = lvl["symbol"]

        t0 = lvl["time"]

        level = float(lvl["level"])

        direction = lvl.get("direction", "neutral")



        touch_pips = float(lvl.get("touch_pips", default_touch_pips))

        target_pips = float(lvl.get("target_pips", default_target_pips))

        stop_pips = float(lvl.get("stop_pips", default_stop_pips))

        horizon_bars = int(lvl.get("horizon_bars", default_horizon_bars))



        future = prices[

            (prices["symbol"] == symbol) &

            (prices["time"] > t0) &

            (prices["is_empty_bar"] == False)

        ].head(horizon_bars)



        if future.empty:

            continue



        touch_zone = touch_pips * pip_size

        target_dist = target_pips * pip_size

        stop_dist = stop_pips * pip_size



        touched = False

        touch_time = None

        outcome = "no_touch"

        max_favorable = 0.0

        max_adverse = 0.0



        for _, bar in future.iterrows():

            high = bar["high"]

            low = bar["low"]



            if pd.isna(high) or pd.isna(low):

                continue



            if not touched:

                touched = (low - touch_zone) <= level <= (high + touch_zone)



                if touched:

                    touch_time = bar["time"]



            if touched:

                if direction == "buy":

                    favorable = high - level

                    adverse = level - low



                    max_favorable = max(max_favorable, favorable)

                    max_adverse = max(max_adverse, adverse)



                    if low <= level - stop_dist:

                        outcome = "loss"

                        break



                    if high >= level + target_dist:

                        outcome = "win"

                        break



                elif direction == "sell":

                    favorable = level - low

                    adverse = high - level



                    max_favorable = max(max_favorable, favorable)

                    max_adverse = max(max_adverse, adverse)



                    if high >= level + stop_dist:

                        outcome = "loss"

                        break



                    if low <= level - target_dist:

                        outcome = "win"

                        break



                else:

                    # neutral — просто смотрим, была ли реакция от уровня

                    max_favorable = max(max_favorable, abs(high - level), abs(level - low))

                    outcome = "touched"



        if touched and outcome == "no_touch":

            outcome = "expired"



        results.append({

            "time": t0,

            "symbol": symbol,

            "level": level,

            "direction": direction,

            "touch_time": touch_time,

            "outcome": outcome,

            "max_favorable_pips": round(max_favorable / pip_size, 1),

            "max_adverse_pips": round(max_adverse / pip_size, 1),

            "horizon_bars": horizon_bars

        })



    return pd.DataFrame(results)





def summarize_results(results: pd.DataFrame) -> None:

    if results.empty:

        print("Нет результатов для анализа.")

        return



    print("Количество уровней:", len(results))

    print()

    print("Распределение исходов:")

    print(results["outcome"].value_counts())

    print()

    print("Средний ход в пользу уровня, пунктов:")

    print(round(results["max_favorable_pips"].mean(), 2))

    print()

    print("Средний ход против уровня, пунктов:")

    print(round(results["max_adverse_pips"].mean(), 2))





# пример использования

if __name__ == "__main__":

    prices = load_prices("EURUSD_H4.csv", symbol="EURUSD")



    prices_with_gaps = add_calendar_gaps(prices, timeframe="4h")

    prices_with_gaps.to_csv("EURUSD_H4_calendar.csv", index=False)



    levels = pd.read_csv("levels_journal.csv")



    results = test_levels(

        prices=prices_with_gaps,

        levels=levels,

        pip_size=0.0001

    )



    results.to_csv("levels_test_results.csv", index=False)



    summarize_results(results)
[/CODE]
 
забавная ветка образовалась

битва двух ЫЫ за то кто ЫЫстее :ROFLMAO: :ROFLMAO: :ROFLMAO:
 
тексты написанные за вас ваши корешем ЫЫ..мы прочитали...но теперь о главном
как этот набор галиматьи...с деньгами то связана....где ставить ордера и где скирдовать зелень?

иначе говоря..где тут про деньги.зин(с)
В вашем сообщении один нормальный вопрос.

Как это связано с деньгами?

Все.

Остальное - упаковка из насмешек, “ЫЫ”, “галиматьи” и попытки выглядеть остроумно.

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

Что за детский сад?

Взрослые мужчины, а формат один и тот же:

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

Зато можно покривляться.

Если вопрос про деньги - он задается просто:

где уровень
где вход
где отмена идеи
где цель
какой риск
какая статистика по серии
что остается после издержек

Вот это предметный разговор.

А “где зелень, Зин” - это не аргумент.

Это способ спрятать отсутствие содержания за базарной подачей.

Можно не соглашаться с автором.
Можно жестко требовать конкретики.
Можно считать метод слабым.

Но тогда критикуйте метод.

Не устраивайте цирк вокруг человека.

Пока из вашего сообщения видно только одно:

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

И писал, что есть люди, которые могут очень быстро перебрать кучу ключей в кармане, и почти мгновенно открыть дверь, а есть другие люди.

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

Первый - это те кто сам не способен, а может только имитировать мысль быстрым перебором чужих решений, и это новомодный ИИ, а второй это интеллект человека, который может решить задачу сам.

(с)
 
забавная ветка образовалась

битва двух ЫЫ за то кто ЫЫстее :ROFLMAO: :ROFLMAO: :ROFLMAO:
Снова без содержания.

Вы уже второй раз пытаетесь заменить мысль звуками, смайлами и “ЫЫ”.

Проблема в том, что это не делает вас выше обсуждения.

Это просто показывает, что войти в него по существу вы не можете.

Здесь обсуждают метод, проверку, статистику, применимость, слабые места, деньги.

Вы приносите только хихиканье.

Если есть что сказать по теме - скажите.

Где ошибка?
Что не так в логике?
Какой критерий лучше?
Как проверить иначе?
Где ваш рабочий вариант?

Если этого нет, то все просто:

вы не участвуете в споре.

Вы стоите сбоку и шумите.
Причем не остро.
Не точно.
Не смешно.

Просто шумите.

Ветка действительно забавная.

Но не по той причине, которую вы думаете.

Форум великовозростных умников)
 
Снова без содержания.

Вы уже второй раз пытаетесь заменить мысль звуками, смайлами и “ЫЫ”.

Проблема в том, что это не делает вас выше обсуждения.

Это просто показывает, что войти в него по существу вы не можете.

Здесь обсуждают метод, проверку, статистику, применимость, слабые места, деньги.

Вы приносите только хихиканье.

Если есть что сказать по теме - скажите.

Где ошибка?
Что не так в логике?
Какой критерий лучше?
Как проверить иначе?
Где ваш рабочий вариант?

Если этого нет, то все просто:

вы не участвуете в споре.

Вы стоите сбоку и шумите.
Причем не остро.
Не точно.
Не смешно.

Просто шумите.

Ветка действительно забавная.

Но не по той причине, которую вы думаете.

Форум великовозростных умников)
простите...но ваши тексты сами вы пишите или ЫЫ:p

потому что в среднем на написание вашего текста...берем предыдущие...требуется от 15 до 23 минут в среднем...и так тексты составляет только ЫЫ бексплатный :ROFLMAO:
то есть тот самый...что нищедрищенский для хомячков


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

так что пишите..пишите..типор сами...но других за наивных то зачем считать ;)
 
Есть такая книжка я, там автор рассказывал про открывание дверей.

И писал, что есть люди, которые могут очень быстро перебрать кучу ключей в кармане, и почти мгновенно открыть дверь, а есть другие люди.

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

Первый - это те кто сам не способен, а может только имитировать мысль быстрым перебором чужих решений, и это новомодный ИИ, а второй это интеллект человека, который может решить задачу сам.

(с)
Красивая притча.

Только вывод у вас мимо.

В споре важен не способ, которым человек достал ключ.

Важны три вещи:

замок есть?
ключ подходит?
дверь открылась?

Если аргумент точный - он работает.

Если аргумент слабый - он разваливается.

И неважно, кто помог его сформулировать: книга, калькулятор, таблица, код, ИИ или другой человек.

Вы опять уходите от темы в сторону происхождения текста.

Это удобный ход.

Не разбирать мысль.
Не отвечать по сути.
Не показывать ошибку.
Не предлагать критерий проверки.

Просто сказать: “это не ваше, это ИИ”.

Но это не опровержение.

Это попытка обесценить форму, когда нечего сказать по содержанию.

Если вы человек, который “видя замок, мгновенно создает ключ”, тогда покажите ключ.

Где ошибка в логике?
Какой критерий проверки лучше?
Как связать метод с деньгами?
Как отделить рабочий уровень от красивой разметки?
Как доказать перевес?

Вот это был бы интеллект.

А пока вы не создаете ключ.

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

Только вывод у вас мимо.

В споре важен не способ, которым человек достал ключ.

Важны три вещи:

замок есть?
ключ подходит?
дверь открылась?

Если аргумент точный - он работает.

Если аргумент слабый - он разваливается.

И неважно, кто помог его сформулировать: книга, калькулятор, таблица, код, ИИ или другой человек.

Вы опять уходите от темы в сторону происхождения текста.

Это удобный ход.

Не разбирать мысль.
Не отвечать по сути.
Не показывать ошибку.
Не предлагать критерий проверки.

Просто сказать: “это не ваше, это ИИ”.

Но это не опровержение.

Это попытка обесценить форму, когда нечего сказать по содержанию.

Если вы человек, который “видя замок, мгновенно создает ключ”, тогда покажите ключ.

Где ошибка в логике?
Какой критерий проверки лучше?
Как связать метод с деньгами?
Как отделить рабочий уровень от красивой разметки?
Как доказать перевес?

Вот это был бы интеллект.

А пока вы не создаете ключ.

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

мои ИИ в голос ржут с ваших побасенок первого класса церковно-приходской школы из деревни гадюкино :ROFLMAO:
 
  • Love
Реакции: 0...
простите...но ваши тексты сами вы пишите или ЫЫ:p

потому что в среднем на написание вашего текста...берем предыдущие...требуется от 15 до 23 минут в среднем...и так тексты составляет только ЫЫ бексплатный :ROFLMAO:
то есть тот самый...что нищедрищенский для хомячков


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

так что пишите..пишите..типор сами...но других за наивных то зачем считать ;)
Боже.. Я ЫЫ.

Вы ЫЫ.

Все ЫЫ

Или нет...

Вы опять обсуждаете не тему, а способ написания текста.

Это уже показатель.

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

А выяснять, кто сколько минут пишет сообщение, - это не аргумент.

Про “у меня стоит специальный комп под ИИ” тоже не понял, к чему это.

Хорошо. Стоит.
И что это доказывает по теме ветки?

Ничего.

Вы пытаетесь перевести разговор в плоскость:

“сам написал / не сам написал”.

Но это слабая линия.

Потому что мысль оценивается не по тому, как она набрана, а по тому, выдерживает ли она проверку.

Текст может быть написан человеком и быть пустым.
Текст может быть собран с помощью инструмента и быть точным.

Важен не инструмент.

Важен результат.

А результат простой:

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

Пока вы не спорите.

Вы уходите в сторону.

То в “ЫЫ”.
То в смайлы.
То в тайминг написания.
То в рассказы про биомедицину и фармакологию.

К теме это не имеет отношения.

Поэтому предлагаю проще.

Хотите обсуждать рынок - обсуждаем рынок.

Хотите обсуждать ИИ - создайте отдельную ветку.

Здесь вопрос конкретный:

как проверить, есть ли у метода автора практический перевес.

Все остальное - шум.
 
пишите пишите...ваш и автора ветки ЫЫ такие забавные:eek:

мои ИИ в голос ржут с ваших побасенок первого класса церковно-приходской школы из деревни гадюкино :ROFLMAO:
Вы уже несколько сообщений подряд не можете выйти за пределы “ЫЫ”, смайлов и деревенских острот.

По теме - ноль.

Ни одного возражения.
Ни одной проверки.
Ни одной мысли.
Ни одного критерия.
Ни одного содержательного вопроса.

Только попытка высмеять форму, потому что до содержания вы так и не дошли.

Считайте, что вас услышали.

ИИ у вас смеются.
Вы смеетесь.
Все посмеялись.

Теперь по существу говорить вам, похоже, нечего.

На этом диалог с вами можно закрыть.
 
Боже.. Я ЫЫ.

Вы ЫЫ.

Все ЫЫ

Или нет...

Вы опять обсуждаете не тему, а способ написания текста.

Это уже показатель.

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

А выяснять, кто сколько минут пишет сообщение, - это не аргумент.

Про “у меня стоит специальный комп под ИИ” тоже не понял, к чему это.

Хорошо. Стоит.
И что это доказывает по теме ветки?

Ничего.

Вы пытаетесь перевести разговор в плоскость:

“сам написал / не сам написал”.

Но это слабая линия.

Потому что мысль оценивается не по тому, как она набрана, а по тому, выдерживает ли она проверку.

Текст может быть написан человеком и быть пустым.
Текст может быть собран с помощью инструмента и быть точным.

Важен не инструмент.

Важен результат.

А результат простой:

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

Пока вы не спорите.

Вы уходите в сторону.

То в “ЫЫ”.
То в смайлы.
То в тайминг написания.
То в рассказы про биомедицину и фармакологию.

К теме это не имеет отношения.

Поэтому предлагаю проще.

Хотите обсуждать рынок - обсуждаем рынок.

Хотите обсуждать ИИ - создайте отдельную ветку.

Здесь вопрос конкретный:

как проверить, есть ли у метода автора практический перевес.

Все остальное - шум.
" Исследование стартапа Oumi, проведённое по заказу издания The New York Times, показало, что ИИ-помощник Gemini в составе Google ежедневно выдаёт миллионы неверных ответов.

В автономном режиме Gemini 3 ошибается в 28% случаев. После выхода версии 3 расхождения между ответами и источниками в интернете выросли с 37% до 56%.

ИИ легко поддается манипуляциям: заведомо ложная информация, опубликованная в блоге, уже через сутки использовалась Gemini как достоверная.


================================


кстати бесплатный ЫЫ дал примерно такой же ответ как и ваш ЫЫ

так что браво вам...нашли себе собутыльника

============

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

грубо говоря...большие биологические и фармацевтические калькуляторы

вот выводы мы сапиенсы делам сами
 

Посмотрели (241) Посмотреть

Назад
Верх