Доступ к инструментам на графике из API
Доброго дня! Возможен ли доступ к инструментам, цены которых отображены на графике, из API? Есть потребность программно из скрипта изменять основной и дополнительные (overlay) инструменты, отображаемые на выбранном графике. В документации не обнаружил ничего похожего.
Данный функционал был бы полезен при программировании любых кастомных скринеров, позволяя из панели менять содержимое графика, а также использовать ProTrader как универсальное средство отображения резульатата работы любых околобиржевых скриптов (например, у меня есть свой зоопарк на Python, мне было бы удобно написать wrapper к АПИ ProTrader и видеть результат своих расчетов прямо в нем, и через него же торговать).
Добрый день Ярослав!
Рад тому, что PTMС платформа Вас заинтересовала! То что Вы описали технически можно сделать с помощью API. Для того чтоб получить инфу о инструменте, Вам необходимо использовать класс HistoricalData (возможно даже с последующей его кастомизация под BarData) для получения инфы с баров. Отмечу что имеется свойство CurrentData у класса NETScript, которое также имеет тип HistoricalData и позволяет получить данные с текущего графика инструмента. Насчет overlay Вам нужно будет все таки формировать request и указать тот инструмент и таймфрейм, который Вы желаете получить. Ну все эти вкусности Вам нужно будет упаковать и отправить в царство Питона, более того Вы желает еще торговать в обратку (Two way data binding), и тут Вам поможет еще одна возможность PTMC под названием кастомные плагины. Предлагаю к Вашему вниманию этот пример, где детально расписано как взаимодействовать с платформой и ее функционалом посредством своего плагина. С помощью этого возможно реализовать желаемый wrapper и даже более. Если будут вопросы, то обращайтесь, будем рады помочь.Влад,
Большое спасибо за оперативный ответ! Возможно, я неточно выразился: мне необходимо программно изменить инструмент, отображаемый на графике, т.е. управлять элементами GUI из скрипта и/или панели. Например, открыт график, на нем отображены минутки ES, и вторым инструментом через overlay добавлен NQ. Могу ли из из скрипта получить доступ к свойству текущего графика Chart.Instuments.MainInstrument (условно, я не знаю как устроен у вас этот класс, поэтому привожу пример в виде псевдокода) и изменить его, вызвав что-нибудь наподобие Chart.Instruments.SetSymbol(MainInstrument, "SPY", type="Equity", period="1M")? Аналогично, было бы здорово иметь подобный доступ к оверлеям на графике - Chart.Overlays.SetSymbol(OverlayNum = 1, Symbol = "IWM", type="Equity", period = "1M"). Вызов этой функции привел бы к тому, что в GUI графика, на который я смотрю, изменились бы отображаемые символы.
Зачем это нужно и почему это важно:
Предположим, пользователь создает плагин для скрининга акций по какому-либо признаку. Логично, что после или во время скрининга необходимо открыть график с выбранным инструментом, чтобы визуально оценить форму графика; доступ к оверлеям необходим, если требуется сравнить два близких инструмента.
Если такого функционала в АПИ сейчас нет, насколько сложно реализовать этот функционал и каковы шансы увидеть его в ближайших релизах?
Спасибо!