Кубик "ComissionAdv"

Кубик является модифицированной версией базового кубика комиссии и применяет к стратегии общую комиссию, включающую в себя: абсолютную комиссию, то есть комиссию за каждую сделку в баз.единицах цены актива, например 5 руб/на сделку на 1 лот; относительную комиссию, то есть комиссию за каждую сделку в % от суммы сделки, например, 0.003% от суммы сделки; комиссию за предоставление заемных средств при торговле в Long (c плечом) или в Short: считается исходя из кол-ва дней пользования заемными средствами для коротких позиций считается со всей суммы сделки, для длинных- как число лотов минус 1, помноженное на цену лота; резерв, то есть коэффициент, на который умножаются все указанные комиссии.

У кубика также имеется возможность загружать данные из кэша системы, автоматически определяя комиссию и стоимость пункта по используемому в скрипте инструменту, данный функционал обеспечивается кубиками TickerBrokerComisData, TickerExchComisData, TickerSecPointPrice и в данном описании не приводится.

Кубик имеет следующие настройки::
  • Комиссия, абс.. Комиссия за каждую сделку в пунктах(абсолютная комиссия) за 1 лот, например 5 руб / на сделку на 1 лот.
  • Комиссия, %. Комиссия за каждую сделку в % от суммы сделки (относительная комиссия), например, 0.003% от суммы сделки.
  • Проскальзывание. Проскальзывание в пунктах. В данной настройке указывается величина проскальзывания, которая может случаться в реальном рынке из-за различного рода причина: скорость выставления заявки, резкие движения рынка, ликвидность инструмента, спред инструмента и т.д.
  • Стоимость денег, %. Стоимость заемных средств в процентах при торговле в Long (c плечом) или в Short.
  • Резерв для тестирования. Все комиссии для оценки устойчивости системы умножаются на данный коэффициент.
  • Стоимость пункта инструмента. Стоимость пункта инструмента в валюте комиссий, используется для перевода абс. комиссии в пункты инструмента.
  • Использовать данные по инструменту. При установленной опции комиссия и стоимость пункта получается из кубиков TickerBrokerComisData, TickerExchComisData, TickerSecPointPrice. При снятой опции используются значения, указанные в настройках кубика. При пересчете в лаборатории, кроме режима оптимизации кубик сообщает какие величины комиссий будут использованы.
  • Идентификатор данных по комиссии брокера. Идентификатор данных по комиссии биржи. Определяет название файла, из которого будут получены необходимые данные по комиссии брокера. Данные используются в случае если настройка "Использовать данные по инструменту" равна True.
  • Идентификатор данных по комиссии биржи. Идентификатор данных по комиссии биржи. Определяет название файла, из которого будут получены необходимые данные по комиссии биржи. Данные используются в случае если настройка "Использовать данные по инструменту" равна True.
  • Выводить данные по комиссии в лог. При установке данной опции на каждом пересчете кубик будет выводить в лог информацию об используемой информации по комиссиям и стоимости инструмента (источник данных и значения).
  • Вывести данные в лог. При установленной опции данные по работе кубика будут выведены в лог.

Примечание: Кубик работает только совместно с библиотекой ServiceLib, которую необходимо поместить в папку Handlers

Дисклеймер:
  • Кубик предоставляется "as is", но с обязательным тестированием и проверкой всех данных вручную;
  • Не являюсь профессиональным программистом, поэтому код в каких-то местах может быть неоптимальным вплоть до "говнокода" с точки зрения профи. По наличию времени и желания самообразовываюсь в данном направлении;
  • При выявлении багов просьба писать в телеграмм: @AleksandrGanov.
Общая информация по доп.кубикам:
===================================
Примеры использования:
========================


Attachments
ПримерИспользования.jpg (162 downloads)
ComissionAdv.cs (54 downloads)
gaaCommon_ServiceLib.zip (32 downloads)
gaaDifferent_ComissionAdv.zip (38 downloads)



Отредактировано AleksandrGanov (Sat Apr 02 2022 03:25 PM)