Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нет ничего проще, если воспользоваться MS XL.
Я не понял-это эксель
Neutron
Вот и я тоже, всё время задаю такие вопросы Prival-у: ну с какого он решил, что законы рынка укладываются в систему ньютоновских дифференциальных уравнений? С чего это вдруг, цена должна быть похожа на самолёт на экране радара и двигаться как массивное тело под действием вынуждающей силы?! Пусть он даст обоснование своего подхода... До сих пор не дал. Просто, делает вид, что не замечает (не понимает) и только приводит красивые картинки и вопрошает о Матрице.
Я думал, что ответил.
Вот простейшая модель движения, обращаю внимание что в уравнениях нет массы, все равно что там движется (хоть муха, хоть валюта). В уравнениях только первая и вторая производная + шум
Словами, производная по скорости равна ускорению (бросьте в меня камень если не так )). А вот со вторым уравнение чуть сложнее, если убрать
, то это будет винеровский шум (а думаю Вы согласитесь что он есть). А добавка показывает, что есть время корреляции, что рынок может двигаться какое-то время в определенном направлении.
Более подробно, как получена эта модель можно прочитать Зингер «Оценка характеристик и выбор фильтров сопровождения в реальном масштабе времени для тактических систем вооружения». Статью прилагаю.
Есть более совершенные модели учитывающие управляемость + эту модель легко расширить на многоволютность. Производная от первой валюты, от второй и т.д, учет их взаимной корреляции.
Камень тут есть подводный если бы альфа было константой, я бы уже скушал весь этот форекс -), но есть участки где алфа почти константа. Её значение можно рассчитать используя АКФ.
Если что то не разъяснил, спрашивайте, постараюсь ответить. (единственное завтра на месяц уезжаю в санаторий, не будет на форуме меня)
Если вы посмотрите статью, то поймете почему я прошу матричную алгебру, в принципе уже почти все есть, траспонирование не могу зделать, нельзя в MQL менять размерность массивов или хотябы передавать массивы из функции
Эх, жалко что уезжаешь - сожрут меня анти-управленцы с потрохами :)
Насчет транспонирования не должно быть проблем при правильном подходе. Операция транспонирования сохраняет число элементов. Следовательно, если все матричные операции будут оперировать линейными массивами, а не двумерными, то все будет в порядке с транспонированием. Да и динамические линейные массивы хорошо поддерживаются в MQL4, в отличие от многомерных.
P.S. Покупай/бери в аренду ноут и 3G-модем и будешь тусить на форуме, не выходя из санатория :)
Можно я медлено пойду, в виду своего врождённого тугодумия?
Итак.
В основе описания процесса дифференциальными уравнениями лежит требование дифференцируемости функцанальных зависимостей (столько кратной, сколько может потребоваться). В нашем случае нужно хотя бы вторую производную от котра брать... Но котир не гладкая функция! И даже первую производную не взять. Модель для котира непригодна!
Ну да ладно, сгладим ценовой ряд мувингом и палучим сколь угодно раз дифференцируемую кривую. Теперь да! Всё в порядке... или нет? Пожалуй не всё. Есть грёбаная фазовая задержка, тем большая, чем глаже кривая. Предсказывать придётся за этот горизонт, для этого нужны производные всё боле высоких порядков. И надо же, подходим к горизонту прогнозирования, а у нас кончается запас гладкости нашей кривой. И так всегда! Да, по другому и быть не может, ведь мы пытаемся вытащить сами себя из болота за волосы.
Прокоментируй.
Ну все верно. Именно поэтому Prival работает не с котирами, а с их "оценкой". А оценка эта, грубо говоря, получена путем адаптивной фильтрации котриров. Если используется эстиматор Калмана, то адаптивная фильтрация идет с минимальной по квадратичным отклонениям ошибкой. Гладкость и фазовая задержка зависит от порядка фильтра (который может зависеть от моделируемой системы, не помню уже). При этом надо отметить, что работа в итоге получается с линейной моделью системы.
Короче хорошего мало. Но лучше, чем ничего.
Попробую тоже по порядку.
Это модель физического процесса, движение цены. Сама цена непрерывна, а вот процесс её котирования дискретен. Я считаю, что между приходами тиков цена существует, значит, её можно дифференцировать. Иначе получается - пропал у меня нэт, всё в мире рухнуло цены нет.
Еще и это важно, эти уравнения можно записать и в дискретном виде, для этого нужно решить матричную экспоненту, это можно делать 2-мя способами найти аналитическое (точное решение), но для этого нужно, чтобы MQL понимал SQRT(-1) или раскладывать в степенной ряд формула (6), статью прилагаю, как то очень давно выступал с докладом на всероссийской школе семинаре по быстропротекающим процессам, неожиданно пригодилось (вроде бы) и тут.
В радиолокации, данные поступают тоже дискретно, поэтому и переходят к дискретному времени, и решают в условиях, когда данные (котиры) поступают не регулярно.
Поэтому сглаживать машкой ничего не надо, согласен что это только ухудшит результаты обработки.
Насчет транспонирования не должно быть проблем при правильном подходе. Операция транспонирования сохраняет число элементов. Следовательно, если все матричные операции будут оперировать линейными массивами, а не двумерными, то все будет в порядке с транспонированием. Да и динамические линейные массивы хорошо поддерживаются в MQL4, в отличие от многомерных.
Пожалуста сделайте процедуру транспонирования, у меня на MQL не получаеться. Вот пример в маткаде. Одно условие размерность m и n заранее не известны, и функция желательно должна быть уневерсальна, т.е. все равно какой массив транспонировать, естественно должна вызываться многократно и при этом правильно работать.
А вот это не есть правильно. На самом деле ценообразование - дискретный процесс по своей природе, т.к. новая цена возникает, когда меняется баланс между заявками на продажу и на покупку, а это не непрерывный процесс. Т.е. мы имеем дело с дискретным процессом, точнее с дискретными по времени наблюдениями дискретного процесса.
Однако, не велика беда, т.к. как и со всеми дискретными процессами, нас спасает то, что мы имеем дискретные отсчеты на уровне тиков и М1, а работать можем на М30 и H1.
А вот это не есть правильно. На самом деле ценообразование - дискретный процесс по своей природе, т.к. новая цена возникает, когда меняется баланс между заявками на продажу и на покупку, а это не непрерывный процесс. Т.е. мы имеем дело с дискретным процессом, точнее с дискретными по времени наблюдениями дискретного процесса.
Однако, не велика беда, т.к. как и со всеми дискретными процессами, нас спасает то, что мы имеем дискретные отсчеты на уровне тиков и М1, а работать можем на М30 и H1.
а если баланс не меняеться - цена есть ? или она пропадает )
калманавская фильтрация позволяет учесть, что процес оценки (котирования) может идти с ошибками, и в дискретные моменты времени, это так называемые шумы наблюдения
Пожалуста сделайте процедуру транспонирования
"Не ответа ради, а намека для".
А не будет ли выходом работа с матрицей как с одномерным массивом, у которого размерность можно менять функцией ArrayResize? (Убей...те не всомню, как раньше работали на Фортране 4 с матрицами :( и с озвученными где-то ранее бибилиотеками)