Transaq
СБО "Transaq" => Подсистема ATF => Topic started by: Dmitriy on Июня 27, 2013, 06:32:45 pm
-
День добрый!
Скрипт, приведенный в примере по адресу http://www.transaq.ru/dokuwiki/atf:заявки_и_сделки :
function fixProfit(var id)
{
var trade = getTrade(id);
if (trade["operation"] == OP_BUY) {
trade["operation"] = OP_SELL;
trade["price"] = trade["price"] * 1.03;
trade_action::transactMultiple(trade);
}
}
не желает работать на ФОРТС. Попросту игнорируется.
Ver. 5.05.305.07, rev51, ATF 1.18.
Не подскажете ли, в чем может крыться причина?
Заранее благодарю!!
-
У ATF есть возможности для установления причин таких ошибок. Посмотрите на той же странице документации раздел "Ошибки и номера транзакций" - сведения оттуда помогут определить в чем причина того, что код не приводит к совершению сделки.
-
Проверил: сообщения signal::output(trade["message"]) и signal::output(getLastErrorMessage()) - пустые..
-
2 Dmitriy
Попробуйте так
function fixProfit(var id)
{
var trade = new_object("hash"); // Создать объект типа хэш
trade = getTrade(id);
... // Далее то, что там у Вас было далее :)
}
-
Большое спасибо Вам за участие, однако, к моему удивлению, этот способ также не сработал. Возымела эффект лишь замена функции на onClientTrade(id), вместо getProfit(id). В этом случае она вызывается по факту совершения сделки.