Подскажите как сделать правильнее для более быстрой работы советника

 

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

Или может быть так только хуже?
Моя задача найти ситуацию и открыть 3 ордера (по одному ордеру на каждую пару)

Но как сделать правильно для более быстрой работы? Разделить на индикатор + советник или все сложить в один советник?

 
Natalya Smirnova:

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

Или может быть так только хуже?
Моя задача найти ситуацию и открыть 3 ордера (по одному ордеру на каждую пару)

Но как сделать правильно для более быстрой работы? Разделить на индикатор + советник или все сложить в один советник?

Всё зависит от логики индикатора.

Может лучше код индикатора оформить в виде .mqh файла хоть просто функцией, хоть классом и обращаться из советника к этому коду. А может без полного индикатора сложно обойтись.

 
Alexey Viktorov #:

Всё зависит от логики индикатора.

Может лучше код индикатора оформить в виде .mqh файла хоть просто функцией, хоть классом и обращаться из советника к этому коду. А может без полного индикатора сложно обойтись.

По факту индикатор простой.
Сбор информации по 3 парам.

1. Показатели стохастика - обоих линий на 3 парах

2. Направление свечи - нисходящая или восходящая.
далее проверяет что бы линии стохастика сходили вверх или вниз и начали подниматься или опускать на всех парах одновременно.
Пары корелирующие. Ловим момент когда идут все в одну сторону.
Так что код индикатора не сложный.

Поэтому и думаю, может быть весь код внести просто в советник. Но незнаю верное ли это решение. как отразиться на скорости.

 
Natalya Smirnova #:

По факту индикатор простой.
Сбор информации по 3 парам.

1. Показатели стохастика - обоих линий на 3 парах

2. Направление свечи - нисходящая или восходящая.
далее проверяет что бы линии стохастика сходили вверх или вниз и начали подниматься или опускать на всех парах одновременно.
Пары корелирующие. Ловим момент когда идут все в одну сторону.
Так что код индикатора не сложный.

Поэтому и думаю, может быть весь код внести просто в советник. Но незнаю верное ли это решение. как отразиться на скорости.

Верное, код без отрисовки и буферов быстрее в простом алгоритме.
 
Natalya Smirnova #:

По факту индикатор простой.
Сбор информации по 3 парам.

1. Показатели стохастика - обоих линий на 3 парах

2. Направление свечи - нисходящая или восходящая.
далее проверяет что бы линии стохастика сходили вверх или вниз и начали подниматься или опускать на всех парах одновременно.
Пары корелирующие. Ловим момент когда идут все в одну сторону.
Так что код индикатора не сложный.

Поэтому и думаю, может быть весь код внести просто в советник. Но незнаю верное ли это решение. как отразиться на скорости.

если нужно супер-быстродействие, то берём формулы и считаем частный случай

но сразу подозрение что при условии высокой корреляции  стохастики(вообще все сравнения на базе MA) кажут нечто странное :-) именуемое шумом

 
Natalya Smirnova #:

По факту индикатор простой.
Сбор информации по 3 парам.

1. Показатели стохастика - обоих линий на 3 парах

2. Направление свечи - нисходящая или восходящая.
далее проверяет что бы линии стохастика сходили вверх или вниз и начали подниматься или опускать на всех парах одновременно.
Пары корелирующие. Ловим момент когда идут все в одну сторону.
Так что код индикатора не сложный.

Поэтому и думаю, может быть весь код внести просто в советник. Но незнаю верное ли это решение. как отразиться на скорости.

Вот и ответ на все ваши вопросы. Каждый советник будет проверять и пересчитывать значения по трём парам? В этом случае не подходит даже .mqh как я предположил сначала. Хоть это и будет один файл, но вычисления он будет производить для каждого советника отдельно.

 
Valeriy Yastremskiy #:
Верное, код без отрисовки и буферов быстрее в простом алгоритме.

Хотя да,  Алексей правильно заметил, если расчет по данным с других инструментов, то лучше видимо расчеты в одном месте, а в советниках только ордера по сигналам. Если в каждый советник на инструменте добавить получение данных с других пар, то точно сказать не получится, что будет быстрее.

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