Алгоритм поиска линейного синтетика хелп

 
Вообщем занимаюсь кодингом на python и мне поступил заказ написать алгоритм поиска синтетического линейного синтетика , желательно с выбором угла или наиболее растущий /падающий похожий на то что на скрине


в наличии подкачка истории котировок и полная конвертация их в долларовое движение на 1 лот, пытался написать алгоритм холодно/горячо + бинарный поиск (крутим лоты на 50% и проверяем среднеквадратичная ошибка увеличилась или уменьшилась и крутим дальше 50%,25%,12.5% и ТД)  но при тесте его понял что он работает не оч хорошо, подскажите толковый быстрый алгоритм поиска, не брутить же...

Документация по MQL5: Операции с массивами / ArrayBsearch
Документация по MQL5: Операции с массивами / ArrayBsearch
  • www.mql5.com
ArrayBsearch - Операции с массивами - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Люблю такие задачи и подобные идеи. Есть люди, которые решая какие-то такие задачи, из своего багажа достают какие-то научные методы с фамилиями в названиями, я обычно велосипеды люблю изобретать свои). Самое простое - начать с "каждый с каждым" - берем окно, на нем через все возможные комбинации точек графика проводим линию и оцениваем каждую, потом ранжируем по оценочному критерию, находим лучшую. Тут все понятно, но не быстро.


Сокращать время можно уменьшив окно, например или проредив точки, например, брать не все точки для построения прямых, а каждую n-ю. Даже если каждую вторую, это уже в 4 раза меньше вычислений, а точность по идее не сильно падает.


Тут порисечить надо. Можно сильно разрежать точки, например, начать с 1 из 10. Потом как-то оценить через какие точки проходят прямые с лучшими метриками и вокруг них в окрестностях уже все точки каждый с каждым проверить или типа того что-то.


Но я думаю, уже что-то подобное закодено. Думаю надо искать по ключевым словам "линейная регрессия" или типа того что-то.

 
Алексей КоКоКо:
Вообщем занимаюсь кодингом на python и мне поступил заказ написать алгоритм поиска синтетического линейного синтетика , желательно с выбором угла или наиболее растущий /падающий похожий на то что на скрине


в наличии подкачка истории котировок и полная конвертация их в долларовое движение на 1 лот, пытался написать алгоритм холодно/горячо + бинарный поиск (крутим лоты на 50% и проверяем среднеквадратичная ошибка увеличилась или уменьшилась и крутим дальше 50%,25%,12.5% и ТД)  но при тесте его понял что он работает не оч хорошо, подскажите толковый быстрый алгоритм поиска, не брутить же...


Наиболее растущая / падающая линейная функция должна отыскиваться алгоритмом решения задачи линейного програмирования. Самый известный из них - симплекс-метод. Однако есть сильное сомнение, что наиболее растущий синтетик найдется среди линейных комбинаций известных инструментов. Тем более на неопределенном отрезке времени. Тем более когда известно, что независимыми среди курсов валютных пар являются лишь 7 из 28, остальные жестко связаны с ними нелинейными соотношениями типа:

EURGBP = EURUSD/GBPUSD = EURJPY/GBPJPY = EURCAD/GBPCAD = EURCHF/GBPCHF = EURNZD/GBPNZD = EURJPY/GBPJPY.

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

 
Vladimir #:

Наиболее растущая / падающая линейная функция должна отыскиваться алгоритмом решения задачи линейного програмирования. Самый известный из них - симплекс-метод. Однако есть сильное сомнение, что наиболее растущий синтетик найдется среди линейных комбинаций известных инструментов. Тем более на неопределенном отрезке времени. Тем более когда известно, что независимыми среди курсов валютных пар являются лишь 7 из 28, остальные жестко связаны с ними нелинейными соотношениями типа:

EURGBP = EURUSD/GBPUSD = EURJPY/GBPJPY = EURCAD/GBPCAD = EURCHF/GBPCHF = EURNZD/GBPNZD = EURJPY/GBPJPY.

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

а если теперь перевести указанное в диф. dEURGBP=?? и учесть граничные условия, то "вечер перестаёт быть томным". Не грааль (которого даже в теории нет), но ликвидирует массу ошибок

 

и из всех синтетиков пожалуй стоит рассматривать взвесь AUD+NZD (возможно) с небольшим довеском GBP и противовесом JPY. Эдакий ANZ 

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

 
Алексей КоКоКо:
Вообщем занимаюсь кодингом на python и мне поступил заказ написать алгоритм поиска синтетического линейного синтетика , желательно с выбором угла или наиболее растущий /падающий похожий на то что на скрине


в наличии подкачка истории котировок и полная конвертация их в долларовое движение на 1 лот, пытался написать алгоритм холодно/горячо + бинарный поиск (крутим лоты на 50% и проверяем среднеквадратичная ошибка увеличилась или уменьшилась и крутим дальше 50%,25%,12.5% и ТД)  но при тесте его понял что он работает не оч хорошо, подскажите толковый быстрый алгоритм поиска, не брутить же...

Марковиц не подходит?

 
Aleksey Nikolayev #:

Марковиц не подходит?

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

 
Где ж вы на мажорах возьмете ровные синтетики) утопия.
А те что есть на минорах, неторгуемы из-за спреда, рынок уже всё учел еще до вас)
 
secret #:
Где ж вы на мажорах возьмете ровные синтетики) утопия.
А те что есть на минорах, неторгуемы из-за спреда, рынок уже всё учел еще до вас)

яж не говорю что надо чтоб с 2010 был ровный синтетик )) нужен сборщик синтетика на каком то промежутке/отрезке времени, очевидно что для каких то пар и направлений есть свои минимальные отклонения от линейной регрессии  и меньше их не сжать, хотя на самом деле синтетик будет жутко колбасить, но меньше никак

 
Алексей КоКоКо #:

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

Теория Марковица - основа современного портфелестроения) Не то что бы это панацея на все случаи жизни, но это именно та печка от которой начинают плясать.

 
Aleksey Nikolayev #:

Теория Марковица - основа современного портфелестроения) Не то что бы это панацея на все случаи жизни, но это именно та печка от которой начинают плясать.

А как ее применить к ценовому ряду?