Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
Июня 05, 2023, 01:49:13 pm
Начало Помощь Поиск Войти Регистрация
Новости:

Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: Неточности и "туманности" в документации ATF « предыдущая тема следующая тема »
Страниц: 1 [2] 3 Печать
Автор Тема: Неточности и "туманности" в документации ATF  (Прочитано 23650 раз)
Heller
Разработчики
Hero Member
*****
Сообщений: 1277


Просмотр профиля Email
« Ответ #15 : Марта 29, 2011, 11:43:59 am »

Изначальный размер массива 0. Его можно расширяться функциями типа push, insert или resize. Выход за границы массива приводит к ошибке.
Записан
nxz
Full Member
***
Сообщений: 241


Просмотр профиля Email
« Ответ #16 : Июня 18, 2011, 01:25:59 pm »

Ошибка на главной!!!

http://transaq.ru/
Изменение контакстной информации

Внимание! Новый номер компании +7 (495) 380-4116 (многоканальный)
« Последнее редактирование: Июня 18, 2011, 02:01:44 pm от nxz » Записан
Heller
Разработчики
Hero Member
*****
Сообщений: 1277


Просмотр профиля Email
« Ответ #17 : Июня 20, 2011, 09:43:40 am »

nxz, спасибо, поправил.
Записан
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #18 : Декабря 11, 2011, 10:41:30 am »



Наверно, полная фраза должна звучать вот так: Стоп-заявки и заявки с дополнительными параметрами ( ... ) не обрабатываются.




Или тейк-профит? :)
« Последнее редактирование: Декабря 11, 2011, 03:38:34 pm от Олег » Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
Heller
Разработчики
Hero Member
*****
Сообщений: 1277


Просмотр профиля Email
« Ответ #19 : Декабря 13, 2011, 05:09:05 pm »

Да, опечатки, спасибо!
Записан
nxz
Full Member
***
Сообщений: 241


Просмотр профиля Email
« Ответ #20 : Марта 08, 2013, 03:59:24 pm »



tp_correction и  tp_extremum - попутано описание это так?
и что такое tp_level?

http://www.transaq.ru/dokuwiki/atf:заявки_и_сделки?#стоп-заявки1
Записан
Heller
Разработчики
Hero Member
*****
Сообщений: 1277


Просмотр профиля Email
« Ответ #21 : Марта 11, 2013, 02:12:19 pm »

Да, есть опечатка, поправим.

Насчет tp_level, то вот описания из описания соответствующей графы в хелп-файле Transaq:

Уровень цены, ожидаемый на рынке для исполнения тейк-профитной части стопа. Имеет значение при использовании «трейлинг» разновидности тейк-профита. Отстоит от локального экстремума на величину заданной пользователем коррекции, при обновлении локального экстремума смещается вслед за ним.
Записан
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #22 : Июля 07, 2013, 10:23:25 pm »

Во всей статье "Заявки и сделки" признак nosplit (По одной цене) упоминается всего один раз, вот здесь:




Из этого можно сделать вывод, что он только read-only. Если это так, то надо бы об этом где-то упомянуть. А если это не так, то его надо включить, например, вот сюда:

Quote
Лимитированные заявки

 Доступные для заполнения поля:

 validbefore - время, до которого заявка будет активна. По умолчанию она активна до конца сессии. Так же возможно задать значение TILL_CANCELED, чтобы заявка была активна до отмены.

 client - клиент, от имени которого будет выставлена заявка. По умолчанию используется текущий клиент.

 operation - покупка (OP_BUY) или продажа (OP_SELL)

 price - цена. По умолчанию будет выставлена рыночная заявка.

 quantity - количество лотов в заявке

 withinpos - заявка в пределах позиции

 unfilled - заявка типа «снять остаток» (UNFILLED_CANCELBALANCE), «немедленно или отклонить» (UNFILLED_IMMORCANCEL) или «поставить в очередь» (UNFILLED_PUTINQUEUE). По умолчанию выставляются заявки «поставить в очередь».

 usecredit - использовать или нет кредит. По умолчанию используется глобальная настройка АРМ Трейдера.

 confirm_dialog - если true, то позволяет не выставлять заявку на рынок автоматически, а вывести заполненный диалог выставления заявки, в котором останется лишь нажать кнопку подтверждения. Данная возможность доступна с ATF версии 1.16.

 brokerref - примечание, доступно с версии ATF 1.18, максимальная длина примечания определяется функцией getMaxBrokerRefLen()

а также в список констант:



И еще попутный непринципиальный вопрос. В переводе с английского "unfilled" означает "незаполненный,  неотмеченный". А здесь вроде бы подразумевается как раз обратное. Признак выбран, то есть этот чекбокс как бы заполнен. Тогда почему "unfilled"? Вроде бы должно быть "filled" ("заполненный,  отмеченнный").
Хотя, даже если это и ляп, то переделывать все равно слишком хлопотно, наверно. Овчинка выделки не стоит.
« Последнее редактирование: Июля 07, 2013, 10:30:43 pm от Олег » Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #23 : Июля 08, 2013, 08:47:14 pm »

В документации читаем:



На самом деле первоначально там было

Code: [Select]
static signalled = true;
 
function onNewCandle()
{
  signalled = false;
}
 
function calc()
{
  if (not signalled and volume > volume[-1] * 2) {
    signalled = true;
    signal::alertMultiple("Объем торгов резко возрос!!!!!!!");
  }
}

но я исправил в первой строке

Code: [Select]
static signalled = true;
на

Code: [Select]
static signalled = false;
Так вроде бы логичнее.

А теперь давайте попробуем вставить оба эти варианта в Интру или Транзак.
Они дружно выдают сообщение: "Line 1: синтаксическая ошибка, неожиданный идентификатор" и причем для обоих вариантов (и с true и с false). Получается, что Транзак не узнает булев тип данных?!







Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #24 : Июля 08, 2013, 09:55:11 pm »

Кому предыдущих двух постов показалось мало, поехали дальше :)

В документации обнаруживаем беглое упоминание поля "validbefore",  доступного для заполнения в хеше для выставления лимитированных заявок:



По наивности, думаем: "Ага! Классная штука! Можно выставить заявку, например, на 3 минуты, после чего она самоликвидируется, если к тому времени не будет исполнена".

Пробуем сделать вот так:

Code: [Select]
#line 0 nodraw

static Done = "Нет";

function init()
{
setBounds (0, countCandles(), 0);
   setInitCandles(countCandles());
}

 function onNewCandle()
 {
   if (not isHistoryCalculated()) {return;}
 
  if (Done == "Нет")
{
var order = new_object("hash");
order["quantity"] = 1;
order["operation"] = OP_BUY;
order["price"] = 9300;
order["validbefore"] = getServerTime() + 3 * 60;
trade_action::transact(order);
Done = "Да";
}
 }

 function calc()
 {
  if (not isHistoryCalculated()) {return;}
 
line [0] = 0;
}

Ничего у нас не получается,  заявка исправно выставляется, но через 3 минуты самоликвидироваться отказывается. Ага, не сдаемся мы. Наверно, проблема в том, что срок слишком маленький выбран. В окне выставления заявок Транзака поле "Снять после..." заполняется в днях, значит и здесь надо выбрать масштаб времени покрупнее.
Пробуем вот так:

Code: [Select]
#line 0 nodraw

static Done = "Нет";

function init()
{
setBounds (0, countCandles(), 0);
   setInitCandles(countCandles());
}

 function onNewCandle()
 {
   if (not isHistoryCalculated()) {return;}
 
  if (Done == "Нет")
{
var order = new_object("hash");
order["quantity"] = 1;
order["operation"] = OP_BUY;
order["price"] = 9300;
order["validbefore"] = getServerTime() + 3 * 24 * 60 * 60;
trade_action::transact(order);
Done = "Да";
}
 }

 function calc()
 {
  if (not isHistoryCalculated()) {return;}
 
line [0] = 0;
}

и снова ничего не получается. В смысле заявка опять выставилась,  но в таблице заявок никак не отражено, что ее срок истекает через какое-то время.

Короче говоря, снова (уже в который раз!) сталкиваемся с ситуацией, когда совершенно не понятно, как надо использовать определенную возможность, и объяснения этого в документации найти не можем, потому что там этого объяснения не существует. Вот вам беглое упоминание, намек, ну а дальше разбирайтесь сами...
Печаль :(







« Последнее редактирование: Июля 09, 2013, 11:15:11 am от Олег » Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #25 : Июля 10, 2013, 10:06:10 am »

Heller бесследно исчез с форума,  даже на личные письма не отвечает :)

У меня две версии:
1. ушел в очередной отпуск,
2. не покладая рук ловит многочисленных жуков :) 
А для них и рук не хватает,  и банок для них не хватает, и блондинка ему не помогает :)
Какой уж тут форум? :)
Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #26 : Июля 11, 2013, 12:32:39 am »

А еще меня вот такой вопрос заинтересовал.



Вот допустим, я хочу, чтобы мой тейк-профит при достижении цены активации выставил не рыночную заявку, а лимитированную с ценой, равной цене активации. Иными словами, я хочу продать по цене никак не ниже 9240 (см. рисунок). Сейчас я немного не уверен, но вроде бы когда мы заполняем поля тейк-профита так, как показано на этом рисунке, то так оно и будет:



А как с помощью ATF выставить такую же заявку?
Для стоп-лосса имеется поле хеша "sl_orderprice". Если мы его заполним, заявка будет лимитированная, если не заполним, будет рыночная.
А для тейк-профита каков аналог такого же выбора? Какое поле хеша соответствует наличию или отсутствию галки "по рынку" на рисунке?
Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #27 : Июля 11, 2013, 09:22:16 am »



Увы, не срабатывает такой подход :(

Хотел выставить заявку ровно в 10:00:00.

Сделал все, как у вас написано, но только заменил


Code: [Select]
var exec_time = getSystemTime();
на

Code: [Select]
var exec_time = getServerTime();
В результате, заявка почему-то попыталась выставиться на полминуты раньше назначенного срока. Разумеется, она была отклонена с сообщением "Эта сессия не идет". Допускаю, что пока сессия не идет, ATF считает, что системное время это и есть время сервера.

А правда, как решить эту задачу?
В смысле, как сделать так, чтобы действие совершилось ровно в 10:00:00 по времени сервера, но при этом запустив скрипт до начала торговой сессии?
« Последнее редактирование: Июля 11, 2013, 09:29:01 am от Олег » Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
nxz
Full Member
***
Сообщений: 241


Просмотр профиля Email
« Ответ #28 : Июля 11, 2013, 07:39:10 pm »

А как с помощью ATF выставить такую же заявку?
Для стоп-лосса имеется поле хеша "sl_orderprice". Если мы его заполним, заявка будет лимитированная, если не заполним, будет рыночная.
А для тейк-профита каков аналог такого же выбора? Какое поле хеша соответствует наличию или отсутствию галки "по рынку" на рисунке?

Олег, вот здесь немного обсуждали этот вопрос http://www.transaq.ru/forum/index.php?topic=414.msg6122#msg6122
Записан
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #29 : Июля 11, 2013, 09:07:30 pm »

А как с помощью ATF выставить такую же заявку?
Для стоп-лосса имеется поле хеша "sl_orderprice". Если мы его заполним, заявка будет лимитированная, если не заполним, будет рыночная.
А для тейк-профита каков аналог такого же выбора? Какое поле хеша соответствует наличию или отсутствию галки "по рынку" на рисунке?

Олег, вот здесь немного обсуждали этот вопрос http://www.transaq.ru/forum/index.php?topic=414.msg6122#msg6122

Спасибо за ссылку, но мне от этого не легче :)

Та тема заканчивается вашими словами:
Про "tp_spread" в документации нет ни слова, дополните пожалуйста.
Попробовал в хэше заявки указать "tp_spread", но заявка все равно выставляется по рынку.

Действительно, такого понятия в документации нет вообще до сих пор. Попробовал поискать, и вот результат:






Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
Страниц: 1 [2] 3 Печать 
Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: Неточности и "туманности" в документации ATF « предыдущая тема следующая тема »
Перейти в:  


Войти

Powered by MySQL Powered by PHP Powered by SMF 2.0.10 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!