Сегодня поговорим про индекс, взвешенный по объёму, или Volume Weighted Index. Это когда при помощи мультипликаторов, доля бумаги внутри индекса выравнивается так, чтобы зависеть от объёма торгов, которые проходят по бумагам. В OsEngine такой тип взвешивания можно создавать в пару кликов, с пересчётом один раз в час, день или неделю. По любым акциям, которые есть у Вашего брокера.
1. Расчёт индекса, взвешенного по объёму. Часть 1.
Для начала мы подбираем такие мультипликаторы для его цены, чтобы доля каждой бумаги была одинаковой. В данном случае по 25%, если у нас четыре бумаги.
Логика такая:
1. Для самой дорогой бумаги берём мультипликатор 1. Данная бумага у нас будет являться эталоном.
2. Для остальных бумаг подбираем такие мультипликаторы, чтобы они в данный момент были с таким же весом, что и бумага 1.
3. Складываем итоговые значения.
2. Расчёт индекса, взвешенного по объёму. Часть 2.
На данном этапе мы рассчитываем такие мультипликаторы для бумаг в индексе, которые бы соответствовали тому объёму, который они занимают в суммарном объёме торгов этих бумаг:
3. Как включить индекс, взвешенный по объёму через автоформулу в OsEngine.
В окне настроек индекса необходимо выбрать нужный тип взвешивания - Equal Weighted:
Так выглядит автоформула индекса, взвешенная по объему, на примере двух бумаг.
В итоге получаем свечной график индекса, на который можно ложить любые индикаторы из доступных в OsEngine, и с которого можно снимать торговые сигналы:
4. Исходный код.
Взвешивание индекса происходит в файле BotTabIndex, в классе IndexFormulaBuilder:
https://github.com/AlexWan/OsEngine
В методе:
Логика разбита на разные типы взвешивания. По методам.
* Если Вы нашли в исходниках ошибки – обязательно пишите в поддержку:
https://t.me/osengine_official_support
Удачных алгоритмов!
Комментарии