Как работать с DataSource?

Автор: AlexeyShevchenko

Как работать с DataSource? - Wed Apr 09 2014 06:49 PM

Здравствуйте.
На форуме не нашёл информации, скачал все примеры - тоже ничего нету.

Как получить DataSource.BalanceInfo?
Автор: SupportTSLab

Re: Как работать с DataSource? - Wed Apr 09 2014 06:58 PM

http://www.tslab.ru/docs/1.2/api/class_t_s_lab_1_1_data_source_1_1_balance_info.html
Автор: ra81

Re: Как работать с DataSource? - Wed Apr 09 2014 07:50 PM

никак по факту. по крайней мере никак используя документированные способы.
Автор: AlexeyShevchenko

Re: Как работать с DataSource? - Wed Apr 09 2014 09:35 PM



Спасибо!!! Я тоже умею ссылки посылать! (без обид)
Я это уже читал-перечитал. Пробовал разные способы перед тем как здесь спрашивать! Мне это тоже не особо нравится просить помощи, но вы, вместо того, чтобы помочь, просто отмахнулись! Хотя на форуме спрашивалось несколько раз и нет никакого решения!
Автор: AlexeyShevchenko

Re: Как работать с DataSource? - Wed Apr 09 2014 09:38 PM

Originally Posted By: ra81
никак по факту. по крайней мере никак используя документированные способы.


Спасибо. Спрошу по-другому )) мне нужно для расчёта лота знать количество свободных средств. Или нужно вручную прописывать?
на Transaq Connector я делал это, TSLab на этой библиотеке сделан?
Автор: Kermit

Re: Как работать с DataSource? - Wed Apr 09 2014 10:45 PM

В ТСЛАБ есть CurrencyBalance, это в ISecurityRT. Количество свободных денег.
Автор: AlexeyShevchenko

Re: Как работать с DataSource? - Wed Apr 09 2014 11:16 PM

я в отладчике просматривал ISecurityRT всё равно null
Автор: ViL

Re: Как работать с DataSource? - Thu Apr 10 2014 03:17 AM

Originally Posted By: AlexeyShevchenko
мне нужно для расчёта лота знать количество свободных средств.

Абсолютно не знаю АПИ. Но точно знаю как найти то, что Вам нужно smile
Откройте визуальный редактор. Создайте скрипт. Блок "свободные деньги" находится в подпапке индикаторов "портфель".
Скомпилируйте скрипт.
Теперь в программе: Инструменты - папка с логами, поднимитесь на один уровень с папкой логов. Найдите папку temp, в этой папке генерированные .cs
Т.о. приблизительный путь до файлов:
C:\Users\USER\AppData\Local\TSLab\TSLab12\temp
Автор: AlexeyShevchenko

Re: Как работать с DataSource? - Thu Apr 10 2014 08:11 AM

Originally Posted By: ViL
Originally Posted By: AlexeyShevchenko
мне нужно для расчёта лота знать количество свободных средств.

Абсолютно не знаю АПИ. Но точно знаю как найти то, что Вам нужно smile
Откройте визуальный редактор. Создайте скрипт. Блок "свободные деньги" находится в подпапке индикаторов "портфель".
Скомпилируйте скрипт.
Теперь в программе: Инструменты - папка с логами, поднимитесь на один уровень с папкой логов. Найдите папку temp, в этой папке генерированные .cs
Т.о. приблизительный путь до файлов:
C:\Users\USER\AppData\Local\TSLab\TSLab12\temp


спасибо за помощь )) я так уже делал.
та свободные деньги ищутся как free_money (не помню из какого класса), но такого свойства ни у кого нету. Я пока не на работе и не могу прислать код. Если Вы так делали, пришлите, пожалуйста, пример.
Автор: AlexeyShevchenko

Re: Как работать с DataSource? - Thu Apr 10 2014 08:16 AM

Originally Posted By: AlexeyShevchenko
я в отладчике просматривал ISecurityRT всё равно null


Я подключаюсь через демо счёт финама, из транзака я могу видеть средства портфеля в размере 300000р. Из TsLab я просматриваю портфель и там везде стоят нули. Может из-за этого у меня и не получается?
Автор: Kermit

Re: Как работать с DataSource? - Thu Apr 10 2014 08:35 AM

ISecurityRT работает только в режиме агента, не в лаборатории. Но разницы быть не должно демо или реальный счет.
Автор: AlexeyShevchenko

Re: Как работать с DataSource? - Thu Apr 10 2014 10:12 AM

Вот скрин.

И мне кажется странным, на вкладке "управление портфелями" баланс и доступно равно 0, а в транзаке всё нормально показывает.
Автор: AlexeyShevchenko

Re: Как работать с DataSource? - Thu Apr 10 2014 10:38 AM

Originally Posted By: ViL
Откройте визуальный редактор. Создайте скрипт. Блок "свободные деньги" находится в подпапке индикаторов "портфель".
Скомпилируйте скрипт.
Теперь в программе: Инструменты - папка с логами, поднимитесь на один уровень с папкой логов. Найдите папку temp, в этой папке генерированные .cs
Т.о. приблизительный путь до файлов:
C:\Users\USER\AppData\Local\TSLab\TSLab12\temp


private TSLab.Script.Handlers.EstimatedMoney ОценкаПортфел1_h = new TSLab.Script.Handlers.EstimatedMoney();

Я взял блок оценка портфеля. И вот что выдало:
Ошибка 1 Имя типа или пространства имен "EstimatedMoney" отсутствует в пространстве имен "TSLab.Script.Handlers" (пропущена ссылка на сборку?) C:\Users\workadmin\Documents\Visual Studio 2010\Projects\TSLab_Bot\TSLab_Bot\Bot.cs 16 39 TSLab_Bot

Добавил ссылку на TSLab.Script.Handlers и что теперь делать? и откуда вообще взялось EstimatedMoney или FreeMoney? В документации этого нет...

private TSLab.Script.Handlers.FreeMoney Money = new TSLab.Script.Handlers.FreeMoney();

Потом в цикле:
cur_money = this.Money.Execute(source, bar);

и всё равно равно 0
Автор: ra81

Re: Как работать с DataSource? - Thu Apr 10 2014 11:59 AM

Нужно работать через ISecurityRt. Только в режиме агента.
Как то так
Code:
var secRt = sec as ISecurityRt;
            if (secRt == null)
                return;
Автор: AlexeyShevchenko

Re: Как работать с DataSource? - Thu Apr 10 2014 12:53 PM

Кажется дело в демо счёте...
я уже и так пробовал ))

Вы не подскажете что за библиотека TSLab.PortfolioView? и как с ней работать?

Сделал новый демо счёт, теперь в портфеле показываются деньги.
но
private TSLab.Script.Handlers.FreeMoney Money = new TSLab.Script.Handlers.FreeMoney();
cur_money = this.Money.Execute(source, bar);

показывает 0
и
var secRt = source as ISecurityRt;
все балансы по нулю
Автор: ra81

Re: Как работать с DataSource? - Thu Apr 10 2014 06:58 PM

Quote:
Вы не подскажете что за библиотека TSLab.PortfolioView? и как с ней работать?

Собственно никак.