Под названием «Универсальный робот», хочу осветить ряд вопросов, связанных с созданием робота, который автоматизирует практически все возможные торговые операции.
Так как такого робота возможно я предложу на рынок, то думаю, что освещение этих вопросов позволит начать предварительное знакомство с его возможностями будущих пользователей или подражателей.
Первоначально робот реализуется на основе торгового терминала QUIK, но принципы и алгоритмы его построения могут быть сравнительно просто перенесены на любую другую платформу.
При запуске робота, ему необходимо получить информацию о разрешенных инструментах для его торговли, параметрах клиента, параметрах управления риском и определить уже имеющиеся открытые в предыдущих торгах позиции.
Исходная информация для начала работы робота формируется на основе четырех файлов и двух таблиц QUIK.
~~~~~~~~~~~~~~~~~~~~
файл Client.ini — содержит следующую информацию о клиенте:
FIRMID=MCXXXXXXX ;код фирмы
CODE=YYYYYY ;код клиента
DR=C:\NK\ ;каталог с архивом позиций по инструментам в каталоге должны быть созданы каталоги по имени торговых счетов
HIST=1 ;признак вывода в файл истории сделок по инструментам
SEM=SBER ; код инструмента маркера
CLM=EQBR ;класс инструмента маркера
LACC=L01-XXXXX,SPBFUTXXX ;список счетов клиента: торговый счет на ММВБ,торговый счет на фортс. может быть любое число счетов
COMIS_F=0.45 ;комисcия для фьючерсов 0.45 руб за контракт
COMIS_FB=0.50 ;биржевой сбор фьючерсов 0.50 руб за контракт
COMIS_P=0.034 ; комиссия для акций в процентах
COMIS_A=43 ;минимальная комиссия за трейд в рублях
COMS_L=0.1 ;проценты за маржинайльный займ денег
COMS_S=0.1 ;проценты за маржинайльный займ бумаг
COMS_G=0.1 ;проценты за ГО на фортсе
COMS_O=2 ;комиссия за опцион
LHT=TP,NP,PP,_CP,_B,_V,_Q,Q ‘формат истории сделок: время сделки,номер сделки,цена сделки,комиссия брокера за текущий день,итого,позиция,кол-во,кол-во_в_сделке
~~~~~~~~~~~~~~~~~~~~~~~~
файл InfoQ.ini -содержит следующую информацию для торгуемых инструментов
WS=30 ; окно в секундах от начала минуты для чтения новой свечи (от 10 до 60) ускоряет вычисления
; формат описания торгуемых инструментов: АСС — порядковый номер счета в списке счетов файл Client.ini
#ACC,SIZE,SEC,CLAS,OTP,OTPUN,SPR,SPRUN,MSL,MTP,TRAL
<1,0,SBER,EQBR,0,PRICE_UNITS,1,PERCENTS,NO,NO
<2,0,SRZ2,SPBFUT,0
<1,0,RTKM,EQBR,0
<1,0,GRAZ,EQNL,0
<1,0,GAZP,EQNE,0
<1,0,GMKN,EQBS,0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Таким образом, робот может торговать несколькими инструментами по нескольким счетам.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
При этом, для каждого инструмента можно задать
индивидуальные параметры для управления рисками,
величину денежных средств или лотов для автоматической торговли,
разрешить автоматическую установку стоп-лосса и тейк-профита или скользящего стопа.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Управление риском и автоматическую установку стопов можно задать не только для автоматически торгуемых инструментов, но и для инструментов, которыми торгует лишь человек.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~