Задача советника проста - раскидывать сеть отложенных ордеров в заданном направлении и добавлять отложек, если цена не идёт в нужную сторону. Предполагается работа по треду, по этому в оба направления нельзя будет работать, только вверх или вниз.
Настройки советника:
- Выбор направления бай или сел
- Лот
- Время работы (в две строчки начало и конец сессии)
- Тейк в пипсах
- Стоп в пипсах (если 0 стоп не выставляется)
- Шаг между ордерами в пипсах (расстояние между отложками)
- Количество сделок для запуска
- Расстояние от текущей цены для новых сделок
- Магик номер для сделок советника
Пример работы.
Возьмём в качестве гипотезы, что пара доллар рубль будет идти вверх в долгосрочной перспективе - тред восходящий. Так же предполагаем, что расти курс будет после начала Американской сессии.
Настройки
- Направление: бай
- Время работы
Начало 15:00
Конец 23:00
- Тейк 10п
- Стоп 0
- Шаг между сделками 2п
- Количество сделок для запуска 50
- Расстояние от текущей цены для новых сделок 3п
- Магик 1
При таких настройках, робот будет торговать только в бай. После установки робота в терминал, он дождётся пока стукнет 15:00 и начнёт работу. Первым делом, робот, выставит 50 ордеров типа бай стоп с шагом 2п между сделками. Если цена идёт вверх, робот ничего не делает. Если цена идёт вниз, робот добавляет ордеров бай стоп, ориентируясь на показатель "Расстояние от текущей цены для новых сделок". (Прим. для бай сделок расстояние считается от уровня аск, для сел сделок от уровня бид). Значит при данных настройках, смещение уровня аск вниз на 3 пункта будет означать открытие ботом новой сделки бай стоп. Всё это повторяется до тех пор, пока время работы не подойдёт к концу. При этих настройках, в 23:00, робот перестаёт добавлять новые байстопы и удаляет все отложки в терминале. При наступлении нового времени работы всё повторяется.
Появилась необходимость в дополнительных настройках, для более гибкой настройки. Но сначала, напишу, что я имею ввиду под понятием "переключатель". Это возможность включить и выключить параметр, выбрать тру или фолс.
Настройки
1. Динамический лот. С переключателем.
Если фолс используется фиксированный лот, если тру динамический. Динамический лот настраивается в две строчки: Сумма и Лот. Если мы указываем сумму 1000, а лот 0.01, то на каждую 1000 долларов депозита будет объём 0.01. Например, если мы устанавливаем робота на депозит в 2000, то робот сразу будет использовать лот 0.02, когда депозит вырастит до 3000, робот начнёт использовать лот 0.03. И так далее. Лот изменяется в зависимости от размера депозита.
2. Не торговать если просадка больше Н%. С переключателем.
В этом параметре мы указываем просадку, при достижении которой, перестают добавляться новые байстопы до
тех пор, пока просадка не вернётся в рамки нормы, то есть не станет меньше, чем указанная.
3. Если открыто больше Н сделок, новы не открывать. С переключателем.
В этом параметре мы указываем количество одновременно открытых сделок. Например, указываем 5. Если у робота накопилось 5 открытых сделок, он перестаёт открывать дополнительные байстопы до те пор, пока количество открытых сделок не снизится хотя бы до 4.
4. Добавить режим торговли:
А) автоматическая - робот работает по своему текущему алгоритму
Б) Сушка - робот удаляет все отложки и перестаёт открывать новые сделки
5. Табло для вывода информации С переключателем
Информационная панель на графике, где установлен бот. На панели, в режиме реального времени отображаются
ключевые показатели работы:
- Указаны все параметры с переключателем. То есть на панеле видно в каком положении переключатель Тру или Фолс.
- Какой режим работы: авто или сушка
- Просадка по всему депозиту
- Количество открытых сделок
- Объём на покупку и на продажу отдельно
- Совокупный своп по позициям
- Прибыль в % за день, неделю, месяц, 3 месяца
- Прибыль в $ за день, неделю, месяц, 3 месяца
Очень нужно доработать работу одного параметра из прошлой версии (stol-zakazov/setka-dlya-ribaka-2-0-t4965.html), а именно параметр торговли при определённом количестве сделок:
https://yadi.sk/i/Il3kbwsVR2xARAВ данный момент робот просто перестаёт открывать дополнительные отложки, если количество открытых сделок = количеству указанном параметре, а открытые отложки он не трогает и они продолжают срабатывать, когда цена до них доходит.
Теперь мне нужно добиться эффекта точности исполнения этого параметра. Если в параметре "количество сделок" указано, что может быть открыта только 1 сделка, то так и должно быть. Другие сделки не должны открываться, пока текущая не будет закрыта. Если в параметре указано, что может быть открыто только 2 сделки, то когда 2 сделки в рынке, не должно быть никакой возможности появления других сделок. Значит пока одна из двух не закроется, другие появляться не должны. И так же, далее, если указано 3, 4 и другое количество сделок.
Как, этого можно добиться. Для этого нужно не просто прекратить выставлять новые отложки когда превышен лимит допустимого количества сделок, а ещё и удалять все текущие отложки. Если открыто указанное кол-во сделок, то удаляем все открытые отложки и перестаём новые открывать. Как только сделок в рынке меньше, чем разрешено в настройках, робот возобновляет работу по своему алгоритму. Другими словами, если мы разрешили открывать боту только 1 сделку, то как только эта сделка открыта включается режим "сушка", который уже реализован в боте. Когда открытых сделок меньше, чем допустимо, возобновляется рабочий режим бай или сел, в зависимости какой был режим до режима сушки.
Готов ответить на любые вопросы