торговая стратегия на базе Волновой теории Эллиота - страница 272

 
to Candid


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


Я полагал, что это я Вас уговариваю использовать Херста. А отговорить меня, его использовать у Вас просто не получиться. Статистика однако. :о)))

На данный момент у меня все пока в маткаде. Подумываю, сделать версию под МТ для тестирования. Вот только вопрос: при режиме тестирования на момент запуска какой либо функции (например, прогноза), требующей продолжительное время для расчета (например, 1-7 часов), тестер во время расчета будет поставлять котировки или будет ждать завершения выполнения функции?
 
Вот только вопрос: при режиме тестирования на момент запуска какой либо функции (например, прогноза), требующей продолжительное время для расчета (например, 1-7 часов), тестер во время расчета будет поставлять котировки или будет ждать завершения выполнения функции?

Не знаю. Я всегда тестирую в автономном терминале.
 
Вот только вопрос: при режиме тестирования на момент запуска какой либо функции (например, прогноза), требующей продолжительное время для расчета (например, 1-7 часов), тестер во время расчета будет поставлять котировки или будет ждать завершения выполнения функции?

Не знаю. Я всегда тестирую в автономном терминале.


Я об этом же режиме. Имел ввиду, будет ли тестер эмулировать новые поступления, пока идет расчет прогноза (1-7 часов)
 
В смысле прогноз будет считаться в dll? Всё равно не знаю. Может лучше заранее записать прогноз в файл и читать его оттуда?
 
Вот только вопрос: при режиме тестирования на момент запуска какой либо функции (например, прогноза), требующей продолжительное время для расчета (например, 1-7 часов), тестер во время расчета будет поставлять котировки или будет ждать завершения выполнения функции?

Не знаю. Я всегда тестирую в автономном терминале.


Я об этом же режиме. Имел ввиду, будет ли тестер эмулировать новые поступления, пока идет расчет прогноза (1-7 часов)


Тестер фактор времени не учитывает. Сначала он досчитает Вашу функцию start() до конца, а потом перейдёт к следующему новому тику.
 
grasn писал в 19.05.07 17:41

Я об этом же режиме. Имел ввиду, будет ли тестер эмулировать новые поступления, пока идет расчет прогноза (1-7 часов)



Что-то подозрительно большое время расчета.
 
to solandr


Тестер фактор времени не учитывает. Сначала он досчитает Вашу функцию start() до конца, а потом перейдёт к следующему новому тику.


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

to Rosh


Что-то подозрительно большое время расчета.


У меня AMD Athlon 64 Processor 3800+ 2.4 GHz, 2 GB RAM. Расчет Херста на выборку в 600 отсчетов занимает около 20 минут, правда расчет выполняется в MathCAD. Никаких явных ляпов в алгоритме расчета нет, т.е. считает оптимальным образом с точки зрения программирования в MathCAD. Но это маленькая часть того, что есть, например энтропия считается минут 40-50 на эту же выборку.

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

Результаты в MathCAD, меня вполне удовлетворяют (более чем), но понимаю, что этого не достаточно. Вот и решил реализовать упрощенную версию на МТ пока только для тестирования. По результатам посмотрю.
 
to solandr

Тестер фактор времени не учитывает. Сначала он досчитает Вашу функцию start() до конца, а потом перейдёт к следующему новому тику.


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

Работа на демо-счёте - это работа в режиме реального времени. МТ4 конечно же досчитает до конца Вашу функцию start() сколько бы она ни занимала по времени. Но только за это время разумеется поступят новые котировки. И если Вы в конце своей долгосчитаемой функции start() захотите совершить торговую операцию, то необходимо будет воспользоваться функцией RefreshRates(), которая обновляет текущие рыночные данные, включая текущие Ask и Bid. То есть по тем Bid и Ask, которые существовали несколько часов назад (на момент начала расчёта) Вы уже ордер открыть не сможете на демосчёте (и на реале разумеется тоже). А сможете открыть только лишь по текущим после использования функции RefreshRates().
 
to solandr

Тестер фактор времени не учитывает. Сначала он досчитает Вашу функцию start() до конца, а потом перейдёт к следующему новому тику.


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

Работа на демо-счёте - это работа в режиме реального времени. МТ4 конечно же досчитает до конца Вашу функцию start() сколько бы она ни занимала по времени. Но только за это время разумеется поступят новые котировки. И если Вы в конце своей долгосчитаемой функции start() захотите совершить торговую операцию, то необходимо будет воспользоваться функцией RefreshRates(), которая обновляет текущие рыночные данные, включая текущие Ask и Bid. То есть по тем Bid и Ask, которые существовали несколько часов назад (на момент начала расчёта) Вы уже ордер открыть не сможете на демосчёте (и на реале разумеется тоже). А сможете открыть только лишь по текущим после использования функции RefreshRates().


Огромное спасибо за консультацию. Придется уделить должное внимание контролю процесса после расчета. Ведь нужно будет еще проверить правильность прогноза.
 
grasn 20.05.07 18:32


to Rosh


Что-то подозрительно большое время расчета.


У меня AMD Athlon 64 Processor 3800+ 2.4 GHz, 2 GB RAM. Расчет Херста на выборку в 600 отсчетов занимает около 20 минут, правда расчет выполняется в MathCAD. Никаких явных ляпов в алгоритме расчета нет, т.е. считает оптимальным образом с точки зрения программирования в MathCAD. Но это маленькая часть того, что есть, например энтропия считается минут 40-50 на эту же выборку.

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

Результаты в MathCAD, меня вполне удовлетворяют (более чем), но понимаю, что этого не достаточно. Вот и решил реализовать упрощенную версию на МТ пока только для тестирования. По результатам посмотрю.



Расчет Херста на выборку в 3000 баров в MQL4 у меня занимал порядка 40 миллисекунд. Скорей всего мы под этим подразумеваем разные понятия (слово расчет),поэтому, если можете, сбросьте мне в общих словах алгоритм Вашего расчета (желательно) или код в MathCad'е в крайнем случае (при необходимости влезу и в Маткад).

Что то не так с расчетами в любом случае. Мой мейл rosh AT metaquotes DOT ru.