Страница 1 из 1

Как просмотреть на графике прошлые сделки

Добавлено: 18 май 2019, 11:48
Андрей
Как на графике АД4 просмотреть совершённые сделки, за год, или месяц? Спасибо!

Re: Как просмотреть на графике прошлые сделки

Добавлено: 20 май 2019, 15:23
oxi
Можно смотреть только сделки, которые еще не урегулированы.
Иначе объем данных может быть слишком большой

Re: Как просмотреть на графике прошлые сделки

Добавлено: 21 май 2019, 07:26
BugsDigger
oxi писал:

> Иначе объем данных может быть слишком большой

Можно установить лимиты на объем данных в БД:
- по времени (задается пользователем)
- просто по числу записей; лимит м.б. как параметризуемый, так и жесткий абсолютный.

Практически полное отсутствие истории сделок (всё же последние сделки, в том числе урегулированные, можно, хоть и с трудом, выдрать, пока они не будут забыты на сервере после некоторого числа дневных сессий) и пользовательского программного интерфейса к ней - довольно заметный недостаток.

В качестве хоть какого-то продвижения было бы неполохо добавить в информацию о текущей позиции, доступную для чтения в индикаторах и стратегиях, time-stamp ее открытия/последнего частичного изменения; это вроде д.б. несложно. Это позволяет, кроме прочего, запустив индикатор, самому составлять лог сделок в файле для последующего анализа.

Конечно, никто не мешает сделать индикатор, который будет опрашивать текущее значение позиции и на основании замеченных изменений вести лог, но есть существенное препятствие: если позиция уже открыта, то момент ее открытия/изменения взять неоткуда. Тут как раз упомянутая дополнительная информация о позиции весьма бы пригодилась.

Re: Как просмотреть на графике прошлые сделки

Добавлено: 21 май 2019, 14:15
oxi
Добрый день!

Позиция по инструменту есть. Время открытия позиции - сейчас такой информации в терминале нет, это опять поиск в истории сделок
Пример

Код: Выделить всё

function Initialize()
{
IndicatorName = "PL";
PriceStudy = true;
AddInput("Input", Inputs.Candle);
AddSeries("PL", DrawAs.Line, Color.Magenta);   
// надо прописать свой субсчет
AddParameter("Account", "11111-000");   
}

function Evaluate()
{
   var position = GetPosition(Input, Account);
   if (position.Position == 0)
      return;
   PL = position.Price;
}

Вывести лог сделок, который можете получить из личного кабинета. Кустарный способ, но есть...
viewtopic.php?f=27&t=542&hilit=%D1%81%D0%B4%D0%B5%D0%BB%D0%BE%D0%BA

Об остальном подумаем

Re: Как просмотреть на графике прошлые сделки

Добавлено: 21 май 2019, 15:35
BugsDigger
oxi писал:

> Время открытия

не обязательно открытия; момента последнего изменения вполне достаточно

> позиции - сейчас такой информации в терминале нет, это опять поиск в истории сделок

Было бы где искать... Ведь историю сделок по субсчету+инструменту в терминале получить нельзя на данный момент никаким простым способом, насколько я понимаю... Если можно было бы получить список сделок по субсчету+инструменту (пусть обрезанный из-за ограничений по объему хранимых данных), то всегда можно и отрисовать сделки, и найти последнюю сделку и её время (это и будет момент последнего изменения позиции).

Не знаю, возвращает ли сервер суммарную позицию по инструменту после проведения сделки? Вроде должен. Тогда и время открытия можно определить, просматривая список сделок назад до момента смены знака количества.