Руководство пользователя
Функции установки ордеров
int64 SetPending(string symbol,double volume,float price,uint8 cmd,uint8 duration,bool islock,float sl,float tp,uint trailing_dist)
Установка отложенного ордера.
Параметры:
string symbol- символdouble volume- объемfloat price- цена открытияuint8 cmd- направление открытияuint8 duration- длительностьbool islock- флаг локированностиfloat sl- цена stop lossfloat tp- цена take profituint trailing_dist- дистанция трейлинг-стопа
В случае успешного создания ордера возвращается уникальный идентификатор.
В ином случае возвращается 0, а код ошибки можно узнать через System.LastError.
int64 SetOCO(string symbol,float ord1_price,double ord1_volume,uint8 ord1_cmd,bool ord1_islock,float ord2_price,double ord2_volume,uint8 ord2_cmd,bool ord2_islock,uint8 duration)
Установка OCO-ордера, состоящего из двух ордеров, при активации одного из которых другой удаляется.
Параметры:
string symbol- символ сделокfloat ord1_price- цена открытия первого ордераdouble ord1_volume- объем первого ордераuint8 ord1_cmd- направление открытия первого ордераbool ord1_islock- локированность первого ордераfloat ord2_price- цена открытия второго ордераdouble ord2_volume- объем второго ордераuint8 ord2_cmd- направление открытия второго ордераbool ord2_islock- локированность второго ордераuint8 duration- длительность
В случае успешного создания ордера возвращается уникальный идентификатор. В ином случае возвращается 0, а код ошибки можно узнать через System.LastError.
int64 SetActivation(string symbol,float activaton_price,float ord1_price,double ord1_volume,uint8 ord1_cmd,bool ord1_islock,float ord2_price,double ord2_volume,uint8 ord2_cmd,bool ord2_islock,uint8 duration,bool ord2_oco)
Установка Activation-ордера, при срабатывании которого (по цене активации) устанавливаются два отложенных (или OCO-) ордера.
Параметры:
string symbol- символ ордеровfloat activaton_price- цена активацииfloat ord1_price- цена открытия первого ордераdouble ord1_volume- объем первого ордераuint8 ord1_cmd- направление открытия первого ордераbool ord1_islock- флаг локированности первого ордераfloat ord2_price- цена открытия второго ордераdouble ord2_volume- объем второго ордераuint8 ord2_cmd- направление открытия второго ордераbool ord2_islock- флаг локированности второго ордераuint8 duration- длительностьbool ord2_oco- флаг OCO для пары активизируемых ордеров
В случае успешного создания ордера возвращается уникальный идентификатор.
В ином случае возвращается 0, а код ошибки можно узнать через System.LastError.
Функции изменения параметров ордеров
bool ModifyPending(int64 order,double volume,float price,uint8 cmd,uint8 duration,bool islock,float sl,float tp,uint trailing_dist)
Изменение параметров существующего отложенного ордера.
Параметры:
int64 order- идентификатор ордераdouble volume- объемfloat price- цена открытияuint8 cmd- направление открытияuint8 duration- длительностьbool islock- флаг локированностиfloat sl- цена stop lossfloat tp- цена take profituint trailing_dist- дистанция трейлинг-стопа
В случае успешной модификации ордера функция возвращает true.
В ином случае возвращается false, а код ошибки можно узнать через System.LastError.
bool ModifyOCO(int64 order,float ord1_price,double ord1_volume,uint8 ord1_cmd,bool ord1_islock,float ord2_price,double ord2_volume,uint8 ord2_cmd,bool ord2_islock,uint8 duration)
Изменение параметров существующего OCO-ордера
Параметры:
int64 order- идентификатор ордераfloat ord1_price- цена первого ордераdouble ord1_volume- объем первого ордераuint8 ord1_cmd- направление открытия первого ордераbool ord1_islock- локированность первого ордераfloat ord2_price- цена второго ордераdouble ord2_volume- объем второго ордераuint8 ord2_cmd- направление открытия второго ордераbool ord2_islock- локированность второго ордераuint8 duration- длительность
В случае успешной модификации ордера функция возвращает true.
В ином случае возвращается false, а код ошибки можно узнать через System.LastError.
bool ModifyActivation(int64 order,int64 linked1,int64 linked2,float activaton_price,float ord1_price,double ord1_volume,uint8 ord1_cmd,bool ord1_islock,float ord2_price,double ord2_volume,uint8 ord2_cmd,bool ord2_islock,uint8 duration,bool ord2_oco)
Изменение параметров существующего Activation-ордера
Параметры:
int64 order- идентификатор ордераint64 linked1- идентификатор первого ордера 2-го уровняint64 linked2- идентификатор второго ордера 2-го уровняfloat activaton_price- цена активацииfloat ord1_price- цена первого ордераdouble ord1_volume- объем первого ордераuint8 ord1_cmd- направление открытия первого ордераbool ord1_islock- локированность первого ордераfloat ord2_price- цена второго ордераdouble ord2_volume- объем второго ордераuint8 ord2_cmd- направление открытия второго ордераbool ord2_islock- локированность второго ордераuint8 duration- длительностьbool ord2_oco- флаг OCO для пары активизируемых ордеров
В случае успешной модификации ордера функция возвращает true.
В ином случае возвращается false, а код ошибки можно узнать через System.LastError.
Для модификации после срабатывания Activation-ордера с включенным флагом OCO в функцию ModifyActivation нужно передавать параметры order=0 и activaton_price=0.
После срабатывания Activation-ордера с выключенным флагом OCO, ордера 2-го уровня модифицируются независимо друг от друга. Для изменения каждого из них, необходимо вызывать функцию ModifyActivation с order=0, ord2=0, activaton_price=0, ord2_price=0, ord2_volume=0.
Дополнительные функции и свойства для работы с ордерами
bool Delete(int64 order)
Закрытие указанного ордера по его идентификатору. В качестве результата возвращается флаг успеха. В случае неудачи код ошибки можно узнать через System.LastError.
bool Select(int64 sel,int mode)
Осуществляет выбор ордера для дальнейшего обращения к его свойствам.
Параметры:
int64 sel- идентификатор или позиция ордера в зависимости от режима выбораint mode- режим выбора сделки
int64 Link(uint num)
Получение id для связанных ордеров второго уровня, где num - порядковый номер связанного ордера.
Свойства Orders
Ордер должен быть предварительно выбран с помощью функции Select().
int Total- количество установленных ордеров (предварительный вызов функции Select не нужен)int64 ID- идентификатор ордераstring Symbol- символ ордераuint16 Direction- направление ордераuint16 Type- тип ордераuint16 SubType- подтип ордераbool IsActive- флаг активности ордераdouble Volume- объемfloat Price- цена открытияfloat SL- цена stop lossfloat TP- цена take profitdatetime OpenTime- время открытияdatetime ActTime- время активацииbool IsLimit- флаг лимитного ордера (иначе стоповый ордер)uint16 Duration- длительностьbool IsLock- флаг локированостиint64 OCO- ссылка на парный OCO-ордерint64 DealID- ссылка на сделкуuint TrailingDistance- дистанция трейлингаstring Currency- символ ордера (свойство является устаревшим)