daytrader
Full Member
Сообщений: 174
|
|
« : 10.08.2011, 14:14:50 » |
|
что-то у меня никак не выходит переставить заявку. проверить это как-то быстро невозможно, так что вот код. id заявки у меня имеется
var order = getOrder(order_id); var status = order["status"]; if (status != OS_INACTIVE){ // если статус заявки понятен if (status == OS_CANCELLED) { if (order["operation"] == OP_SELL) { trade_action::sell(order["quantity"], ::lots,close-slip); } if (order["operation"] == OP_BUY) { trade_action::buy(order["quantity"], ::lots,close+slip); } } }
тут как-то трижды биржа снимала мои заявки (я так и не понял почему) но новые не переставлялись сразу же и вообще никак.
Код находится в calc ()
UPD думаю что необходимо так же проверять на: OS_DENIED, OS_REJECTED, OS_REMOVED, OS_REFUSED. думаю поэтому и не выставлялись - не все условия были учтены.
|
|
« Последнее редактирование: 10.08.2011, 21:12:57 от daytrader »
|
Записан
|
|
|
|
|
|
|
|
|
|
nxz
Full Member
Сообщений: 241
|
|
« Ответ #7 : 12.08.2011, 19:59:01 » |
|
и еще - как писать правильно в кавычках или нет
if (status == OS_MATCHED)
или
if (status == "OS_MATCHED")
если эти коды могут сменниться, то я должен написать так
if (stz == OS_MATCHED ) Да, это оптимально.
http://www.transaq.ru/forum/index.php?topic=487.0
|
|
« Последнее редактирование: 12.08.2011, 20:01:28 от nxz »
|
Записан
|
|
|
|
|
|