Советник работающий по уровням |
Доброго всём времени суток.
Андрей, нужна ваша помощь в написании советника.
Суть в следующем:
В момент установки советника на график, от цены Bid рассчитываем 20 уровней вверх и 20 уровней вниз( шаг: Distance=200), цена bid — тоже уровень. т.к. на уровне нет ордеров, то открываем один ордер buy и один ордер sell с начальными лотами.
— При движении цены вверх и касании первого уровня вверх, закрывается ордер buy и открываются два ордера: ордер buy и один ордер sell с начальными лотами.(т.к. на этом уровне нет ордеров).
— Дальше цена идёт вверх и касается следующего уровня, закрывается предыдущий ордер buy, и т.к. на этом уровне нет ордеров, открываем два ордера: sell с начальным лотом и buy с лотом (последний открытый sell* Klot). Пояснение: на данном уровне ордер buy перекрывает 3 открытых ордера sell.
— Цена идёт дальше вверх и касается следующего уровня, закрывается предыдущий buy и самый первый sell. Итого в рынке остаётся 2-sell и 0-buy. Открывается ордер sell с начальным лотом и ордер buy с лотом (последний открытый sell*Klot) опять на данном уровне ордер buy перекрывает 3 открытых ордера sell.
— Цена развернулась и коснулась уровня ниже, закрываем последний открытый sell и открываем один ордер buy, т.к. на этом уровне есть уже ордер sell, новый sell не открываем.
Фиксация прибыли: для ордера buy — на уровень выше от уровня открытия, для ордера sell — на уровень ниже от уровня открытия.
Фиксация убытка: для ордера buy- 3 уровня вниз от уровня открытия, для ордера sell — 3 уровня вверх от уровня открытия.
StopLoss и TakeProfit отсутствуют, советник открывает и закрывает ордера при достижении ценой Bid уровня.
— Умножение лота на Klot: например в рынке 2 ордера sell ниже текущего уровня, открываем buy с лотом *Klot. Для sell — зеркально.
-
0
- Просмотров: 2634
- 15 февраля 2022, 15:46
- verta81
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!
Комментарии (31)
0) уровень — открыт 1 лот Buy и 1 лот Sell
1) уровень — закрыт 1 лот Buy(+10). те остается 1 лот sell и убыток -10
тут же открывается 1 лот buy и 1 дополнительный лот sell
2) уровень — закрыт 1 лот Buy(+10). остается 2 лота sell и убыток -30 (не берем своп, коммиссии и спрэд) то тут у нас так или иначе минус
если берем мартышку, которая будет открывать в два раза больше лот чтоб перекрывать противоположные ордера:
0) уровень — открыт 1 лот Buy и 1 лот Sell
1) уровень — закрыт 1 лот Buy(+10). те остается 1 лот sell и убыток -10
тут же открывается 3 лота buy и 1 дополнительный лот sell
2) уровень — закрыты 3 лота buy(+30). остается 2 лота sell и убыток -30
тут же открываем 6 лотов buy и 1 лот sell.
3) уровень — закрыты 6 лотов buy +60 и первый sell -30, остается 2 лота sell -30
открывается 6 лотов buy и 1 лот sell.
цена тут же разворачивается и уходит на один уровень вниз те на 2й уровень
2) уровень. баи несут потери -60 селлы несут потери -30 итого -90+60+30+10-30-30 = -50
те без учета всего прочего минус на счету. какой смысл?
даже можно и на первом уровне закончить,
0) 1 бай 1 селл
1) +10 закрыт бай и открыт 2 бай и 1 селл (тут убыток -10)
цена развренулась и пошла вниз на начало: имеем -20 по баям и селлы в нуле. и закрыт 1 бай +10. те как ни крути -10 на счету. как бы не увеличивать и не играться с коофециентами — все равно минус будет. чем больше мартшыка — тем больше минус. те при ограничении 3ями лотами — фиксируется убыток на долгий срок в размере -10*2n уровней где n максимум 3. плюс к этому своп, коммиссия и спрэд в минус с каждой сделки, что смело можно на умножить на 2. те формула будет 2*(-10)*2n Редактирован: 15 февраля 2022, 17:10
4 alexzh16 Сообщений: 59
14 verta81 Автор Сообщений: 388
4 alexzh16 Сообщений: 59
14 verta81 Автор Сообщений: 388
4 alexzh16 Сообщений: 59
35 AM2 Сообщений: 16250 - Андрей
14 verta81 Автор Сообщений: 388
а что делать с этим 0,05 когда вот так цена пошла?
4 alexzh16 Сообщений: 59
14 verta81 Автор Сообщений: 388
4 alexzh16 Сообщений: 59
14 verta81 Автор Сообщений: 388
4 alexzh16 Сообщений: 59
14 verta81 Автор Сообщений: 388
4 alexzh16 Сообщений: 59
И да, селл с предыдущего уровня, при движении вниз, закроется с прибылью. Фиксация прибыли 1 уровень вниз. Редактирован: 16 февраля 2022, 13:42
14 verta81 Автор Сообщений: 388
35 AM2 Сообщений: 16250 - Андрей
14 verta81 Автор Сообщений: 388
на одном уровне не более одного buy и одного sell.
Если ордер в плюсе и коснулись уровня — закрываем ордер.
Если ордер в минусе и коснулись третьего уровня от уровня открытия — закрываем
14 verta81 Автор Сообщений: 388
35 AM2 Сообщений: 16250 - Андрей
14 verta81 Автор Сообщений: 388
35 AM2 Сообщений: 16250 - Андрей
14 verta81 Автор Сообщений: 388
что конкретно не то?
советник через шаг ставит пару ордеров. через шаг прибыльный закрывается а через 3 убыточный.
35 AM2 Сообщений: 16250 - Андрей
Нужно создать ценовые уровни и работать по пересечению, открывать и закрывать ордера именно при касании/пересечении уровней.
Создать массив и записать в него все уровни.
Вопрос с разметкой ордеров решил, записывая в комментарий ценовые уровни: точка открытия, фиксации убытка и прибыли. Далее из комментария вытягиваю нужное и обрабатываю.
Далее определять положение цены относительно уровней, с чем на данный момент имеются затруднения. При сравнивании цены с ценовым уровнем (если Bid==Lvl) не всегда равенство верно.
Расширил диапазон сравнения до Bid+vspred>Lvl && Bid-vspred<Lvl так гораздо лучше, но все равно не все определяется и на инструментах с большим спредом все ломается. Может подскажете решение, как решить вопрос сравнения ценны с ценовым уровнем не расширяя за счет спреда.
Буду признателен за любые варианты.
www.opentraders.ru/downloads/3255/
14 verta81 Автор Сообщений: 388
как раз по Вашему — тейк = 1 шаг, а стоп = 3 шага. Но это частный случай.
Если ближе и Вам понятнее Функцию можно переписать так:
Причем числа 1 и 3 можно вынести как переменные в настройки.
А вот изменения размера лота нет на самом деле.
16 ssg Сообщений: 817
Ну или уходить на отложенные ордера.
16 ssg Сообщений: 817
14 verta81 Автор Сообщений: 388
35 AM2 Сообщений: 16250 - Андрей
— если на уровне уже есть открытый sell, то ордер sell не открывается;
— если на уровне уже есть открытый buy, то ордер buy не открывается;
14 verta81 Автор Сообщений: 388
35 AM2 Сообщений: 16250 - Андрей
14 verta81 Автор Сообщений: 388
Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий