Хоть и говорят что скальпинг мертв, ну да ладно, мы и на неликвиде поторгуем :)
Вот собственно стратегия.
Алгоритм логично было бы разделить на две части, мониторинг благоприятных условий выставление собственной заявки и действия, когда заявка выставлена.
Поиск цены в стакане происходит по следующему алгоритму:
1. Мониторим стакан на предмет наличия в нём крупного бида размером выше заданного.
2. При нахождении такого объёма, робот ставит заявку с заданным на покупку на один шаг выше этого ордера.
3. Если крупный ордер убирается, робот тоже снимает свою заявку и уходит в режим мониторинга (ждёт). Если объём передвигается, наш робот тоже передвигается.
4. Когда нас акцептуют, мы выставляем купленные акции на продажу на n процентов дороже.
5. Если на рынке проходит сделка на 1 шаг ниже того крупного объёма, который стал причиной нашей сделки, срабатывает экстренный механизм защиты от потерь. Это значит, что тот крупный ордер или съеден или убран, и надо срочно закрывать позиции. Поэтому мы выставляемся в стакан лучшими на продажу и держим наш ордер на продажу так чтобы он всегда был лучшим до тех пор пока не продадимся.
Для шортов алгоритм тот же, только в противоположную сторону.
Вторая часть алгоритма это работа с заявками:
1. Когда засекли бегемотика на бидах, смотрим нет ли другого бегемотика на оферах ниже чем наш тейк профит (тейк задаётся как константа в процентах). Потому что такой бегемотик может нам испортить всю игру.
2. Если вражеского бегемотика на оферах нет, ставим бид на один шаг выше цены бегемота.
3. При изменении цены бегемота, маневрируем вместе с ним, чтобы оставаться всегда на 1 шаг лучше чем он.
4. Наконец-то нас акцептовали. Тогда мы ставим наш купленный пакет на продажу. Тейк профит — константа, задаётся в процентах от точки входа.
5. Ждём, пока наш пакет продастся, и когда это произойдёт, радуемся, что стратегия работает. Если пока мы стоим тейк профитом, под нами на оферах появляется враждебный бегемот, мы становимся на 1 пункт лучше него, потому что факт появления крупного объёма на продажу — плохой знак, и нам надо поскорее выйти из позиции.
6. Если проходит сделка на 1 пункт ниже нашей точки входа, это беда. Надо что то делать.
Тут возможны два варианта.
Вариант первый. Бегемот по прежнему в стакане, только ушёл ниже. Тогда мы тоже передвигаем наш офер ниже на размер тейк профита от новой цены бегемота, но не ниже лучшего офера в стакане.
Вариант второй. Бегемота нет нигде!!! Его завалили полностью или частично, или он передумал покупать. Мы понимаем, что из позиции надо бежать со всех ног и встаём в стакане лучшими на продажу, опережая лучшего на 1 пункт. Если над нами второй боец поднимается, мы тоже поднимаем наш офер, так чтобы продолжать стоять лучшими. Если нас кто то обгоняет, мы его тоже обгоняем, пока нас не хлопнут.
Это было для лонгов.
Для шортов те же правила, зеркально наоборот.