
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вот частоты которые выделились на интервале чуть больше недели(показаны в днях)
4,58(почти целая неделя)
2.58(половина недели)
1.63(самая мощьная, её видно на графике посередине)
1.04(один день)
0.52(первая гармоника дня)
0.26(вторая гармоника)
Есть предположения чем обусловлен период в 1.63 дня (третья гармоника недели)?
Вот и первый прогноз
Много ещё из запланированного не сделано
ANG3110, какой у тебя прогноз на завтра?
Вот и первый прогноз
Много ещё из запланированного не сделано
ANG3110, какой у тебя прогноз на завтра?
Я вообще-то специально прогноз не составлял. Могу привести просто рисунок на глаз.
А что у тебя изображено на графике, опиши подробней.
Может есть у кого - нибудь не быстрое преобразование Фурье в mq4? Можно и реализация на С или паскале.
На второй странице смотри
Может есть у кого - нибудь не быстрое преобразование Фурье в mq4? Можно и реализация на С или паскале.
На второй странице смотри
Спасибо, пропустил...
Ну собственно вот что пока получилось
Делается поиск основных частот рынка, определяется их амплитуда и фаза, опеделяется трнд, и всё это дело складывается и нормируется.
Мне сейчас очень ненравится, как реализован поиск локальных максимумов на периодограмме, поиск ведётся по гармоническому распределению
а им там и не пахнет, выдельть их конечно можно поигравшись с параметрами, но всёравно нестабильно, и часто совсем микролокальные
максимумы выделяются.
Второй недостатотк, это то что всё выводится в одном окне, надо разести всё это удовольствие по нескольким графикам в основном окне,
и ещё по 2-3 дополнительным окнам.
Кто знает как сделать так, чтобы все расчёты велись в каком нибудь одном месте, а к результатам имели доступ все остальные - индикаторы,эксперты?
Выбор соответствующихчастот колебания рынка надо всётаки делать вручную. Очень удобно было бы выбирать максимумы мышкой, или линией, как у ANG3110
ANG3110, как ты реализовал работу с линией? Через скрипты?
Пара слов о том что делать с тем, что я сейчас выложил.
Lenght=560;// Задает размер окна в барах
Period_count=2;// Сколько периодов мы будем рассматривать, соответственно Lenght должна быть в Period_count раз больше чем то что вы увидели на рынке
Garmonic=9;// Этот параметр и следующий определяются методом до безобразия жуткого подгона(об этом напишу подробнее)
GarmonicControl=1.7;
iMAperiod=4;//если подгон не помог попробуйте немного сгладить график
Futur=100;// На сколько баров делать прогноз
InPast=200;// Работа на прошедших барах, для оценки прогнозирования, по уже имеющимся данным
Собственно что же такое вы видите на индикаторе (прогноз на сегодня кстати)
Все графики должны лежать в диапазоне от 0 до Lenght (ну +/- 5%)
Если диапазон другой то это он просто глючит, нажмите Обновить и всё пройдёт (никак не могу понять где тут баг)
Тонкий розовый график - подготовленный временной ряд, должен быть похож на курс.
Толстая оранжевая - периодограмма, значение периода равно соответствующему значению синей прямой
положение и колличество Красных столбиков подпирающих синюю линию определяется через Garmonic и GarmonicControl
Зелёные столбики подпирающие периодограмму - обнаруженные периоды, сильно зависят от красных линий, выделив на глаз наиболее значимые периоды, надо начать подгонять Garmonic*, пока не будет достигнут результат
Тонкая зелёная кривая - это фазограмма, похоже на то, что если частота устойчива, то и фазограмма гладкая, а если колеблится, то колебания этой частоты были недавно нарушены, и им верить нельзя. (0 соответствует -pi/2 ; Lenght --- 3*pi/2)
Ну и собственно самое главное толстая розовая линия - это прогноз. Прогноз не обязан совпадать с исхдным графиком по высоте и повторять отдолённое прошлое. Главное что в нём надо видеть это точки поворота, и их возможную интенсивность (предсказанное время поворота наверняка несовпадёт)
Выбор соответствующихчастот колебания рынка надо всётаки делать вручную. Очень удобно было бы выбирать максимумы мышкой, или линией, как у ANG3110
ANG3110, как ты реализовал работу с линией? Через скрипты?
Для твоего случая я думаю наиболее подходящ следующий вариант:
делаешь скрипт для управлением индикатором:
А в индикаторе, после int start() вставляешь:
Сначала ставишь на график индикатор, затем выбрасываешь скрипт и каналом LR двигаешь, график.
Гашение лишних линий, надеюсь сможешь сделать сам, или если что могу подсказать.
Спасибо, с линиями разобрался.
Можно ещё один вопрос
я сейчас инфу по 3 графикам разнёс, один в главном окне и два в своих.
параметры задаются только в одном, и сохраняются в глобальных переменных
с ключами "PF_"+Symbol()+"_"+DoubleToStr(Period(),0)+"_key"
информацию о максимумах я тоже храню в глобальных переменных
Проблема в том что расчёты приходится проводить трижды, для каждого графика
Вначале я пробывал через iCustom, но помоему при его использовании он не берёт
данные из ранее добавленных графиков, а рассчитывает их занова, покрайней init
срабатывает поновой, и видит что он уже запущен(по глобальным переменным)
и рассчётов не ведёт, а iCustom возвращает Empty
Есть какой нибудь способ сделать массивы глобальными?
Мне кажется что если в GlobalVariable тысячи значений запихнуть то будет гораздо
медленнее работать, тамже поиск по строке идёт
Есть какой нибудь способ сделать массивы глобальными?
Я не совсем понял что тебе нужно, но когда нужно сохранить много данных и потом считать их по новой, проще воспользоваться записью в промежуточный файл, например:
int handle=FileOpen("Test.dat",FILE_BIN|FILE_WRITE);
FileWriteArray(handle,arr,0,Narr);
А потом обратно считать из другой программы:
int handle=FileOpen("Test.dat",FILE_BIN|FILE_READ);
FileReadArray(handle,arr,0,Narr);
Подробности посмотри в Help MT4.