Возможно ли запустить советник из другого советника?

 

Здравствуйте! Есть советник в формате ex4.

Хочу добавить  к нему закрытие сделок по заданному убытку, но ex4 редактировать нельзя.

Возможно ли написать второй советник из которого можно будет вызвать первый советник и добавить к нему закрытие сделок?

Может есть какие то другие варианты?

 

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

по вопросу в топике: можно открыть новый график и применить к нему шаблон, где заранее прописан эксперт и его настройки.

bool  ChartClose(
   long  chart_id=0      // идентификатор графика
   );

long  ChartOpen(
   string           symbol,     // имя символа
   ENUM_TIMEFRAMES  period      // период
   );

bool  ChartApplyTemplate(
   long          chart_id,     // идентификатор графика
   const string  filename      // имя файла с шаблоном
   );
 
Igor Zakharov:

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

по вопросу в топике: можно открыть новый график и применить к нему шаблон, где заранее прописан эксперт и его настройки.

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

 
Andrey Prikhodko:

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

если очень захотеть, то сможете - запустить два тестера параллельно, ну или еще как-то изгольнуться.  Все зависит от фантазии
 
Denis Vasyutin:
если очень захотеть, то сможете - запустить два тестера параллельно, ну или еще как-то изгольнуться.  Все зависит от фантазииНЕ

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

 

Но зачем же так усложнять, без необходимости в этом.

1) от первого тестера вам нужны сигналы на вход: дата/время/ размер, направление - пишем в файл

2) во втором тестере - открываемся по сигналам из файла - время и т.д.

3) пишем свою логику на закрытие, вы же ее все равно куда-то писать собирались.

и того два действия - пишем в файл, читаем файл.

При надобности это можно делать в реалтайме.

Ни чего сложного.


Если есть привязка лота к депозиту - добавляем пересчет лота.

 
Denis Vasyutin:

Но зачем же так усложнять, без необходимости в этом.

1) от первого тестера вам нужны сигналы на вход: дата/время/ размер, направление - пишем в файл

2) во втором тестере - открываемся по сигналам из файла - время и т.д.

3) пишем свою логику на закрытие, вы же ее все равно куда-то писать собирались.

и того два действия - пишем в файл, читаем файл.

При надобности это можно делать в реалтайме.

Ни чего сложного.


Если есть привязка лота к депозиту - добавляем пересчет лота.

не выйдет.

сделки советника №1 когда он рулит исключительно сам и если закрывать ему сделки вручную/другим советником
скорее всего будут отличаться, в большинстве случаев это так. 

повезёт если №1 вообще корректно реагирует на ручное закрытие/изменение его ордеров.

 
Denis Vasyutin:

Но зачем же так усложнять, без необходимости в этом.

1) от первого тестера вам нужны сигналы на вход: дата/время/ размер, направление - пишем в файл

2) во втором тестере - открываемся по сигналам из файла - время и т.д.

3) пишем свою логику на закрытие, вы же ее все равно куда-то писать собирались.

и того два действия - пишем в файл, читаем файл.

При надобности это можно делать в реалтайме.

Ни чего сложного.


Если есть привязка лота к депозиту - добавляем пересчет лота.

Спасибо, да наверное это лучший вариант.

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