iqoption

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4
Прошлые части цикла здесь. В этой части статьи мы найдем численное решение системы уравнений оптимального управления позицией маркетмейкера. Такое решение легко запрограммировать и использовать в реальной торговле для контроля за лимитными и маркет ордерами в соответствии с полученными стратегиями θmk,θtk. Для упрощения разложим функцию владения на слагаемые, чтобы получить сокращенную функцию владения v(t,y,f,s), которая представляет собой только динамическую составляющую основной функции:

Алгоритмы маркетмейкера. Часть 4

Для v система уравнений выглядит следующим образом:

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4

с терминальным условием:

Алгоритмы маркетмейкера. Часть 4

Переходим к численному решению. Зададим на интервале [0,T] дискретную сетку времени t с равными интервалами Алгоритмы маркетмейкера. Часть 4:

Алгоритмы маркетмейкера. Часть 4

Также дискретизируем открытую позицию Алгоритмы маркетмейкера. Часть 4и дисбаланс объема Алгоритмы маркетмейкера. Часть 4, с максимальными значениями Алгоритмы маркетмейкера. Часть 4и шагами дискретизацииАлгоритмы маркетмейкера. Часть 4, где

Алгоритмы маркетмейкера. Часть 4

Далее, для вычисления численных производных по дисбалансу объема F, определим две дифференциальные матрицы — D1 для вычисления производной первого порядка и D2 — для вычисления производной второго порядка, на сетке Алгоритмы маркетмейкера. Часть 4:

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4

Обозначим оператор выбора для любой действительной функции Алгоритмы маркетмейкера. Часть 4:

Алгоритмы маркетмейкера. Часть 4

Оператор выбора имеет простой смысл: если некая функция ϕ максимальна при воздействии оператора Алгоритмы маркетмейкера. Часть 4(что для функции владения соответствует использованию лимитных ордеров) или оператораАлгоритмы маркетмейкера. Часть 4(использование маркет ордеров), то при текущих параметрах t,y,f,s выбирается именно эта политика (то есть лимитные или маркет-ордера).

Выражения для операторов в фигурных скобках:

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4.

Алгоритмы маркетмейкера. Часть 4

здесьАлгоритмы маркетмейкера. Часть 4 — матрица идентичности размерностьюАлгоритмы маркетмейкера. Часть 4(матрица, где по главной диагонали расположены единицы, остальные элементы 0),Алгоритмы маркетмейкера. Часть 4 — столбец значений дисбаланса,Алгоритмы маркетмейкера. Часть 4 — единичный вектор размерностьюАлгоритмы маркетмейкера. Часть 4,… означает поэлементное произведение векторов и матриц. Таким образом,Алгоритмы маркетмейкера. Часть 4представляет собой вектор размерностью Алгоритмы маркетмейкера. Часть 4на сеткеАлгоритмы маркетмейкера. Часть 4.

Аппроксимируем сокращенную функцию владения v численным решением w:

Алгоритмы маркетмейкера. Часть 4

Алгоритмы маркетмейкера. Часть 4

Полное решение для функции владения можно получить методом обратной индукции, который состоит из следующих последовательных шагов:

1. На конечный момент времениАлгоритмы маркетмейкера. Часть 4: для каждой комбинации значений (y,f,s) вычисляем Алгоритмы маркетмейкера. Часть 4.

2. Начиная с момента времени tk+1 до момента tk, где k пробегает значения отАлгоритмы маркетмейкера. Часть 4до 0 для каждой комбинации (y,f,s) делаем следующее:

  • ВычисляемАлгоритмы маркетмейкера. Часть 4по вышеприведенной формуле и находим политику лимитных ордеровАлгоритмы маркетмейкера. Часть 4
  • ВычисляемАлгоритмы маркетмейкера. Часть 4, и находим политику маркет ордеровАлгоритмы маркетмейкера. Часть 4
  • ЕслиАлгоритмы маркетмейкера. Часть 4, то текущей политикой на момент времени tk выбираетсяАлгоритмы маркетмейкера. Часть 4, при значениях (y,f,s), то есть в этот момент времени используюся лимитные ордера, согласно значениюАлгоритмы маркетмейкера. Часть 4, которое, как мы помним означает выставление ордера, с количеством контрактов =1, или на лучший бид/аск, или перед/до него.
  • В обратном случае выбирается политикаАлгоритмы маркетмейкера. Часть 4в момент времени tk при значениях (y,f,s), то есть используются маркет ордера с количеством контрактов, вычисленных вАлгоритмы маркетмейкера. Часть 4

Таким образом, для всех значений времени t, всех значений открытой позиции y, всех значений дисбаланса объемов f и всех значений спреда s — (t,y,f,s)- мы определяем, какие ордера нам ипользовать в каждом случае, и формируем области, подобные указанным на графике в заглавии, где изображены политики при значениях спреда, равному шагу цены, и значению времени, меньше на 3 единицы (например, секунды) времени окончания торговли, для всех значений открытой позиции и спреда. Что означают эти области, вы можете посмотреть в части 2 и части 3 данного цикла статей. В следующей статье обсудим, как находить параметры в уравнении дляАлгоритмы маркетмейкера. Часть 4, основываясь на реальных биржевых данных, и начнем составлять код на C# для численного решения методом обратной индукции.

 

Источник - quantalgos.ru