İş tamamlandı
Şartname
Техническое задание:
Описание: Советник должен автоматически экспортировать историю котировок с объемами и открывать ордера на открытие и закрытие позиций.
МТ4.
Советник должен автоматически экспортировать историю котировок с объемами за заданное пользователем количество часов и осуществлять дозапись истории в уже существующий файл, в указанной пользователем директории.
В советнике список символов валютных пар должны браться из окна "Обзор рынка" и экспортироваться в файлы истории с расширением ".csv".
Название файла истории должно состоять из названия валютной пары из «Обзор рынка» и таймфрейма. Например (EURUSD_H1.csv).
Если при создании файла истории определенной валютной пары не существовало - создать. Файлы валютных пар, названия которых отсутствуют в окне «Обзор рынка» удалить.
В советнике должна быть возможность выбирать таймфреймы для записи файлов истории котировок с объемами.
Советник должен дописывать историю котировок с объемами в файлы истории с разными таймфреймами одновременно.
После каждой дозаписи (любого таймфрейма) каждый раз появляется (создается) файл "S.txt" с данными "Баланс: (), Средства: (), Свободная маржа: ()" в указанной пользователем директории.
В советнике должна быть возможность отключать создание файла "S.txt".
Советник также постоянно опрашивает данные в файлах типа «Signals1_EURUSD_H1.txt» или «Signals2_EURUSD_H1.txt». Здесь «Signals1» - 1 группа сигналов, «Signals2» - 2 группа сигналов, «EURUSD» - наименование валютной пары (из «Обзор рынка»), «H1» - таймфрейм. В файлах типа «Signals1_EURUSD_H1.txt» или «Signals2_EURUSD_H1.txt» внутри данные хранятся в следующем виде: «EURUSD;1;1,9». Здесь разделитель уже «;», первое данное - наименование валютной пары, второе данное - направление торговли (1 – сделка BUY, -1 – сделка SELL, 0 – закрыть позицию) и третье данное - величина лота (в данном примере 1,9).
Советник постоянно опрашивает файлы типа «Signals1_EURUSD_H1.txt» и «Signals2_EURUSD_H1.txt» в директории и совершает сделки согласно указаниям внутри файла. Например, если в файле «Signals_EURUSD_H1.txt» указана строка «EURUSD;1;1,9» и в терминале нет открытых позиций, то советник открывает позицию «BUY» по валютной паре «EURUSD» объемом в «1,9» лота. Если в терминале уже открыта позиция SELL либо позиция BUY но величина лота не равна «1,9», то советник закроет открытую позицию и откроет позицию BUY по валютной паре «EURUSD» объемом в «1,9».
Советник разбирается, какие позиции были открыты на основании сигналов группы «Signals1» а, какие на основании «Signals2» и в соответствии с этим управляет командами SELL либо BUY только тех ордеров, которые относятся к соответствующим группам.