Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Всем привет.
Подскажите, пожалуйста, как можно решить следующую задачу.
Есть советник, который написан для текущей пары, но его планируется ставить на несколько пар одновременно. При этом, должен быть общий блок, в котором оценивается совокупная прибыль по всем активным ордерам, открытым любой копией этого советника (фильтр по магик) и, при достижении заданного значения, часть ордеров должна частично закрыться, остаток перевестись в безубыток, другая часть - закрыться полностью. При этом параметры для частичного закрытия у каждой валютной пары свои.
Возникают следующие трудности при работе: если каждый советник будет отрабатывать только свои сделки, то из-за разницы времени прихода котировок не каждый советник сможет поймать условие совокупной прибыли, более того, они могут начать открывать свои сделки в тот момент, когда нужно их закрывать; общий файл (ini, txt, csv), расшаренный для чтения и записи одновременно на несколько советников, в который можно было бы записывать сигнал на блокировку работы всех советников кроме одного, очень много сожрет по производительности, так как каждому советнику обращаться к нему придется на каждом тике; писать полностью самостоятельный советник для контроля этих сделок тоже проблему не решит, так как нужно именно заблокировать работу всех советников на время выполнения операций одним.
Помогите найти решение!
переменных терминала и событий - ну просто за глаза. Ту часть которая время-от-времени оценивает общие показатели - выносите в отдельный советник. При достижении неких критических величин она выставит глобальный флаг и разошлёт ChartEvent по всем чартам. Каждый робот получив чарт эвент или обнаружив глоб.флаг при рестарте начинает минимизировать убытки, каждый по своему принципу.