Сделал я как-то такую штуку ... - страница 13

 
Prival:

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

  1. есть участок истории, который описывается полиномом 3-й степени
  2. есть условие непрерывности производных первой и второй степени
  3. это единственная функция которая «правильно» интерполирует неизвестную нам функцию на заданном отрезке

это как бы определение, кубического сплайна. Теперь просто допустим, что мы анализируем движение какого то объекта (это может быть, любой объект, самолет, машина, валюта…)

Мы с помощью этого алгоритма на заданном участке истории, подберем функцию (единственную, лучше нет (хотя в этом я сомневаюсь)) у которой есть скорость и ускорение. Нам остается только предположить, что некоторое время объект будет двигаться с той же скоростью и ускорением. Экстраполируем. И контролируем невязку (ошибку экстраполяции). Дальше варианты, можем с поступлением новых данных это делать, а можно задать порог, когда невязка превысила заданную величину, тогда пересчитывать.

З.Ы. может я и не прав, но мне кажется в этом что то есть и именно физика…

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

Фурье еще лучше подберёт. Борьба за количество оцениваемых параметров идёт? Или физический смысл модели учитывается?

Давайте вернемься может к доске Гальтона? ;)

А гвоздики будут соответствовать уровням и масштабу целевых (возможных) уровней "игроков".

Пятизнак сильно изменил картину финансового мира. И я думаю, что именно эта разномасштабность (во времени и в цене) "гвоздей" на отскок/ пробой и дает при сложении двух и более случайных блужданий в собственных координатных сетках - "толстохвостость" в наблюдаемых нами распределениях.

Прошу простить, за очередное бесцеремонное вмешательство в неспешную беседу учёных мужей. ;)

-----

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

 

Пожалуй вывод об отсутствии особого интереса к обсуждению предыдущего поворота темы не будет поспешным :).

Рассуждая логически, если бы кто-то получил соответствующие статданные и оценил бы их как бесперспективные, он бы почти наверняка их здесь выложил :). Таким образом, вероятнее всего никто статистику по теме получить не пытался. Если же кто-то пытался, скорее всего результат оказался таким, что он предпочёл о нём помалкивать :).


Тем временем в моей голове развелись новые мысли :). Автоматическая разметка практически никогда не выглядит идеальной. А что если делать гибридную разметку? То есть использовать автоматичекую в качестве рыбы и править её вручную. Конечно сколько нибудь значимую статистику по такому гибридному зигзагу (например) сможет набрать только необыкновенно трудолюбивый человек :). Но вот подправить несколько сегментов, по которым скрипт потом нарисует всякие тренды и уровни - это вполне реально.

Опять же, поскольку всё уже придумано до нас, наверняка что-то в этом направлении делалось, наверное стоило бы поискать. Но мне проще и быстрее сделать какие-то простые вещи самому. За гибридный зигзаг я правда взяться пока не решился, а вот скрипт для нанесения на график эквидистантных уровней сваял. Точнее сначала я сваял шаблон для выращивания подобных гибридов (sanyooooook , кстати, помог подщлифовать), ну а затем вырастил из него вышеупомянутого гибрида. Волею обстоятельств они оказались прикреплены к предыдущему посту, там их и можно взять :). Шаблон уже немного не тот, что там.


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


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


P.S. Забыл предупредить: после удаления скрипта линии останутся, именно для оставления после себя разметки он и предназначен.

Ну и картинку заодно добавлю


 

Поспешны выводы о неуспешности.

Имхо.

Сказано (и показано!) уже и так много. Просто митрофанушек тоже много...

;)

 
Sorento:

Поспешны выводы о неуспешности.

А вывода о неуспешности как раз и не было, была констатация факта отсутствия дискуссии :). Успешность - неуспешность это зависит от степени реализации цели. Если цель, скажем, раскрутить себя как поп-трейдера то это конечно неуспех. А если цель, скажем, нечто вроде разведки или поиска, то ситуация вполне штатная. Хотя больший урожай не помешал бы :). Ну а если цель, скажем, послать какой-то мессидж, то она выполнена вполне успешно.

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

 

Кстати, к аналогии с доской Гальтона. Вот это я сделал скриптом утром на H4


А это результат переключения на М1, момент - текущий


Действительно есть впечатление что идёт точно по гвоздикам.


P.S. Кстати, заодно получилась и иллюстрация одного из приёмов использования скрипта. Другой может состоять в ручном указании уровня в свойствах объекта, Таким образом, кстати, очень легко разметить обсуждавшиеся выше "круглые" уровни, скажем в среднюю линию заносим цену типа 00, а в соседнюю тонкую - ближайшую цену типа 50. Или типа 10, по вкусу.

 

Доработал слегка софт. Теперь это серия скриптов, в EquLevelsB базой является нижний уровень, в EquLevelsM - средний, в EquLevelsT - верхний.

Кроме того добавлен скрипт для удаления разметки, сделанной скриптами этой серии. В принципе он годится для удаления любых объектов с именами типа префикс+номер. При N=0 он удаляет номера от 0 до первого пропуска в нумерации. То есть если есть пропуски, нужно просто задать N побольше.

Во все скрипты добавлен параметр, позволяющий задать префикс для имени объектов.


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


P.S. Похоже пора опять в режим "ни-гу-гу" :)

Файлы:
 

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

 
Vitya:

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

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

Скажем вариант, предложенный Привалом, достаточно близко может быть воспризведён приблизительно так:

Ставим стоп-ордера на ближайшие дозволенные стоплевелом круглые уровни (для бая на ближайший сверху, для селла на ближайший снизу), Как только какой-то один сработал, ждём пока начнётся новый минутный бар и сразу ставим вместо сработавшего аналогичный новый стоп-ордер.

В блоке сопровождения ордеров проверяем две вещи:

Для сработавших ордеров разницу между текущим временем и временем открытия, при превышении условия - закрываем.

Для отложенников - возможность переноса на предыдущий круглый уровень(для бая вниз, для селла вверх). То есть механизм типа трейлинг стопа.

Всё!

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

    int ILvl = Bid*100;
    double DownLvl = NormalizeDouble(0.01*ILvl,Digits);

Ближайший сверху

    double UpLvl = NormalizeDouble(DownLvl+0.01,Digits);
 

я этим особо не интересовался, но как мне кажется на фунте уровни кратные 50 будут отрабатывать хуже чем на остальных валютах.... причина этому то что страйк по кабелю равен 100 пипсам, а по остальным валютам 50, может кто мне подскажет так это или нет ?

И внесу некую сумятицу в стройные ряды - вот картинки, может быть они и не в тему, но как мне кажется что то в них есть

на графиках средний размах и частота выпадения свинга ЗЗ по символу и ТФ, дискретность изменения 5 пип.

В аттаче архив с файлами и скрипт который их делает..

Файлы:
zz.zip  24 kb
 
xrust:

1. я этим особо не интересовался, но как мне кажется на фунте уровни кратные 50 будут отрабатывать хуже чем на остальных валютах.... причина этому то что страйк по кабелю равен 100 пипсам, а по остальным валютам 50, может кто мне подскажет так это или нет ?

2. И внесу некую сумятицу в стройные ряды - вот картинки, может быть они и не в тему, но как мне кажется что то в них есть

на графиках средний размах и частота выпадения свинга ЗЗ по символу и ТФ, дискретность изменения 5 пип.

1. Могу только сказать, что гистограмма со стр. 11 для фунта близка к гистограмме для канадца, а вот для евро есть впечатление, что эффект выражен более чётко.

2. По картинкам:

Я не уверен что всё до конца понял в исходниках, может стоило и подробнее на словах объяснить.

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

С ходу могу сказать следующее:

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

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

Таким образом, имхо, всё выглядит довольно ожидаемо. Или я чего-то не заметил?

Причина обращения: